Skip to content

Commit 416a0aa

Browse files
committed
Improved the clarity and readability of descriptions in the JSON schema
1 parent 547518b commit 416a0aa

File tree

1 file changed

+66
-19
lines changed

1 file changed

+66
-19
lines changed

nextflow_schema.json

Lines changed: 66 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,10 @@
1010
"type": "object",
1111
"fa_icon": "fas fa-terminal",
1212
"description": "Define where the pipeline should find input data and save output data.",
13-
"required": ["input", "outdir"],
13+
"required": [
14+
"input",
15+
"outdir"
16+
],
1417
"properties": {
1518
"input": {
1619
"type": "string",
@@ -20,8 +23,9 @@
2023
"mimetype": "text/csv",
2124
"pattern": "^\\S+\\.csv$",
2225
"description": "Path to comma-separated file containing information about the samples in the experiment.",
23-
"help_text": "You will need to create a design file with information about the samples in your experiment before running the pipeline. Use this parameter to specify its location. It has to be a comma-separated file with 4 columns, and a header row. See [usage docs](https://nf-co.re/rnaseq/usage#samplesheet-input).",
24-
"fa_icon": "fas fa-file-csv"
26+
"help_text": "Create a design file with information about the samples in your experiment before running the pipeline. Use this parameter to specify its location. It must be a comma-separated file with 4 columns and a header row. See [usage docs](https://nf-co.re/rnaseq/usage#samplesheet-input).",
27+
"fa_icon": "fas fa-file-csv",
28+
"errorMessage": "The input must be a valid CSV file path with no spaces, ending in '.csv', and must exist."
2529
},
2630
"outdir": {
2731
"type": "string",
@@ -34,7 +38,8 @@
3438
"description": "Email address for completion summary.",
3539
"fa_icon": "fas fa-envelope",
3640
"help_text": "Set this parameter to your e-mail address to get a summary e-mail with details of the run sent to you when the workflow exits. If set in your user config file (`~/.nextflow/config`) then you don't need to specify this on the command line for every run.",
37-
"pattern": "^([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5})$"
41+
"pattern": "^([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5})$",
42+
"errorMessage": "The email must be a valid address in the format '[email protected]' and must not contain spaces."
3843
},
3944
"multiqc_title": {
4045
"type": "string",
@@ -63,7 +68,8 @@
6368
"pattern": "^\\S+\\.fn?a(sta)?(\\.gz)?$",
6469
"description": "Path to FASTA genome file.",
6570
"help_text": "This parameter is *mandatory* if `--genome` is not specified. If you don't have the appropriate alignment index available this will be generated for you automatically. Combine with `--save_reference` to save alignment index for future runs.",
66-
"fa_icon": "far fa-file-code"
71+
"fa_icon": "far fa-file-code",
72+
"errorMessage": "The FASTA file path must end with .fa, .fna, .fasta optionally with .gz, must not contain spaces, and must exist."
6773
},
6874
"gtf": {
6975
"type": "string",
@@ -73,7 +79,8 @@
7379
"pattern": "^\\S+\\.gtf(\\.gz)?$",
7480
"description": "Path to GTF annotation file.",
7581
"fa_icon": "fas fa-code-branch",
76-
"help_text": "This parameter is *mandatory* if `--genome` is not specified."
82+
"help_text": "This parameter is *mandatory* if `--genome` is not specified.",
83+
"errorMessage": "The GTF file must have a .gtf or .gtf.gz extension, must not contain spaces, and must exist."
7784
},
7885
"gff": {
7986
"type": "string",
@@ -83,7 +90,8 @@
8390
"pattern": "^\\S+\\.gff(\\.gz)?$",
8491
"fa_icon": "fas fa-code-branch",
8592
"description": "Path to GFF3 annotation file.",
86-
"help_text": "This parameter must be specified if `--genome` or `--gtf` are not specified."
93+
"help_text": "This parameter must be specified if `--genome` or `--gtf` are not specified.",
94+
"errorMessage": "The GFF file must have a .gff or .gff.gz extension, must not contain spaces, and must exist."
8795
},
8896
"gene_bed": {
8997
"type": "string",
@@ -92,7 +100,8 @@
92100
"mimetype": "text/plain",
93101
"pattern": "^\\S+\\.bed(\\.gz)?$",
94102
"fa_icon": "fas fa-procedures",
95-
"description": "Path to BED file containing gene intervals. This will be created from the GTF file if not specified."
103+
"description": "Path to BED file containing gene intervals. This will be created from the GTF file if not specified.",
104+
"errorMessage": "The BED file must have a .bed or .bed.gz extension, must not contain spaces, and must exist."
96105
},
97106
"transcript_fasta": {
98107
"type": "string",
@@ -162,7 +171,8 @@
162171
"fa_icon": "fas fa-memory",
163172
"pattern": "^\\d+(\\.\\d+)?\\.?\\s*(K|M|G|T)?B$",
164173
"description": "Minimum memory required to use splice sites and exons in the HiSAT2 index build process.",
165-
"help_text": "HiSAT2 requires a huge amount of RAM to build a genome index for larger genomes, if including splice sites and exons e.g. the human genome might typically require 200GB. If you specify less than this threshold for the `HISAT2_BUILD` process then the splice sites and exons will be ignored, meaning that the process will require a lot less memory. If you are working with a small genome, set this parameter to a lower value to reduce the threshold for skipping this check. If using a larger genome, consider supplying more memory to the `HISAT2_BUILD` process."
174+
"help_text": "HiSAT2 requires a huge amount of RAM to build a genome index for larger genomes, if including splice sites and exons e.g. the human genome might typically require 200GB. If you specify less than this threshold for the `HISAT2_BUILD` process then the splice sites and exons will be ignored, meaning that the process will require a lot less memory. If you are working with a small genome, set this parameter to a lower value to reduce the threshold for skipping this check. If using a larger genome, consider supplying more memory to the `HISAT2_BUILD` process.",
175+
"errorMessage": "Memory format must be a valid string like '200.GB', '16.MB', '8KB'."
166176
},
167177
"gencode": {
168178
"type": "boolean",
@@ -224,7 +234,10 @@
224234
"default": "trimgalore",
225235
"description": "Specifies the trimming tool to use - available options are 'trimgalore' and 'fastp'.",
226236
"fa_icon": "fas fa-cut",
227-
"enum": ["trimgalore", "fastp"]
237+
"enum": [
238+
"trimgalore",
239+
"fastp"
240+
]
228241
},
229242
"extra_trimgalore_args": {
230243
"type": "string",
@@ -310,7 +323,10 @@
310323
"default": "umitools",
311324
"description": "Specifies the tool to use for UMI deduplication - available options are 'umitools' and 'umicollapse'.",
312325
"fa_icon": "fas fa-barcode",
313-
"enum": ["umitools", "umicollapse"]
326+
"enum": [
327+
"umitools",
328+
"umicollapse"
329+
]
314330
},
315331
"umitools_extract_method": {
316332
"type": "string",
@@ -345,7 +361,13 @@
345361
"default": "directional",
346362
"fa_icon": "far fa-object-ungroup",
347363
"description": "Method to use to determine read groups by subsuming those with similar UMIs. All methods start by identifying the reads with the same mapping position, but treat similar yet nonidentical UMIs differently.",
348-
"enum": ["unique", "percentile", "cluster", "adjacency", "directional"]
364+
"enum": [
365+
"unique",
366+
"percentile",
367+
"cluster",
368+
"adjacency",
369+
"directional"
370+
]
349371
},
350372
"umitools_dedup_stats": {
351373
"type": "boolean",
@@ -367,13 +389,20 @@
367389
"default": "star_salmon",
368390
"description": "Specifies the alignment algorithm to use - available options are 'star_salmon', 'star_rsem' and 'hisat2'.",
369391
"fa_icon": "fas fa-map-signs",
370-
"enum": ["star_salmon", "star_rsem", "hisat2"]
392+
"enum": [
393+
"star_salmon",
394+
"star_rsem",
395+
"hisat2"
396+
]
371397
},
372398
"pseudo_aligner": {
373399
"type": "string",
374400
"description": "Specifies the pseudo aligner to use - available options are 'salmon'. Runs in addition to '--aligner'.",
375401
"fa_icon": "fas fa-hamburger",
376-
"enum": ["salmon", "kallisto"]
402+
"enum": [
403+
"salmon",
404+
"kallisto"
405+
]
377406
},
378407
"pseudo_aligner_kmer_size": {
379408
"type": "integer",
@@ -569,7 +598,10 @@
569598
"type": "string",
570599
"description": "Tool to use for detecting contaminants in unaligned reads - available options are 'kraken2' and 'kraken2_bracken'",
571600
"fa_icon": "fas fa-virus-slash",
572-
"enum": ["kraken2", "kraken2_bracken"]
601+
"enum": [
602+
"kraken2",
603+
"kraken2_bracken"
604+
]
573605
},
574606
"kraken_db": {
575607
"type": "string",
@@ -583,7 +615,15 @@
583615
"fa_icon": "fas fa-tree",
584616
"description": "Taxonomic level for Bracken abundance estimations.",
585617
"help_text": "First letter of Domain / Phylum / Class / Order / Family / Genus / Species",
586-
"enum": ["D", "P", "C", "O", "F", "G", "S"]
618+
"enum": [
619+
"D",
620+
"P",
621+
"C",
622+
"O",
623+
"F",
624+
"G",
625+
"S"
626+
]
587627
}
588628
}
589629
},
@@ -597,12 +637,12 @@
597637
"type": "boolean",
598638
"fa_icon": "fas fa-forward",
599639
"description": "Skip filtering of GTF for valid scaffolds and/ or transcript IDs.",
600-
"help_text": "If you're confident on the validity of the GTF with respect to the genome fasta file, or wish to disregard failures thriggered by the filtering module, activate this option."
640+
"help_text": "If you're confident in the validity of the GTF with respect to the genome FASTA file, or wish to disregard failures triggered by the filtering module, activate this option."
601641
},
602642
"skip_gtf_transcript_filter": {
603643
"type": "boolean",
604644
"fa_icon": "fas fa-forward",
605-
"description": "Skip the 'transcript_id' checking component of the GTF filtering script used in the pipeline."
645+
"errorMessage": "Skip the 'transcript_id' checking component of the GTF filtering script used in the pipeline. Ensure the GTF file is valid."
606646
},
607647
"skip_bbsplit": {
608648
"type": "boolean",
@@ -766,7 +806,14 @@
766806
"description": "Method used to save pipeline results to output directory.",
767807
"help_text": "The Nextflow `publishDir` option specifies which intermediate files should be saved to the output directory. This option tells the pipeline what method should be used to move these files. See [Nextflow docs](https://www.nextflow.io/docs/latest/process.html#publishdir) for details.",
768808
"fa_icon": "fas fa-copy",
769-
"enum": ["symlink", "rellink", "link", "copy", "copyNoFollow", "move"],
809+
"enum": [
810+
"symlink",
811+
"rellink",
812+
"link",
813+
"copy",
814+
"copyNoFollow",
815+
"move"
816+
],
770817
"hidden": true
771818
},
772819
"email_on_fail": {

0 commit comments

Comments
 (0)