{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "bedtools_unionbedg",
  "description": "Combine multiple BEDGRAPH files into a single file reporting the union of all intervals.\n\nbedtools unionbedg combines multiple BEDGRAPH files into a single file, reporting the union \nof all intervals and their values across files. For each genomic position, it reports the \nvalues from each input file, using '0' for positions not covered in a particular file.\n\nThis tool is commonly used for:\n- Combining coverage tracks from multiple samples\n- Creating unified coverage matrices for comparative analysis\n- Merging signal tracks for visualization\n- Preparing data for multi-sample analysis workflows\n",
  "type": "object",
  "$defs": {
    "inputs": {
      "title": "Inputs",
      "type": "object",
      "description": "No description",
      "properties": {
        "files": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "format": "path",
          "exists": true,
          "description": "Input BEDGRAPH files to combine into a union.\n\n**Format:** BEDGRAPH files with chromosome, start, end, and value columns\n**Content:** Genomic intervals with associated numeric values (coverage, scores, etc.)\n**Usage:** All intervals from all files will be combined into a unified output\n**Requirements:** Files should use consistent chromosome naming\n**Output:** Union of all intervals with values from each input file\n",
          "help_text": "Type: `file`, multiple: `True`, required, direction: `input`, example: `[\"sample1.bedgraph\";\"sample2.bedgraph\";\"sample3.bedgraph\"]`. "
        }
      }
    },
    "outputs": {
      "title": "Outputs",
      "type": "object",
      "description": "No description",
      "properties": {
        "output": {
          "type": "string",
          "format": "path",
          "description": "Output file containing the union of all input BEDGRAPH intervals.\n\n**Format:** BEDGRAPH format with additional value columns for each input file\n**Content:** Union of intervals with values from all input files\n**Columns:** Chromosome, start, end, followed by one value column per input file\n**Missing values:** Positions not covered in a file are represented as '0'\n",
          "help_text": "Type: `file`, multiple: `False`, required, default: `\"$id.$key.output.bedgraph\"`, direction: `output`, example: `\"union_coverage.bedgraph\"`. ",
          "default": "$id.$key.output.bedgraph"
        }
      }
    },
    "options": {
      "title": "Options",
      "type": "object",
      "description": "No description",
      "properties": {
        "header": {
          "type": "boolean",
          "description": "Write header line with input file names to the output.\n\n**Usage:** Adds a header line showing the source of each value column\n**Format:** Header contains input filenames corresponding to value columns\n**Default:** false (no header written)\n**Applications:** Useful for tracking which column corresponds to which input file\n",
          "help_text": "Type: `boolean_true`, multiple: `False`, default: `false`. ",
          "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": "Path to an output directory.",
          "help_text": "Type: `string`, multiple: `False`, required, example: `\"output/\"`. "
        }
      }
    }
  },
  "allOf": [
    {
      "$ref": "#/$defs/inputs"
    },
    {
      "$ref": "#/$defs/outputs"
    },
    {
      "$ref": "#/$defs/options"
    },
    {
      "$ref": "#/$defs/nextflow input-output arguments"
    }
  ]
}
