{
  "$schema": "https://json-schema.org/draft/2020-12/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",
  "$defs": {
    "inputs": {
      "title": "Inputs",
      "type": "object",
      "description": "No description",
      "properties": {
        "gff": {
          "type": "string",
          "format": "path",
          "exists": true,
          "description": "Input GFF/GTF file that will be read",
          "help_text": "Type: `file`, multiple: `False`, required, direction: `input`, example: `\"input.gff\"`. "
        }
      }
    },
    "outputs": {
      "title": "Outputs",
      "type": "object",
      "description": "No description",
      "properties": {
        "output": {
          "type": "string",
          "format": "path",
          "description": "Output GTF file",
          "help_text": "Type: `file`, multiple: `False`, required, default: `\"$id.$key.output.gtf\"`, direction: `output`, example: `\"output.gtf\"`. ",
          "default": "$id.$key.output.gtf"
        }
      }
    },
    "arguments": {
      "title": "Arguments",
      "type": "object",
      "description": "No description",
      "properties": {
        "gtf_version": {
          "type": "string",
          "description": "Version of the GTF output (1,2,2.1,2.2,2.5,3 or relax)",
          "help_text": "Type: `string`, multiple: `False`, example: `\"3\"`, choices: ``relax`, `1`, `2`, `2.1`, `2.2`, `2.5`, `3``. ",
          "enum": [
            "relax",
            "1",
            "2",
            "2.1",
            "2.2",
            "2.5",
            "3"
          ]
        },
        "config": {
          "type": "string",
          "format": "path",
          "description": "Input agat config file",
          "help_text": "Type: `file`, multiple: `False`, direction: `input`, example: `\"custom_agat_config.yaml\"`. "
        }
      }
    },
    "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": "Path to an output directory.",
          "help_text": "Type: `string`, multiple: `False`, required, example: `\"output/\"`. "
        }
      }
    }
  },
  "allOf": [
    {
      "$ref": "#/$defs/inputs"
    },
    {
      "$ref": "#/$defs/outputs"
    },
    {
      "$ref": "#/$defs/arguments"
    },
    {
      "$ref": "#/$defs/nextflow input-output arguments"
    }
  ]
}
