{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "agat_convert_sp_gff2gtf",
"description": "The script aims to convert any GTF/GFF file into a proper GTF file. Full\ninformation about the format can be found here:\nhttps://agat.readthedocs.io/en/latest/gxf.html You can choose among 7\ndifferent GTF types (1, 2, 2.1, 2.2, 2.5, 3 or relax). Depending the\nversion selected the script will filter out the features that are not\naccepted. For GTF2.5 and 3, every level1 feature (e.g nc_gene\npseudogene) will be converted into gene feature and every level2 feature\n(e.g mRNA ncRNA) will be converted into transcript feature. Using the\n\"relax\" option you will produce a GTF-like output keeping all original\nfeature types (3rd column). No modification will occur e.g. mRNA to\ntranscript.\n\nTo be fully GTF compliant all feature have a gene_id and a transcript_id\nattribute. The gene_id is unique identifier for the genomic source of\nthe transcript, which is used to group transcripts into genes. The\ntranscript_id is a unique identifier for the predicted transcript, which\nis used to group features into transcripts.\n",
"type": "object",
"definitions": {

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

}
},
    
    
    "outputs" : {
    "title": "Outputs",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "output": {
                "type":
                "string",
                "description": "Type: `file`, required, default: `$id.$key.output.gtf`, example: `output.gtf`. Output GTF file",
                "help_text": "Type: `file`, required, default: `$id.$key.output.gtf`, example: `output.gtf`. Output GTF file. If no output file is specified, the output will be written to STDOUT."
            ,
                "default": "$id.$key.output.gtf"
            }
    

}
},
    
    
    "arguments" : {
    "title": "Arguments",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "gtf_version": {
                "type":
                "string",
                "description": "Type: `string`, example: `3`, choices: ``relax`, `1`, `2`, `2.1`, `2.2`, `2.5`, `3``. Version of the GTF output (1,2,2",
                "help_text": "Type: `string`, example: `3`, choices: ``relax`, `1`, `2`, `2.1`, `2.2`, `2.5`, `3``. Version of the GTF output (1,2,2.1,2.2,2.5,3 or relax). Default value from AGAT config file (relax for the default config). The script option has the higher priority.  \n\n  * relax: all feature types are accepted.  \n  * GTF3 (9 feature types accepted): gene, transcript, exon, CDS, Selenocysteine, start_codon, stop_codon, three_prime_utr and five_prime_utr.  \n  * GTF2.5 (8 feature types accepted): gene, transcript, exon, CDS, UTR, start_codon, stop_codon, Selenocysteine.  \n  * GTF2.2 (9 feature types accepted): CDS, start_codon, stop_codon, 5UTR, 3UTR, inter, inter_CNS, intron_CNS and exon.  \n  * GTF2.1 (6 feature types accepted): CDS, start_codon, stop_codon, exon, 5UTR, 3UTR.  \n  * GTF2 (4 feature types accepted): CDS, start_codon, stop_codon, exon.  \n  * GTF1 (5 feature types accepted): CDS, start_codon, stop_codon, exon, intron.  \n",
                "enum": ["relax", "1", "2", "2.1", "2.2", "2.5", "3"]
            
            
            }
    

        ,
                "config": {
                "type":
                "string",
                "description": "Type: `file`, example: `custom_agat_config.yaml`. Input agat config file",
                "help_text": "Type: `file`, example: `custom_agat_config.yaml`. Input agat config file. By default AGAT takes as input agat_config.yaml file from the working directory if any, otherwise it takes the orignal agat_config.yaml shipped with AGAT. To get the agat_config.yaml locally type: \"agat config --expose\". The --config option 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/arguments"
    },

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