{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "bedtools_merge",
"description": "Merges overlapping BED/GFF/VCF entries into a single interval.\n",
"type": "object",
"definitions": {

    
    
    "inputs" : {
    "title": "Inputs",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "input": {
                "type":
                "string",
                "description": "Type: `file`, required. Input file (BED/GFF/VCF) to be merged",
                "help_text": "Type: `file`, required. Input file (BED/GFF/VCF) to be merged."
            
            }
    

}
},
    
    
    "outputs" : {
    "title": "Outputs",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "output": {
                "type":
                "string",
                "description": "Type: `file`, required, default: `$id.$key.output.output`. Output merged file BED to be written",
                "help_text": "Type: `file`, required, default: `$id.$key.output.output`. Output merged file BED to be written."
            ,
                "default": "$id.$key.output.output"
            }
    

}
},
    
    
    "options" : {
    "title": "Options",
    "type": "object",
    "description": "No description",
    "properties": {
    
        
                "strand": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Force strandedness",
                "help_text": "Type: `boolean_true`, default: `false`. Force strandedness. That is, only merge features\nthat are on the same strand.\n- By default, merging is done without respect to strand.\n"
            ,
                "default": "False"
            }
    

        ,
                "specific_strand": {
                "type":
                "string",
                "description": "Type: `string`, choices: ``+`, `-``. Force merge for one specific strand only",
                "help_text": "Type: `string`, choices: ``+`, `-``. Force merge for one specific strand only.\nFollow with + or - to force merge from only\nthe forward or reverse strand, respectively.\n- By default, merging is done without respect to strand.\n",
                "enum": ["+", "-"]
            
            
            }
    

        ,
                "distance": {
                "type":
                "integer",
                "description": "Type: `integer`. Maximum distance between features allowed for features\nto be merged",
                "help_text": "Type: `integer`. Maximum distance between features allowed for features\nto be merged.\n- Def. 0. That is, overlapping \u0026 book-ended features are merged.\n- (INTEGER)\n- Note: negative values enforce the number of b.p. required for overlap.\n"
            
            }
    

        ,
                "columns": {
                "type":
                "integer",
                "description": "Type: `integer`. Specify columns from the B file to map onto intervals in A",
                "help_text": "Type: `integer`. Specify columns from the B file to map onto intervals in A.\nDefault: 5.\nMultiple columns can be specified in a comma-delimited list.\n"
            
            }
    

        ,
                "operation": {
                "type":
                "string",
                "description": "Type: `string`. Specify the operation that should be applied to -c",
                "help_text": "Type: `string`. Specify the operation that should be applied to -c.\nValid operations:\n    sum, min, max, absmin, absmax,\n    mean, median, mode, antimode\n    stdev, sstdev\n    collapse (i.e., print a delimited list (duplicates allowed)), \n    distinct (i.e., print a delimited list (NO duplicates allowed)), \n    distinct_sort_num (as distinct, sorted numerically, ascending),\n    distinct_sort_num_desc (as distinct, sorted numerically, desscending),\n    distinct_only (delimited list of only unique values),\n    count\n    count_distinct (i.e., a count of the unique values in the column), \n    first (i.e., just the first value in the column), \n    last (i.e., just the last value in the column), \nDefault: sum\nMultiple operations can be specified in a comma-delimited list.\n\nIf there is only column, but multiple operations, all operations will be\napplied on that column. Likewise, if there is only one operation, but\nmultiple columns, that operation will be applied to all columns.\nOtherwise, the number of columns must match the the number of operations,\nand will be applied in respective order.\nE.g., \"-c 5,4,6 -o sum,mean,count\" will give the sum of column 5,\nthe mean of column 4, and the count of column 6.\nThe order of output columns will match the ordering given in the command.\n"
            
            }
    

        ,
                "delimiter": {
                "type":
                "string",
                "description": "Type: `string`, default: `,`, example: `|`. Specify a custom delimiter for the collapse operations",
                "help_text": "Type: `string`, default: `,`, example: `|`. Specify a custom delimiter for the collapse operations.\n"
            ,
                "default": ","
            }
    

        ,
                "precision": {
                "type":
                "integer",
                "description": "Type: `integer`. Sets the decimal precision for output (Default: 5)",
                "help_text": "Type: `integer`. Sets the decimal precision for output (Default: 5).\n"
            
            }
    

        ,
                "bed": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. If using BAM input, write output as BED",
                "help_text": "Type: `boolean_true`, default: `false`. If using BAM input, write output as BED.\n"
            ,
                "default": "False"
            }
    

        ,
                "header": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Print the header from the A file prior to results",
                "help_text": "Type: `boolean_true`, default: `false`. Print the header from the A file prior to results.\n"
            ,
                "default": "False"
            }
    

        ,
                "no_buffer": {
                "type":
                "boolean",
                "description": "Type: `boolean_true`, default: `false`. Disable buffered output",
                "help_text": "Type: `boolean_true`, default: `false`. Disable buffered output. Using this option will cause each line\nof output to be printed as it is generated, rather than saved\nin a buffer. This will make printing large output files \nnoticeably slower, but can be useful in conjunction with\nother software tools and scripts that need to process one\nline of bedtools output at a time.\n"
            ,
                "default": "False"
            }
    

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

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