{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "agat_sp_statistics",
"description": "The script provides exhaustive statistics of a gft/gff file. \n\nIf you have isoforms in your file, even if correct, some values calculated\nmight sounds incoherent: e.g. total length mRNA can be superior than the\ngenome size. Because all isoforms length is added... It is why by\ndefault we always compute the statistics twice when there are isoforms,\nonce with the isoforms, once without (In that case we keep the longest\nisoform per locus).\n",
"type": "object",
"definitions": {

    
    
    "inputs" : {
    "title": "Inputs",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "gff": {
                "type":
                "string",
                "description": "Type: `file`, required, example: `input.gff`. Input GTF/GFF file",
                "help_text": "Type: `file`, required, example: `input.gff`. Input GTF/GFF file."
            
            }
    

        ,
                "gs_fasta": {
                "type":
                "string",
                "description": "Type: `file`, example: `genome.fasta`. Genome size directly from a fasta file to compute more statistics",
                "help_text": "Type: `file`, example: `genome.fasta`. Genome size directly from a fasta file to compute more statistics.\n"
            
            }
    

}
},
    
    
    "outputs" : {
    "title": "Outputs",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "output": {
                "type":
                "string",
                "description": "Type: `file`, required, default: `$id.$key.output.txt`, example: `output.txt`. The file where the results will be written",
                "help_text": "Type: `file`, required, default: `$id.$key.output.txt`, example: `output.txt`. The file where the results will be written.\n"
            ,
                "default": "$id.$key.output.txt"
            }
    

}
},
    
    
    "options" : {
    "title": "Options",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "plot": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. When this option is used, an histogram of distribution of the features will be printed in pdf files",
                "help_text": "Type: `boolean_true`, default: `false`. When this option is used, an histogram of distribution of the features will be printed in pdf files.\n"
            ,
                "default": "False"
            }
    

        ,
                "gs_size": {
                "type":
                "integer",
                "description": "Type: `integer`, example: `1000000`. Genome size in nucleotides to compute more statistics",
                "help_text": "Type: `integer`, example: `1000000`. Genome size in nucleotides to compute more statistics.\n"
            
            }
    

        ,
                "verbose": {
                "type":
                "integer",
                "description": "Type: `integer`, example: `1`. Verbose option",
                "help_text": "Type: `integer`, example: `1`. Verbose option. To modify verbosity. Default is 1. 0 is quiet, 2 and 3 are increasing verbosity.\n"
            
            }
    

        ,
                "config": {
                "type":
                "string",
                "description": "Type: `file`, example: `custom_agat_config.yaml`. AGAT config file",
                "help_text": "Type: `file`, example: `custom_agat_config.yaml`. AGAT config file. By default AGAT takes the original agat_config.yaml shipped with AGAT. The `--config`\noption gives you the possibility to use your own AGAT config file (located elsewhere or named differently).\n"
            
            }
    

}
},
    
    
    "nextflow input-output arguments" : {
    "title": "Nextflow input-output arguments",
    "type": "object",
    "description": "Input/output parameters for Nextflow itself. Please note that both publishDir and publish_dir are supported but at least one has to be configured.",
    "properties": {
    
        
                "publish_dir": {
                "type":
                "string",
                "description": "Type: `string`, required, example: `output/`. Path to an output directory",
                "help_text": "Type: `string`, required, example: `output/`. Path to an output directory."
            
            }
    

        ,
                "param_list": {
                "type":
                "string",
                "description": "Type: `string`, example: `my_params.yaml`. Allows inputting multiple parameter sets to initialise a Nextflow channel",
                "help_text": "Type: `string`, example: `my_params.yaml`. Allows inputting multiple parameter sets to initialise a Nextflow channel. A `param_list` can either be a list of maps, a csv file, a json file, a yaml file, or simply a yaml blob.\n\n* A list of maps (as-is) where the keys of each map corresponds to the arguments of the pipeline. Example: in a `nextflow.config` file: `param_list: [ [\u0027id\u0027: \u0027foo\u0027, \u0027input\u0027: \u0027foo.txt\u0027], [\u0027id\u0027: \u0027bar\u0027, \u0027input\u0027: \u0027bar.txt\u0027] ]`.\n* A csv file should have column names which correspond to the different arguments of this pipeline. Example: `--param_list data.csv` with columns `id,input`.\n* A json or a yaml file should be a list of maps, each of which has keys corresponding to the arguments of the pipeline. Example: `--param_list data.json` with contents `[ {\u0027id\u0027: \u0027foo\u0027, \u0027input\u0027: \u0027foo.txt\u0027}, {\u0027id\u0027: \u0027bar\u0027, \u0027input\u0027: \u0027bar.txt\u0027} ]`.\n* A yaml blob can also be passed directly as a string. Example: `--param_list \"[ {\u0027id\u0027: \u0027foo\u0027, \u0027input\u0027: \u0027foo.txt\u0027}, {\u0027id\u0027: \u0027bar\u0027, \u0027input\u0027: \u0027bar.txt\u0027} ]\"`.\n\nWhen passing a csv, json or yaml file, relative path names are relativized to the location of the parameter file. No relativation is performed when `param_list` is a list of maps (as-is) or a yaml blob.",
                "hidden": true
            
            }
    

}
}
},
"allOf": [

    {
    "$ref": "#/definitions/inputs"
    },

    {
    "$ref": "#/definitions/outputs"
    },

    {
    "$ref": "#/definitions/options"
    },

    {
    "$ref": "#/definitions/nextflow input-output arguments"
    }
]
}
