nci-cidc-schemas 0.28.3__py2.py3-none-any.whl → 0.28.13__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. cidc_schemas/__init__.py +1 -1
  2. cidc_schemas/ngs_pipeline_api/__init__.py +0 -1
  3. cidc_schemas/ngs_pipeline_api/wes/wes_output_API.py +1 -1
  4. cidc_schemas/prism/constants.py +7 -8
  5. cidc_schemas/prism/pipelines.py +2 -24
  6. cidc_schemas/schemas/artifacts/artifact_ibd.json +51 -0
  7. cidc_schemas/schemas/artifacts/artifact_imzml.json +51 -0
  8. cidc_schemas/schemas/artifacts/artifact_parquet.json +51 -0
  9. cidc_schemas/schemas/assays/atacseq_assay.json +4 -0
  10. cidc_schemas/schemas/assays/components/available_assays.json +34 -1
  11. cidc_schemas/schemas/assays/components/maldi_glycan_input.json +28 -0
  12. cidc_schemas/schemas/assays/components/ngs/atacseq/atacseq_analysis.json +4 -0
  13. cidc_schemas/schemas/assays/components/ngs/rna/rna_analysis.json +10 -1
  14. cidc_schemas/schemas/assays/components/ngs_assay_core.json +2 -1
  15. cidc_schemas/schemas/assays/ctdna_assay.json +4 -0
  16. cidc_schemas/schemas/assays/cytof_assay.json +4 -0
  17. cidc_schemas/schemas/assays/cytof_assay_core.json +4 -0
  18. cidc_schemas/schemas/assays/elisa_assay.json +8 -4
  19. cidc_schemas/schemas/assays/hande_assay.json +18 -1
  20. cidc_schemas/schemas/assays/ihc_assay.json +9 -1
  21. cidc_schemas/schemas/assays/maldi_glycan_assay.json +72 -0
  22. cidc_schemas/schemas/assays/mibi_assay.json +4 -0
  23. cidc_schemas/schemas/assays/microbiome_assay.json +5 -1
  24. cidc_schemas/schemas/assays/mif_assay.json +10 -3
  25. cidc_schemas/schemas/assays/mihc_assay.json +4 -1
  26. cidc_schemas/schemas/assays/misc_data.json +9 -1
  27. cidc_schemas/schemas/assays/nanostring_assay.json +5 -1
  28. cidc_schemas/schemas/assays/nulisa_assay.json +4 -0
  29. cidc_schemas/schemas/assays/olink_assay.json +4 -0
  30. cidc_schemas/schemas/assays/olink_ht_assay.json +100 -0
  31. cidc_schemas/schemas/assays/rna_assay-v0.json +9 -0
  32. cidc_schemas/schemas/assays/scrnaseq_analysis.json +4 -0
  33. cidc_schemas/schemas/assays/scrnaseq_assay.json +4 -0
  34. cidc_schemas/schemas/assays/tcr_analysis.json +4 -0
  35. cidc_schemas/schemas/assays/tcr_assay.json +4 -0
  36. cidc_schemas/schemas/assays/tcrseq_rna_assay.json +64 -0
  37. cidc_schemas/schemas/assays/visium_analysis.json +4 -0
  38. cidc_schemas/schemas/assays/visium_assay.json +4 -0
  39. cidc_schemas/schemas/assays/wes_analysis.json +9 -1
  40. cidc_schemas/schemas/assays/wes_assay.json +25 -3
  41. cidc_schemas/schemas/assays/wes_tumor_only_analysis.json +9 -1
  42. cidc_schemas/schemas/clinical_data.json +8 -0
  43. cidc_schemas/schemas/shipping_core.json +3 -1
  44. cidc_schemas/schemas/templates/analyses/atacseq_analysis_template.json +6 -2
  45. cidc_schemas/schemas/templates/analyses/cytof_analysis_template.json +16 -12
  46. cidc_schemas/schemas/templates/analyses/rna_level1_analysis_template.json +9 -1
  47. cidc_schemas/schemas/templates/analyses/scrnaseq_analysis_template.json +32 -28
  48. cidc_schemas/schemas/templates/analyses/tcr_analysis_template.json +9 -5
  49. cidc_schemas/schemas/templates/analyses/visium_analysis_template.json +11 -7
  50. cidc_schemas/schemas/templates/analyses/wes_analysis_template.json +9 -1
  51. cidc_schemas/schemas/templates/analyses/wes_tumor_only_analysis_template.json +9 -1
  52. cidc_schemas/schemas/templates/assays/atacseq_fastq_template.json +6 -2
  53. cidc_schemas/schemas/templates/assays/clinical_data_template.json +8 -0
  54. cidc_schemas/schemas/templates/assays/ctdna_template.json +15 -11
  55. cidc_schemas/schemas/templates/assays/cytof_template.json +9 -4
  56. cidc_schemas/schemas/templates/assays/elisa_template.json +8 -4
  57. cidc_schemas/schemas/templates/assays/hande_template.json +10 -2
  58. cidc_schemas/schemas/templates/assays/ihc_template.json +8 -0
  59. cidc_schemas/schemas/templates/assays/maldi_glycan_template.json +143 -0
  60. cidc_schemas/schemas/templates/assays/mibi_template.json +8 -4
  61. cidc_schemas/schemas/templates/assays/microbiome_template.json +12 -8
  62. cidc_schemas/schemas/templates/assays/mif_template.json +8 -0
  63. cidc_schemas/schemas/templates/assays/mihc_template.json +6 -2
  64. cidc_schemas/schemas/templates/assays/misc_data_template.json +8 -0
  65. cidc_schemas/schemas/templates/assays/nanostring_template.json +10 -6
  66. cidc_schemas/schemas/templates/assays/nulisa_template.json +8 -4
  67. cidc_schemas/schemas/templates/assays/olink_ht_template.json +86 -0
  68. cidc_schemas/schemas/templates/assays/olink_template.json +8 -4
  69. cidc_schemas/schemas/templates/assays/rna_bam_template.json +9 -1
  70. cidc_schemas/schemas/templates/assays/rna_fastq_template.json +9 -1
  71. cidc_schemas/schemas/templates/assays/scrnaseq_template.json +8 -4
  72. cidc_schemas/schemas/templates/assays/tcr_adaptive_template.json +9 -5
  73. cidc_schemas/schemas/templates/assays/tcr_fastq_template.json +10 -6
  74. cidc_schemas/schemas/templates/assays/tcrseq_rna_template.json +59 -0
  75. cidc_schemas/schemas/templates/assays/visium_template.json +13 -9
  76. cidc_schemas/schemas/templates/assays/wes_bam_template.json +8 -0
  77. cidc_schemas/schemas/templates/assays/wes_fastq_template.json +8 -0
  78. cidc_schemas/template.py +0 -4
  79. cidc_schemas/unprism.py +3 -3
  80. {nci_cidc_schemas-0.28.3.dist-info → nci_cidc_schemas-0.28.13.dist-info}/METADATA +21 -15
  81. {nci_cidc_schemas-0.28.3.dist-info → nci_cidc_schemas-0.28.13.dist-info}/RECORD +85 -76
  82. {nci_cidc_schemas-0.28.3.dist-info → nci_cidc_schemas-0.28.13.dist-info}/WHEEL +1 -1
  83. cidc_schemas/schemas/templates/manifests/tumor_normal_pairing_template.json +0 -63
  84. {nci_cidc_schemas-0.28.3.dist-info → nci_cidc_schemas-0.28.13.dist-info}/entry_points.txt +0 -0
  85. {nci_cidc_schemas-0.28.3.dist-info → nci_cidc_schemas-0.28.13.dist-info}/licenses/LICENSE +0 -0
  86. {nci_cidc_schemas-0.28.3.dist-info → nci_cidc_schemas-0.28.13.dist-info}/top_level.txt +0 -0
cidc_schemas/__init__.py CHANGED
@@ -2,4 +2,4 @@
2
2
 
3
3
  __author__ = """NCI"""
4
4
  __email__ = "nci-cidc-tools-admin@mail.nih.gov"
5
- __version__ = "0.28.3"
5
+ __version__ = "0.28.13"
@@ -3,7 +3,6 @@
3
3
  import os
4
4
  from json import load
5
5
 
6
-
7
6
  # __author__ = """NCI"""
8
7
  # __email__ = "nci-cidc-tools-admin@mail.nih.gov"
9
8
  # __version__ = "0.1.25"
@@ -485,7 +485,7 @@ def main():
485
485
  default=False,
486
486
  action="store_true",
487
487
  )
488
- (options, args) = optparser.parse_args(sys.argv)
488
+ options, args = optparser.parse_args(sys.argv)
489
489
 
490
490
  run_id_files = [
491
491
  r for r in map(lambda x: evalWildcards(x, "{run}", "{run id}"), run_files)
@@ -2,7 +2,6 @@
2
2
 
3
3
  from typing import Dict
4
4
 
5
-
6
5
  PROTOCOL_ID_FIELD_NAME = "protocol_identifier"
7
6
 
8
7
  SUPPORTED_ASSAYS = [
@@ -29,9 +28,12 @@ SUPPORTED_ASSAYS = [
29
28
  "scrnaseq",
30
29
  "visium",
31
30
  "nulisa",
31
+ "maldi_glycan",
32
+ "olink_ht",
33
+ "tcrseq_rna",
32
34
  ]
33
35
 
34
- SUPPORTED_SHIPPING_MANIFESTS = [
36
+ SUPPORTED_MANIFESTS = [
35
37
  "pbmc",
36
38
  "plasma",
37
39
  "tissue_slide",
@@ -42,12 +44,6 @@ SUPPORTED_SHIPPING_MANIFESTS = [
42
44
  "h_and_e",
43
45
  "microbiome_dna",
44
46
  ]
45
- # weird non shipping manifest
46
- SUPPORTED_WEIRD_MANIFESTS = [
47
- "tumor_normal_pairing",
48
- ]
49
- SUPPORTED_MANIFESTS = SUPPORTED_SHIPPING_MANIFESTS + SUPPORTED_WEIRD_MANIFESTS
50
-
51
47
  SUPPORTED_ANALYSES = [
52
48
  "atacseq_analysis",
53
49
  "cytof_analysis",
@@ -145,6 +141,9 @@ ASSAY_TO_FILEPATH: Dict[str, str] = {
145
141
  "visium",
146
142
  "visium_analysis",
147
143
  "nulisa",
144
+ "maldi_glycan",
145
+ "olink_ht",
146
+ "tcrseq_rna",
148
147
  ]
149
148
  },
150
149
  }
@@ -9,7 +9,7 @@ from typing import Dict, List, NamedTuple, Union
9
9
  import jinja2
10
10
  import pandas as pd
11
11
 
12
- from .constants import PROTOCOL_ID_FIELD_NAME, SUPPORTED_SHIPPING_MANIFESTS
12
+ from .constants import PROTOCOL_ID_FIELD_NAME, SUPPORTED_MANIFESTS
13
13
  from ..template import Template
14
14
  from ..util import get_logger, load_pipeline_config_template, participant_id_from_cimac
15
15
 
@@ -108,10 +108,6 @@ class _Wes_pipeline_config:
108
108
  for both - normal and tumor sample - and we render tumor/normal pipeline config for those
109
109
  and tumor_only config otherwise
110
110
 
111
- As a result each assay or tumor_normal_pairing upload that "completes" some
112
- analysis run/pair (making all 3 pieces available - both samples data and a pairing)
113
- will be rendered only once - right after that upload.
114
-
115
111
  Patch is expected to be already merged into full_ct.
116
112
  """
117
113
  if upload_type not in ["assay", "pairing"]:
@@ -552,15 +548,8 @@ class _Wes_pipeline_config:
552
548
  ) -> Dict[str, Union[bytes, str]]:
553
549
  """
554
550
  Generates a mapping from filename to the files to attach.
555
- Attachments differ depending on whether the upload is wes_[bam/fastq] vs tumor_normal_pairing
556
551
  For wes_[bam/faq]:
557
552
  generates a pairing.csv file attempting to pair WES samples
558
- For tumor_normal_pairing:
559
- generates a pairing.csv file attempting to pair WES samples
560
- generates WES Monitor .yaml configs for each batch of 20 affected samples
561
- generates ingestion .xlsx templates for each affected sample
562
- for paired samples, for wes_analysis
563
- for unpaired samples, for wes_tumor_only_analysis
564
553
 
565
554
  For the pairing.csv
566
555
  - tumor samples already in a paired analysis are ignored
@@ -652,16 +641,6 @@ class _Wes_pipeline_config:
652
641
  + "_pairing.csv": self._generate_pairing_csv(trial_id, tumor_pair_list)
653
642
  }
654
643
 
655
- # for tumor_normal_pairing, also generate configs and ingestion sheets
656
- if "pairing" in self.upload_type:
657
- res.update(
658
- self._generate_configs_and_ingestion_sheets(
659
- trial_id=trial_id,
660
- patch=patch,
661
- data_bucket=data_bucket,
662
- )
663
- )
664
-
665
644
  return res
666
645
 
667
646
 
@@ -821,7 +800,6 @@ _ANALYSIS_CONF_GENERATORS = {
821
800
  "wes_bam": _Wes_pipeline_config("assay"),
822
801
  "tcr_adaptive": _tcr_pipeline_config,
823
802
  "tcr_fastq": _tcr_pipeline_config,
824
- "tumor_normal_pairing": _Wes_pipeline_config("pairing"),
825
803
  "rna_fastq": _rna_level1_pipeline_config,
826
804
  "rna_bam": _rna_level1_pipeline_config,
827
805
  }
@@ -843,7 +821,7 @@ def generate_analysis_configs_from_upload_patch(
843
821
  """
844
822
  ret = {}
845
823
 
846
- if template_type in SUPPORTED_SHIPPING_MANIFESTS:
824
+ if template_type in SUPPORTED_MANIFESTS:
847
825
  ret.update(_shipping_manifest_new_participants(ct, patch, data_bucket))
848
826
 
849
827
  if template_type in _ANALYSIS_CONF_GENERATORS:
@@ -0,0 +1,51 @@
1
+ {
2
+ "$schema": "metaschema/strict_meta_schema.json#",
3
+ "$id": "ibd_artifact",
4
+ "title": "IBD Artifact",
5
+ "type": "object",
6
+ "description": "Information about a IBD file.",
7
+ "additionalProperties": false,
8
+ "properties": {
9
+ "data_format": {
10
+ "description": "Data format.",
11
+ "const": "IBD"
12
+ },
13
+ "upload_placeholder": {
14
+ "$ref": "artifacts/artifact_core.json#properties/upload_placeholder"
15
+ },
16
+ "artifact_creator": {
17
+ "$ref": "artifacts/artifact_core.json#properties/artifact_creator"
18
+ },
19
+ "uploader": { "$ref": "artifacts/artifact_core.json#properties/uploader" },
20
+ "uuid": { "$ref": "artifacts/artifact_core.json#properties/uuid" },
21
+ "file_name": {
22
+ "$ref": "artifacts/artifact_core.json#properties/file_name"
23
+ },
24
+ "object_url": {
25
+ "$ref": "artifacts/artifact_core.json#properties/object_url"
26
+ },
27
+ "uploaded_timestamp": {
28
+ "$ref": "artifacts/artifact_core.json#properties/uploaded_timestamp"
29
+ },
30
+ "file_size_bytes": {
31
+ "$ref": "artifacts/artifact_core.json#properties/file_size_bytes"
32
+ },
33
+ "md5_hash": { "$ref": "artifacts/artifact_core.json#properties/md5_hash" },
34
+ "crc32c_hash": {
35
+ "$ref": "artifacts/artifact_core.json#properties/crc32c_hash"
36
+ },
37
+ "visible": { "$ref": "artifacts/artifact_core.json#properties/visible" },
38
+ "artifact_category": {
39
+ "$ref": "artifacts/artifact_core.json#properties/artifact_category"
40
+ },
41
+ "facet_group": {
42
+ "$ref": "artifacts/artifact_core.json#properties/facet_group"
43
+ }
44
+ },
45
+ "allOf": [
46
+ {
47
+ "$ref": "artifacts/artifact_core.json"
48
+ }
49
+ ],
50
+ "mergeStrategy": "objectMerge"
51
+ }
@@ -0,0 +1,51 @@
1
+ {
2
+ "$schema": "metaschema/strict_meta_schema.json#",
3
+ "$id": "imzml_artifact",
4
+ "title": "IMZML Artifact",
5
+ "type": "object",
6
+ "description": "Information about an IMZML file.",
7
+ "additionalProperties": false,
8
+ "properties": {
9
+ "data_format": {
10
+ "description": "Data format.",
11
+ "const": "IMZML"
12
+ },
13
+ "upload_placeholder": {
14
+ "$ref": "artifacts/artifact_core.json#properties/upload_placeholder"
15
+ },
16
+ "artifact_creator": {
17
+ "$ref": "artifacts/artifact_core.json#properties/artifact_creator"
18
+ },
19
+ "uploader": { "$ref": "artifacts/artifact_core.json#properties/uploader" },
20
+ "uuid": { "$ref": "artifacts/artifact_core.json#properties/uuid" },
21
+ "file_name": {
22
+ "$ref": "artifacts/artifact_core.json#properties/file_name"
23
+ },
24
+ "object_url": {
25
+ "$ref": "artifacts/artifact_core.json#properties/object_url"
26
+ },
27
+ "uploaded_timestamp": {
28
+ "$ref": "artifacts/artifact_core.json#properties/uploaded_timestamp"
29
+ },
30
+ "file_size_bytes": {
31
+ "$ref": "artifacts/artifact_core.json#properties/file_size_bytes"
32
+ },
33
+ "md5_hash": { "$ref": "artifacts/artifact_core.json#properties/md5_hash" },
34
+ "crc32c_hash": {
35
+ "$ref": "artifacts/artifact_core.json#properties/crc32c_hash"
36
+ },
37
+ "visible": { "$ref": "artifacts/artifact_core.json#properties/visible" },
38
+ "artifact_category": {
39
+ "$ref": "artifacts/artifact_core.json#properties/artifact_category"
40
+ },
41
+ "facet_group": {
42
+ "$ref": "artifacts/artifact_core.json#properties/facet_group"
43
+ }
44
+ },
45
+ "allOf": [
46
+ {
47
+ "$ref": "artifacts/artifact_core.json"
48
+ }
49
+ ],
50
+ "mergeStrategy": "objectMerge"
51
+ }
@@ -0,0 +1,51 @@
1
+ {
2
+ "$schema": "metaschema/strict_meta_schema.json#",
3
+ "$id": "parquet_artifact",
4
+ "title": "Parquet Artifact",
5
+ "type": "object",
6
+ "description": "Information about a parquet file.",
7
+ "additionalProperties": false,
8
+ "properties": {
9
+ "data_format": {
10
+ "description": "Data format.",
11
+ "const": "parquet"
12
+ },
13
+ "upload_placeholder": {
14
+ "$ref": "artifacts/artifact_core.json#properties/upload_placeholder"
15
+ },
16
+ "artifact_creator": {
17
+ "$ref": "artifacts/artifact_core.json#properties/artifact_creator"
18
+ },
19
+ "uploader": { "$ref": "artifacts/artifact_core.json#properties/uploader" },
20
+ "uuid": { "$ref": "artifacts/artifact_core.json#properties/uuid" },
21
+ "file_name": {
22
+ "$ref": "artifacts/artifact_core.json#properties/file_name"
23
+ },
24
+ "object_url": {
25
+ "$ref": "artifacts/artifact_core.json#properties/object_url"
26
+ },
27
+ "uploaded_timestamp": {
28
+ "$ref": "artifacts/artifact_core.json#properties/uploaded_timestamp"
29
+ },
30
+ "file_size_bytes": {
31
+ "$ref": "artifacts/artifact_core.json#properties/file_size_bytes"
32
+ },
33
+ "md5_hash": { "$ref": "artifacts/artifact_core.json#properties/md5_hash" },
34
+ "crc32c_hash": {
35
+ "$ref": "artifacts/artifact_core.json#properties/crc32c_hash"
36
+ },
37
+ "visible": { "$ref": "artifacts/artifact_core.json#properties/visible" },
38
+ "artifact_category": {
39
+ "$ref": "artifacts/artifact_core.json#properties/artifact_category"
40
+ },
41
+ "facet_group": {
42
+ "$ref": "artifacts/artifact_core.json#properties/facet_group"
43
+ }
44
+ },
45
+ "allOf": [
46
+ {
47
+ "$ref": "artifacts/artifact_core.json"
48
+ }
49
+ ],
50
+ "mergeStrategy": "objectMerge"
51
+ }
@@ -55,6 +55,10 @@
55
55
  "batch_id": {
56
56
  "description": "ATACseq batch identification number. Unique to every batch.",
57
57
  "type": "string"
58
+ },
59
+ "optional_id": {
60
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
61
+ "type": "string"
58
62
  },
59
63
  "error": {"$ref": "artifacts/artifact_yaml.json"},
60
64
  "assay_creator": {"$ref": "assays/components/assay_core.json#properties/assay_creator"},
@@ -77,7 +77,7 @@
77
77
  },
78
78
  "mergeStrategy": "arrayMergeById",
79
79
  "mergeOptions": {
80
- "idRef": "assay_run_id"
80
+ "idRef": "batch_id"
81
81
  }
82
82
  },
83
83
  "olink": {
@@ -178,6 +178,39 @@
178
178
  "mergeOptions": {
179
179
  "idRef": "batch_id"
180
180
  }
181
+ },
182
+ "maldi_glycan": {
183
+ "type": "array",
184
+ "description": "MALDI Glycan",
185
+ "items": {
186
+ "$ref": "assays/maldi_glycan_assay.json"
187
+ },
188
+ "mergeStrategy": "arrayMergeById",
189
+ "mergeOptions": {
190
+ "idRef": "batch_id"
191
+ }
192
+ },
193
+ "olink_ht": {
194
+ "type": "array",
195
+ "description": "Olink HT",
196
+ "items": {
197
+ "$ref": "assays/olink_ht_assay.json"
198
+ },
199
+ "mergeStrategy": "arrayMergeById",
200
+ "mergeOptions": {
201
+ "idRef": "batch_id"
202
+ }
203
+ },
204
+ "tcrseq_rna": {
205
+ "type": "array",
206
+ "description": "TCR RNA",
207
+ "items": {
208
+ "$ref": "assays/tcrseq_rna_assay.json"
209
+ },
210
+ "mergeStrategy": "arrayMergeById",
211
+ "mergeOptions": {
212
+ "idRef": "batch_id"
213
+ }
181
214
  }
182
215
  }
183
216
  }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "metaschema/strict_meta_schema.json#",
3
+ "$id": "maldi_glycan_input",
4
+ "title": "MALDI Glycan Input Files and Data",
5
+ "type": "object",
6
+ "description": "MALDI Glycan assay input files and data",
7
+ "inheritableBase": true,
8
+ "properties": {
9
+ "ibd_file": {
10
+ "$ref": "artifacts/artifact_ibd.json"
11
+ },
12
+ "imzml_file": {
13
+ "$ref": "artifacts/artifact_imzml.json"
14
+ },
15
+ "channels_csv": {
16
+ "$ref": "artifacts/artifact_csv.json"
17
+ },
18
+ "tiff_zip": {
19
+ "$ref": "artifacts/artifact_zip.json"
20
+ }
21
+ },
22
+ "required": [
23
+ "ibd_file",
24
+ "imzml_file",
25
+ "channels_csv",
26
+ "tiff_zip"
27
+ ]
28
+ }
@@ -55,6 +55,10 @@
55
55
  "batch_id":{
56
56
  "$ref": "assays/atacseq_assay.json#properties/batch_id"
57
57
  },
58
+ "optional_id": {
59
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
60
+ "type": "string"
61
+ },
58
62
  "records": {
59
63
  "type": "array",
60
64
  "mergeStrategy": "arrayMergeById",
@@ -18,6 +18,15 @@
18
18
  },
19
19
  "excluded_samples": {
20
20
  "$ref": "assays/components/excluded_samples.json"
21
+ },
22
+ "batch_id": {
23
+ "description": "Batch identification number. Unique to every upload.",
24
+ "type": "string"
25
+ },
26
+ "optional_id": {
27
+ "description": "Optional user provided id. Currently, comes from CIDC submission ID",
28
+ "type": "string"
21
29
  }
22
- }
30
+ },
31
+ "required": ["batch_id"]
23
32
  }
@@ -16,7 +16,8 @@
16
16
  "Illumina - NextSeq 550",
17
17
  "Illumina - HiSeq 4000",
18
18
  "Illumina - NovaSeq 6000",
19
- "MiSeq"
19
+ "MiSeq",
20
+ "Oxford Nanosphere"
20
21
  ]
21
22
  },
22
23
  "library_kit": {
@@ -89,6 +89,10 @@
89
89
  "batch_id": {
90
90
  "description": "ctDNA batch identification number. Unique to every batch.",
91
91
  "type": "string"
92
+ },
93
+ "optional_id": {
94
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
95
+ "type": "string"
92
96
  },
93
97
  "summary_plots": {"$ref": "artifacts/artifact_pdf.json"},
94
98
  "records": {
@@ -21,6 +21,10 @@
21
21
  "barcodes": {"$ref": "assays/cytof_assay_core.json#properties/barcodes"},
22
22
  "controls": {"$ref": "assays/cytof_assay_core.json#properties/controls"},
23
23
  "batch_id": {"$ref": "assays/cytof_assay_core.json#properties/batch_id"},
24
+ "optional_id": {
25
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
26
+ "type": "string"
27
+ },
24
28
  "excluded_samples": {"$ref": "assays/cytof_assay_core.json#properties/excluded_samples"},
25
29
  "injector": {
26
30
  "description": "Name of Injector component used as part of the CyTOF software",
@@ -31,6 +31,10 @@
31
31
  "description": "CyTOF batch identification number. Unique to every batch.",
32
32
  "type": "string"
33
33
  },
34
+ "optional_id": {
35
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
36
+ "type": "string"
37
+ },
34
38
  "controls": {
35
39
  "type": "array",
36
40
  "mergeStrategy": "arrayMergeById",
@@ -52,9 +52,13 @@
52
52
 
53
53
  "properties": {
54
54
  "assay_creator": {"$ref": "assays/components/assay_core.json#properties/assay_creator"},
55
- "assay_run_id": {
56
- "type": "string",
57
- "description": "User defined unique identifier for this assay run."
55
+ "batch_id": {
56
+ "description": "Batch identification number. Unique to every upload.",
57
+ "type": "string"
58
+ },
59
+ "optional_id": {
60
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
61
+ "type": "string"
58
62
  },
59
63
  "assay_xlsx": {
60
64
  "$ref": "artifacts/artifact_elisa_xlsx.json"
@@ -72,5 +76,5 @@
72
76
  },
73
77
  "mergeStrategy": "objectMerge",
74
78
  "additionalProperties": false,
75
- "required": ["assay_run_id", "assay_xlsx", "antigens"]
79
+ "required": ["batch_id", "assay_xlsx", "antigens"]
76
80
  }
@@ -27,6 +27,10 @@
27
27
  {
28
28
  "$comment": "Path to the H & E image in JPG format.",
29
29
  "$ref": "artifacts/artifact_jpg.json"
30
+ },
31
+ {
32
+ "$comment": "Path to the H & E image in OME-TIFF format.",
33
+ "$ref": "artifacts/artifact_jpg.json"
30
34
  }
31
35
  ]
32
36
  },
@@ -41,6 +45,10 @@
41
45
  {
42
46
  "$comment": "Path to the H & E annotated image in JPG format.",
43
47
  "$ref": "artifacts/artifact_jpg.json"
48
+ },
49
+ {
50
+ "$comment": "Path to the H & E annotated image in OME-TIFF format.",
51
+ "$ref": "artifacts/artifact_jpg.json"
44
52
  }
45
53
  ]
46
54
  }
@@ -94,6 +102,14 @@
94
102
 
95
103
  "properties": {
96
104
  "assay_creator": {"$ref": "assays/components/assay_core.json#properties/assay_creator"},
105
+ "batch_id": {
106
+ "description": "Batch identification number. Unique to every upload.",
107
+ "type": "string"
108
+ },
109
+ "optional_id": {
110
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
111
+ "type": "string"
112
+ },
97
113
  "records": {
98
114
  "type": "array",
99
115
  "description": "A single data record from H & E assay.",
@@ -108,6 +124,7 @@
108
124
  },
109
125
  "required": [
110
126
  "records",
111
- "assay_creator"
127
+ "assay_creator",
128
+ "batch_id"
112
129
  ]
113
130
  }
@@ -122,7 +122,14 @@
122
122
 
123
123
  "properties": {
124
124
  "assay_creator": {"$ref": "assays/components/assay_core.json#properties/assay_creator"},
125
-
125
+ "batch_id": {
126
+ "description": "Batch identification number. Unique to every upload.",
127
+ "type": "string"
128
+ },
129
+ "optional_id": {
130
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
131
+ "type": "string"
132
+ },
126
133
  "slide_scanner_model": {
127
134
  "description": "Model version of the slide scanner instrument.",
128
135
  "type": "string",
@@ -165,6 +172,7 @@
165
172
  }
166
173
  },
167
174
  "required": [
175
+ "batch_id",
168
176
  "slide_scanner_model",
169
177
  "staining_platform",
170
178
  "autostainer_model",
@@ -0,0 +1,72 @@
1
+ {
2
+ "$schema": "metaschema/strict_meta_schema.json#",
3
+ "$id": "maldi_glycan_assay",
4
+ "title": "MALDI Glycan Assay",
5
+ "type": "object",
6
+ "$comment": "description used in docs/index.html and docs/assays.maldi_glycan.html",
7
+ "description": "MALDI Glycan assay",
8
+ "additionalProperties": false,
9
+ "definitions": {
10
+ "record": {
11
+ "type": "object",
12
+ "mergeStrategy": "objectMerge",
13
+ "description": "A single data record from a MALDI Glycan assay.",
14
+ "additionalProperties": false,
15
+ "required": [
16
+ "cimac_id",
17
+ "details"
18
+ ],
19
+ "properties": {
20
+ "cimac_id": {
21
+ "description": "Id of an sample within this clinical trial, that this assay record is based upon.",
22
+ "$ref": "sample.json#properties/cimac_id"
23
+ },
24
+ "details": {
25
+ "$ref": "assays/components/maldi_glycan_input.json"
26
+ }
27
+ }
28
+ }
29
+ },
30
+ "properties": {
31
+ "assay_creator": {
32
+ "$ref": "assays/components/assay_core.json#properties/assay_creator"
33
+ },
34
+ "batch_id": {
35
+ "description": "Batch identification number. Unique to every upload.",
36
+ "type": "string"
37
+ },
38
+ "optional_id": {
39
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
40
+ "type": "string"
41
+ },
42
+ "molecular_assignments_file": {
43
+ "$ref": "artifacts/artifact_tsv.json"
44
+ },
45
+ "metadata_tsv": {"$ref": "artifacts/artifact_tsv.json"},
46
+
47
+ "antibodies": {
48
+ "type": "array",
49
+ "items": {
50
+ "$ref": "assays/components/mibi_antibody.json"
51
+ },
52
+ "mergeStrategy": "arrayMergeById",
53
+ "mergeOptions": {
54
+ "idRef": "antibody"
55
+ }
56
+ },
57
+ "records": {
58
+ "type": "array",
59
+ "description": "A single data record from a MALDI Glycan assay.",
60
+ "items": {
61
+ "$ref": "assays/maldi_glycan_assay.json#definitions/record"
62
+ },
63
+ "mergeStrategy": "append"
64
+ }
65
+ },
66
+ "required": [
67
+ "assay_creator",
68
+ "batch_id",
69
+ "molecular_assignments_file",
70
+ "records"
71
+ ]
72
+ }
@@ -35,6 +35,10 @@
35
35
  "type": "string",
36
36
  "description": "Batch identification number. Unique to every batch."
37
37
  },
38
+ "optional_id": {
39
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
40
+ "type": "string"
41
+ },
38
42
  "metadata_tsv": {
39
43
  "description": "Deidentified metadata as a TSV file",
40
44
  "$ref": "artifacts/artifact_tsv.json"
@@ -50,6 +50,10 @@
50
50
  "description": "Microbiome batch identification number.",
51
51
  "type": "string"
52
52
  },
53
+ "optional_id": {
54
+ "description": "User provided optional id. Currently comes from CIDC Submission ID",
55
+ "type": "string"
56
+ },
53
57
  "sequencer_platform": { "$ref": "assays/components/ngs_assay_core.json#properties/sequencer_platform" },
54
58
  "forward_fastq": {"$ref": "artifacts/artifact_fastq_gz.json"},
55
59
  "forward_index": {"$ref": "artifacts/artifact_fastq_gz.json"},
@@ -68,4 +72,4 @@
68
72
  }
69
73
  }
70
74
  }
71
- }
75
+ }