{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "qualimap",
"description": "RNA-seq QC analysis using the qualimap \n",
"type": "object",
"definitions": {

    
    
    "input" : {
    "title": "Input",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "input": {
                "type":
                "string",
                "description": "Type: `file`, required. path to input mapping file in BAM format",
                "help_text": "Type: `file`, required. path to input mapping file in BAM format."
            
            }
    

        ,
                "gtf": {
                "type":
                "string",
                "description": "Type: `file`, required. path to annotations file in Ensembl GTF format",
                "help_text": "Type: `file`, required. path to annotations file in Ensembl GTF format."
            
            }
    

}
},
    
    
    "output" : {
    "title": "Output",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "output_dir": {
                "type":
                "string",
                "description": "Type: `file`, default: `$id.$key.output_dir.qualimap_output`. path to output directory for raw data and report",
                "help_text": "Type: `file`, default: `$id.$key.output_dir.qualimap_output`. path to output directory for raw data and report."
            ,
                "default": "$id.$key.output_dir.qualimap_output"
            }
    

        ,
                "output_pdf": {
                "type":
                "string",
                "description": "Type: `file`, default: `$id.$key.output_pdf.pdf`. path to output file for pdf report",
                "help_text": "Type: `file`, default: `$id.$key.output_pdf.pdf`. path to output file for pdf report."
            ,
                "default": "$id.$key.output_pdf.pdf"
            }
    

        ,
                "output_format": {
                "type":
                "string",
                "description": "Type: `string`, default: `html`. Format of the output report (PDF or HTML, default is HTML)",
                "help_text": "Type: `string`, default: `html`. Format of the output report (PDF or HTML, default is HTML)"
            ,
                "default": "html"
            }
    

}
},
    
    
    "optional" : {
    "title": "Optional",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "pr_bases": {
                "type":
                "integer",
                "description": "Type: `integer`, default: `100`. Number of upstream/downstream nucleotide bases to compute 5\u0027-3\u0027 bias (default = 100)",
                "help_text": "Type: `integer`, default: `100`. Number of upstream/downstream nucleotide bases to compute 5\u0027-3\u0027 bias (default = 100)."
            ,
                "default": "100"
            }
    

        ,
                "tr_bias": {
                "type":
                "integer",
                "description": "Type: `integer`, default: `1000`. Number of top highly expressed transcripts to compute 5\u0027-3\u0027 bias (default = 1000)",
                "help_text": "Type: `integer`, default: `1000`. Number of top highly expressed transcripts to compute 5\u0027-3\u0027 bias (default = 1000)."
            ,
                "default": "1000"
            }
    

        ,
                "algorithm": {
                "type":
                "string",
                "description": "Type: `string`, default: `uniquely-mapped-reads`. Counting algorithm (uniquely-mapped-reads (default) or proportional)",
                "help_text": "Type: `string`, default: `uniquely-mapped-reads`. Counting algorithm (uniquely-mapped-reads (default) or proportional)."
            ,
                "default": "uniquely-mapped-reads"
            }
    

        ,
                "sequencing_protocol": {
                "type":
                "string",
                "description": "Type: `string`, default: `non-strand-specific`, choices: ``non-strand-specific`, `strand-specific-reverse`, `strand-specific-forward``. Sequencing library protocol (strand-specific-forward, strand-specific-reverse or non-strand-specific (default))",
                "help_text": "Type: `string`, default: `non-strand-specific`, choices: ``non-strand-specific`, `strand-specific-reverse`, `strand-specific-forward``. Sequencing library protocol (strand-specific-forward, strand-specific-reverse or non-strand-specific (default)).",
                "enum": ["non-strand-specific", "strand-specific-reverse", "strand-specific-forward"]
            
            ,
                "default": "non-strand-specific"
            }
    

        ,
                "paired": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Setting this flag for paired-end experiments will result in counting fragments instead of reads",
                "help_text": "Type: `boolean_true`, default: `false`. Setting this flag for paired-end experiments will result in counting fragments instead of reads."
            ,
                "default": "False"
            }
    

        ,
                "sorted": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Setting this flag indicates that the input file is already sorted by name",
                "help_text": "Type: `boolean_true`, default: `false`. Setting this flag indicates that the input file is already sorted by name. If flag is not set, additional sorting by name will be performed. Only requiredfor paired-end analysis."
            ,
                "default": "False"
            }
    

        ,
                "java_memory_size": {
                "type":
                "string",
                "description": "Type: `string`, default: `4G`. maximum Java heap memory size, default = 4G",
                "help_text": "Type: `string`, default: `4G`. maximum Java heap memory size, default = 4G."
            ,
                "default": "4G"
            }
    

}
},
    
    
    "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/input"
    },

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

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

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