{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "busco_run",
"description": "Assessment of genome assembly and annotation completeness with single copy orthologs",
"type": "object",
"definitions": {

    
    
    "inputs" : {
    "title": "Inputs",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "input": {
                "type":
                "string",
                "description": "Type: `file`, required, example: `file.fasta`. Input sequence file in FASTA format",
                "help_text": "Type: `file`, required, example: `file.fasta`. Input sequence file in FASTA format. Can be an assembled genome or transcriptome (DNA), or protein sequences from an annotated gene set. Also possible to use a path to a directory containing multiple input files.\n"
            
            }
    

        ,
                "mode": {
                "type":
                "string",
                "description": "Type: `string`, required, example: `proteins`, choices: ``genome`, `geno`, `transcriptome`, `tran`, `proteins`, `prot``. Specify which BUSCO analysis mode to run",
                "help_text": "Type: `string`, required, example: `proteins`, choices: ``genome`, `geno`, `transcriptome`, `tran`, `proteins`, `prot``. Specify which BUSCO analysis mode to run. There are three valid modes:\n  - geno or genome, for genome assemblies (DNA)\n  - tran or transcriptome, for transcriptome assemblies (DNA)\n  - prot or proteins, for annotated gene sets (protein)\n",
                "enum": ["genome", "geno", "transcriptome", "tran", "proteins", "prot"]
            
            
            }
    

        ,
                "lineage_dataset": {
                "type":
                "string",
                "description": "Type: `string`, example: `stramenopiles_odb10`. Specify a BUSCO lineage dataset that is most closely related to the assembly or gene set being assessed",
                "help_text": "Type: `string`, example: `stramenopiles_odb10`. Specify a BUSCO lineage dataset that is most closely related to the assembly or gene set being assessed. \nThe full list of available datasets can be viewed [here](https://busco-data.ezlab.org/v5/data/lineages/) or by running the busco/busco_list_datasets component.\nWhen unsure, the \"--auto_lineage\" flag can be set to automatically find the optimal lineage path.\nBUSCO will automatically download the requested dataset if it is not already present in the download folder. \nYou can optionally provide a path to a local dataset instead of a name, e.g. path/to/dataset.\nDatasets can be downloaded using the busco/busco_download_dataset component.\n"
            
            }
    

}
},
    
    
    "outputs" : {
    "title": "Outputs",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "short_summary_json": {
                "type":
                "string",
                "description": "Type: `file`, default: `$id.$key.short_summary_json.json`, example: `short_summary.json`. Output file for short summary in JSON format",
                "help_text": "Type: `file`, default: `$id.$key.short_summary_json.json`, example: `short_summary.json`. Output file for short summary in JSON format.\n"
            ,
                "default": "$id.$key.short_summary_json.json"
            }
    

        ,
                "short_summary_txt": {
                "type":
                "string",
                "description": "Type: `file`, default: `$id.$key.short_summary_txt.txt`, example: `short_summary.txt`. Output file for short summary in TXT format",
                "help_text": "Type: `file`, default: `$id.$key.short_summary_txt.txt`, example: `short_summary.txt`. Output file for short summary in TXT format.\n"
            ,
                "default": "$id.$key.short_summary_txt.txt"
            }
    

        ,
                "full_table": {
                "type":
                "string",
                "description": "Type: `file`, default: `$id.$key.full_table.tsv`, example: `full_table.tsv`. Full table output in TSV format",
                "help_text": "Type: `file`, default: `$id.$key.full_table.tsv`, example: `full_table.tsv`. Full table output in TSV format.\n"
            ,
                "default": "$id.$key.full_table.tsv"
            }
    

        ,
                "missing_busco_list": {
                "type":
                "string",
                "description": "Type: `file`, default: `$id.$key.missing_busco_list.tsv`, example: `missing_busco_list.tsv`. Missing list output in TSV format",
                "help_text": "Type: `file`, default: `$id.$key.missing_busco_list.tsv`, example: `missing_busco_list.tsv`. Missing list output in TSV format.\n"
            ,
                "default": "$id.$key.missing_busco_list.tsv"
            }
    

        ,
                "output_dir": {
                "type":
                "string",
                "description": "Type: `file`, default: `$id.$key.output_dir.output_dir`, example: `output_dir/`. The full output directory, if so desired",
                "help_text": "Type: `file`, default: `$id.$key.output_dir.output_dir`, example: `output_dir/`. The full output directory, if so desired.\n"
            ,
                "default": "$id.$key.output_dir.output_dir"
            }
    

}
},
    
    
    "resource and run settings" : {
    "title": "Resource and Run Settings",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "force": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Force rewriting of existing files",
                "help_text": "Type: `boolean_true`, default: `false`. Force rewriting of existing files. Must be used when output files with the provided name already exist.\n"
            ,
                "default": "False"
            }
    

        ,
                "quiet": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Disable the info logs, displays only errors",
                "help_text": "Type: `boolean_true`, default: `false`. Disable the info logs, displays only errors.\n"
            ,
                "default": "False"
            }
    

        ,
                "restart": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Continue a run that had already partially completed",
                "help_text": "Type: `boolean_true`, default: `false`. Continue a run that had already partially completed. Restarting skips calls to tools that have completed but performs all pre- and post-processing steps.\n"
            ,
                "default": "False"
            }
    

        ,
                "tar": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Compress some subdirectories with many files to save space",
                "help_text": "Type: `boolean_true`, default: `false`. Compress some subdirectories with many files to save space.\n"
            ,
                "default": "False"
            }
    

}
},
    
    
    "lineage dataset settings" : {
    "title": "Lineage Dataset Settings",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "auto_lineage": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Run auto-lineage pipelilne to automatically determine BUSCO lineage dataset that is most closely related to the assembly or gene set being assessed",
                "help_text": "Type: `boolean_true`, default: `false`. Run auto-lineage pipelilne to automatically determine BUSCO lineage dataset that is most closely related to the assembly or gene set being assessed.\n"
            ,
                "default": "False"
            }
    

        ,
                "auto_lineage_euk": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Run auto-placement just on eukaryota tree to find optimal lineage path",
                "help_text": "Type: `boolean_true`, default: `false`. Run auto-placement just on eukaryota tree to find optimal lineage path.\n"
            ,
                "default": "False"
            }
    

        ,
                "auto_lineage_prok": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Run auto_lineage just on prokaryota trees to find optimum lineage path",
                "help_text": "Type: `boolean_true`, default: `false`. Run auto_lineage just on prokaryota trees to find optimum lineage path.\n"
            ,
                "default": "False"
            }
    

        ,
                "datasets_version": {
                "type":
                "string",
                "description": "Type: `string`, example: `odb10`. Specify the version of BUSCO datasets\n",
                "help_text": "Type: `string`, example: `odb10`. Specify the version of BUSCO datasets\n"
            
            }
    

}
},
    
    
    "augustus settings" : {
    "title": "Augustus Settings",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "augustus": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Use augustus gene predictor for eukaryote runs",
                "help_text": "Type: `boolean_true`, default: `false`. Use augustus gene predictor for eukaryote runs.\n"
            ,
                "default": "False"
            }
    

        ,
                "augustus_parameters": {
                "type":
                "string",
                "description": "Type: `string`, example: `--PARAM1=VALUE1,--PARAM2=VALUE2`. Additional parameters to be passed to Augustus (see Augustus documentation: https://github",
                "help_text": "Type: `string`, example: `--PARAM1=VALUE1,--PARAM2=VALUE2`. Additional parameters to be passed to Augustus (see Augustus documentation: https://github.com/Gaius-Augustus/Augustus/blob/master/docs/RUNNING-AUGUSTUS.md).\nParameters should be contained within a single string, without whitespace and seperated by commas.\n"
            
            }
    

        ,
                "augustus_species": {
                "type":
                "string",
                "description": "Type: `string`. Specify the augustus species\n",
                "help_text": "Type: `string`. Specify the augustus species\n"
            
            }
    

        ,
                "long": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Optimize Augustus self-training mode",
                "help_text": "Type: `boolean_true`, default: `false`. Optimize Augustus self-training mode. This adds considerably to the run time, but can improve results for some non-model organisms.\n"
            ,
                "default": "False"
            }
    

}
},
    
    
    "bbtools settings" : {
    "title": "BBTools Settings",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "contig_break": {
                "type":
                "integer",
                "description": "Type: `integer`. Number of contiguous Ns to signify a break between contigs in BBTools analysis",
                "help_text": "Type: `integer`. Number of contiguous Ns to signify a break between contigs in BBTools analysis.\n"
            
            }
    

        ,
                "limit": {
                "type":
                "integer",
                "description": "Type: `integer`. Number of candidate regions (contig or transcript) from the BLAST output to consider per BUSCO",
                "help_text": "Type: `integer`. Number of candidate regions (contig or transcript) from the BLAST output to consider per BUSCO.\nThis option is only effective in pipelines using BLAST, i.e. the genome pipeline (see --augustus) or the prokaryota transcriptome pipeline.\n"
            
            }
    

        ,
                "scaffold_composition": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Writes ACGTN content per scaffold to a file scaffold_composition",
                "help_text": "Type: `boolean_true`, default: `false`. Writes ACGTN content per scaffold to a file scaffold_composition.txt.\n"
            ,
                "default": "False"
            }
    

}
},
    
    
    "blast settings" : {
    "title": "BLAST Settings",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "e_value": {
                "type":
                "number",
                "description": "Type: `double`. E-value cutoff for BLAST searches",
                "help_text": "Type: `double`. E-value cutoff for BLAST searches.\n"
            
            }
    

}
},
    
    
    "protein gene prediction settings" : {
    "title": "Protein Gene Prediction settings",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "miniprot": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Use Miniprot gene predictor",
                "help_text": "Type: `boolean_true`, default: `false`. Use Miniprot gene predictor.\n"
            ,
                "default": "False"
            }
    

}
},
    
    
    "metaeuk settings" : {
    "title": "MetaEuk Settings",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "metaeuk_parameters": {
                "type":
                "string",
                "description": "Type: `string`, example: `--max-overlap=15,--min-exon-aa=15`. Pass additional arguments to Metaeuk for the first run (see Metaeuk documentation https://github",
                "help_text": "Type: `string`, example: `--max-overlap=15,--min-exon-aa=15`. Pass additional arguments to Metaeuk for the first run (see Metaeuk documentation https://github.com/soedinglab/metaeuk).\nAll parameters should be contained within a single string with no white space, with each parameter separated by a comma.\n"
            
            }
    

        ,
                "metaeuk_rerun_parameters": {
                "type":
                "string",
                "description": "Type: `string`, example: `--max-overlap=15,--min-exon-aa=15`. Pass additional arguments to Metaeuk for the second run (see Metaeuk documentation https://github",
                "help_text": "Type: `string`, example: `--max-overlap=15,--min-exon-aa=15`. Pass additional arguments to Metaeuk for the second run (see Metaeuk documentation https://github.com/soedinglab/metaeuk).\nAll parameters should be contained within a single string with no white space, with each parameter separated by a comma.\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/resource and run settings"
    },

    {
    "$ref": "#/definitions/lineage dataset settings"
    },

    {
    "$ref": "#/definitions/augustus settings"
    },

    {
    "$ref": "#/definitions/bbtools settings"
    },

    {
    "$ref": "#/definitions/blast settings"
    },

    {
    "$ref": "#/definitions/protein gene prediction settings"
    },

    {
    "$ref": "#/definitions/metaeuk settings"
    },

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