{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "samtools_stats",
"description": "Reports alignment summary statistics for a BAM file.",
"type": "object",
"definitions": {

    
    
    "inputs" : {
    "title": "Inputs",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "input": {
                "type":
                "string",
                "description": "Type: `file`, required. Input file",
                "help_text": "Type: `file`, required. Input file.\n"
            
            }
    

        ,
                "bai": {
                "type":
                "string",
                "description": "Type: `file`. Index file",
                "help_text": "Type: `file`. Index file.\n"
            
            }
    

        ,
                "fasta": {
                "type":
                "string",
                "description": "Type: `file`. Reference file the CRAM was created with",
                "help_text": "Type: `file`. Reference file the CRAM was created with.\n"
            
            }
    

        ,
                "coverage": {
                "type":
                "string",
                "description": "Type: List of `integer`, example: `1;1000;1`, multiple_sep: `\";\"`. Coverage distribution min;max;step",
                "help_text": "Type: List of `integer`, example: `1;1000;1`, multiple_sep: `\";\"`. Coverage distribution min;max;step. Default: [1, 1000, 1].\n"
            
            }
    

        ,
                "remove_dups": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Exclude from statistics reads marked as duplicates",
                "help_text": "Type: `boolean_true`, default: `false`. Exclude from statistics reads marked as duplicates.\n"
            ,
                "default":false
            }
    

        ,
                "customized_index_file": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Use a customized index file",
                "help_text": "Type: `boolean_true`, default: `false`. Use a customized index file.\n"
            ,
                "default":false
            }
    

        ,
                "required_flag": {
                "type":
                "string",
                "description": "Type: `string`, example: `0`. Required flag, 0 for unset",
                "help_text": "Type: `string`, example: `0`. Required flag, 0 for unset. See also `samtools flags`. Default: `\"0\"`.\n"
            
            }
    

        ,
                "filtering_flag": {
                "type":
                "string",
                "description": "Type: `string`, example: `0`. Filtering flag, 0 for unset",
                "help_text": "Type: `string`, example: `0`. Filtering flag, 0 for unset. See also `samtools flags`. Default: `0`.\n"
            
            }
    

        ,
                "GC_depth": {
                "type":
                "number",
                "description": "Type: `double`, example: `20000.0`. The size of GC-depth bins (decreasing bin size increases memory requirement)",
                "help_text": "Type: `double`, example: `20000.0`. The size of GC-depth bins (decreasing bin size increases memory requirement). Default: `20000`.\n"
            
            }
    

        ,
                "insert_size": {
                "type":
                "integer",
                "description": "Type: `integer`, example: `8000`. Maximum insert size",
                "help_text": "Type: `integer`, example: `8000`. Maximum insert size. Default: `8000`.\n"
            
            }
    

        ,
                "id": {
                "type":
                "string",
                "description": "Type: `string`. Include only listed read group or sample name",
                "help_text": "Type: `string`. Include only listed read group or sample name.\n"
            
            }
    

        ,
                "read_length": {
                "type":
                "integer",
                "description": "Type: `integer`, example: `-1`. Include in the statistics only reads with the given read length",
                "help_text": "Type: `integer`, example: `-1`. Include in the statistics only reads with the given read length. Default: `-1`.\n"
            
            }
    

        ,
                "most_inserts": {
                "type":
                "number",
                "description": "Type: `double`, example: `0.99`. Report only the main part of inserts",
                "help_text": "Type: `double`, example: `0.99`. Report only the main part of inserts. Default: `0.99`.\n"
            
            }
    

        ,
                "split_prefix": {
                "type":
                "string",
                "description": "Type: `string`. Path or string prefix for filepaths output by --split (default is input filename)",
                "help_text": "Type: `string`. Path or string prefix for filepaths output by --split (default is input filename).\n"
            
            }
    

        ,
                "trim_quality": {
                "type":
                "integer",
                "description": "Type: `integer`, example: `0`. The BWA trimming parameter",
                "help_text": "Type: `integer`, example: `0`. The BWA trimming parameter. Default: `0`.\n"
            
            }
    

        ,
                "ref_seq": {
                "type":
                "string",
                "description": "Type: `file`. Reference sequence (required for GC-depth and mismatches-per-cycle calculation)",
                "help_text": "Type: `file`. Reference sequence (required for GC-depth and mismatches-per-cycle calculation).\n"
            
            }
    

        ,
                "split": {
                "type":
                "string",
                "description": "Type: `string`. Also write statistics to separate files split by tagged field",
                "help_text": "Type: `string`. Also write statistics to separate files split by tagged field.\n"
            
            }
    

        ,
                "target_regions": {
                "type":
                "string",
                "description": "Type: `file`. Do stats in these regions only",
                "help_text": "Type: `file`. Do stats in these regions only. Tab-delimited file chr,from,to, 1-based, inclusive.\n"
            
            }
    

        ,
                "sparse": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Suppress outputting IS rows where there are no insertions",
                "help_text": "Type: `boolean_true`, default: `false`. Suppress outputting IS rows where there are no insertions.\n"
            ,
                "default":false
            }
    

        ,
                "remove_overlaps": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Remove overlaps of paired-end reads from coverage and base count computations",
                "help_text": "Type: `boolean_true`, default: `false`. Remove overlaps of paired-end reads from coverage and base count computations.\n"
            ,
                "default":false
            }
    

        ,
                "cov_threshold": {
                "type":
                "integer",
                "description": "Type: `integer`, example: `0`. Only bases with coverage above this value will be included in the target percentage computation",
                "help_text": "Type: `integer`, example: `0`. Only bases with coverage above this value will be included in the target percentage computation. Default: `0`.\n"
            
            }
    

        ,
                "input_fmt_option": {
                "type":
                "string",
                "description": "Type: `string`. Specify a single input file format option in the form of OPTION or OPTION=VALUE",
                "help_text": "Type: `string`. Specify a single input file format option in the form of OPTION or OPTION=VALUE.\n"
            
            }
    

        ,
                "reference": {
                "type":
                "string",
                "description": "Type: `file`. Reference sequence FASTA FILE",
                "help_text": "Type: `file`. Reference sequence FASTA FILE.\n"
            
            }
    

}
},
    
    
    "outputs" : {
    "title": "Outputs",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "output": {
                "type":
                "string",
                "description": "Type: `file`, required, default: `$id.$key.output.txt`, example: `out.txt`. Output file",
                "help_text": "Type: `file`, required, default: `$id.$key.output.txt`, example: `out.txt`. Output file.\n"
            ,
                "default":"$id.$key.output.txt"
            }
    

}
},
    
    
    "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/nextflow input-output arguments"
    }
]
}
