{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "qualimap_rnaseq",
"description": "Qualimap RNA-seq QC reports quality control metrics and bias estimations \nwhich are specific for whole transcriptome sequencing, including reads genomic \norigin, junction analysis, transcript coverage and 5\u2019-3\u2019 bias computation.\n",
"type": "object",
"definitions": {

    
    
    "input" : {
    "title": "Input",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "bam": {
                "type":
                "string",
                "description": "Type: `file`, required, example: `alignment.bam`. Path to the sequence alignment file in BAM format, produced by a splicing-aware aligner",
                "help_text": "Type: `file`, required, example: `alignment.bam`. Path to the sequence alignment file in BAM format, produced by a splicing-aware aligner."
            
            }
    

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

}
},
    
    
    "output" : {
    "title": "Output",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "qc_results": {
                "type":
                "string",
                "description": "Type: `file`, required, default: `$id.$key.qc_results.txt`, example: `rnaseq_qc_results.txt`. Text file containing the RNAseq QC results",
                "help_text": "Type: `file`, required, default: `$id.$key.qc_results.txt`, example: `rnaseq_qc_results.txt`. Text file containing the RNAseq QC results."
            ,
                "default":"$id.$key.qc_results.txt"
            }
    

        ,
                "counts": {
                "type":
                "string",
                "description": "Type: `file`, default: `$id.$key.counts.counts`. Output file for computed counts",
                "help_text": "Type: `file`, default: `$id.$key.counts.counts`. Output file for computed counts."
            ,
                "default":"$id.$key.counts.counts"
            }
    

        ,
                "report": {
                "type":
                "string",
                "description": "Type: `file`, default: `$id.$key.report.html`, example: `report.html`. Report output file",
                "help_text": "Type: `file`, default: `$id.$key.report.html`, example: `report.html`. Report output file. Supported formats are PDF or HTML."
            ,
                "default":"$id.$key.report.html"
            }
    

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

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

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

        ,
                "sequencing_protocol": {
                "type":
                "string",
                "description": "Type: `string`, 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`, 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"]
            
            
            }
    

        ,
                "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`. maximum Java heap memory size, default = 4G",
                "help_text": "Type: `string`. maximum Java heap memory size, 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"
    }
]
}
