nci-cidc-schemas 0.28.7__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.
- cidc_schemas/__init__.py +1 -1
- cidc_schemas/ngs_pipeline_api/__init__.py +0 -1
- cidc_schemas/ngs_pipeline_api/wes/wes_output_API.py +1 -1
- cidc_schemas/prism/constants.py +5 -8
- cidc_schemas/prism/pipelines.py +2 -24
- cidc_schemas/schemas/artifacts/artifact_parquet.json +51 -0
- cidc_schemas/schemas/assays/atacseq_assay.json +4 -0
- cidc_schemas/schemas/assays/components/available_assays.json +23 -2
- cidc_schemas/schemas/assays/components/ngs/atacseq/atacseq_analysis.json +4 -0
- cidc_schemas/schemas/assays/components/ngs/rna/rna_analysis.json +10 -1
- cidc_schemas/schemas/assays/components/ngs_assay_core.json +2 -1
- cidc_schemas/schemas/assays/ctdna_assay.json +4 -0
- cidc_schemas/schemas/assays/cytof_assay.json +4 -0
- cidc_schemas/schemas/assays/cytof_assay_core.json +4 -0
- cidc_schemas/schemas/assays/elisa_assay.json +8 -4
- cidc_schemas/schemas/assays/hande_assay.json +10 -1
- cidc_schemas/schemas/assays/ihc_assay.json +9 -1
- cidc_schemas/schemas/assays/maldi_glycan_assay.json +4 -0
- cidc_schemas/schemas/assays/mibi_assay.json +4 -0
- cidc_schemas/schemas/assays/microbiome_assay.json +5 -1
- cidc_schemas/schemas/assays/mif_assay.json +10 -3
- cidc_schemas/schemas/assays/mihc_assay.json +4 -1
- cidc_schemas/schemas/assays/misc_data.json +9 -1
- cidc_schemas/schemas/assays/nanostring_assay.json +5 -1
- cidc_schemas/schemas/assays/nulisa_assay.json +4 -0
- cidc_schemas/schemas/assays/olink_assay.json +4 -0
- cidc_schemas/schemas/assays/olink_ht_assay.json +100 -0
- cidc_schemas/schemas/assays/rna_assay-v0.json +9 -0
- cidc_schemas/schemas/assays/scrnaseq_analysis.json +4 -0
- cidc_schemas/schemas/assays/scrnaseq_assay.json +4 -0
- cidc_schemas/schemas/assays/tcr_analysis.json +4 -0
- cidc_schemas/schemas/assays/tcr_assay.json +4 -0
- cidc_schemas/schemas/assays/tcrseq_rna_assay.json +64 -0
- cidc_schemas/schemas/assays/visium_analysis.json +4 -0
- cidc_schemas/schemas/assays/visium_assay.json +4 -0
- cidc_schemas/schemas/assays/wes_analysis.json +9 -1
- cidc_schemas/schemas/assays/wes_assay.json +25 -3
- cidc_schemas/schemas/assays/wes_tumor_only_analysis.json +9 -1
- cidc_schemas/schemas/clinical_data.json +8 -0
- cidc_schemas/schemas/shipping_core.json +3 -2
- cidc_schemas/schemas/templates/analyses/atacseq_analysis_template.json +6 -2
- cidc_schemas/schemas/templates/analyses/cytof_analysis_template.json +16 -12
- cidc_schemas/schemas/templates/analyses/rna_level1_analysis_template.json +9 -1
- cidc_schemas/schemas/templates/analyses/scrnaseq_analysis_template.json +32 -28
- cidc_schemas/schemas/templates/analyses/tcr_analysis_template.json +9 -5
- cidc_schemas/schemas/templates/analyses/visium_analysis_template.json +11 -7
- cidc_schemas/schemas/templates/analyses/wes_analysis_template.json +9 -1
- cidc_schemas/schemas/templates/analyses/wes_tumor_only_analysis_template.json +9 -1
- cidc_schemas/schemas/templates/assays/atacseq_fastq_template.json +6 -2
- cidc_schemas/schemas/templates/assays/clinical_data_template.json +8 -0
- cidc_schemas/schemas/templates/assays/ctdna_template.json +15 -11
- cidc_schemas/schemas/templates/assays/cytof_template.json +9 -4
- cidc_schemas/schemas/templates/assays/elisa_template.json +8 -4
- cidc_schemas/schemas/templates/assays/hande_template.json +8 -0
- cidc_schemas/schemas/templates/assays/ihc_template.json +8 -0
- cidc_schemas/schemas/templates/assays/maldi_glycan_template.json +11 -7
- cidc_schemas/schemas/templates/assays/mibi_template.json +8 -4
- cidc_schemas/schemas/templates/assays/microbiome_template.json +12 -8
- cidc_schemas/schemas/templates/assays/mif_template.json +8 -0
- cidc_schemas/schemas/templates/assays/mihc_template.json +6 -2
- cidc_schemas/schemas/templates/assays/misc_data_template.json +8 -0
- cidc_schemas/schemas/templates/assays/nanostring_template.json +10 -6
- cidc_schemas/schemas/templates/assays/nulisa_template.json +8 -4
- cidc_schemas/schemas/templates/assays/olink_ht_template.json +86 -0
- cidc_schemas/schemas/templates/assays/olink_template.json +8 -4
- cidc_schemas/schemas/templates/assays/rna_bam_template.json +9 -1
- cidc_schemas/schemas/templates/assays/rna_fastq_template.json +9 -1
- cidc_schemas/schemas/templates/assays/scrnaseq_template.json +8 -4
- cidc_schemas/schemas/templates/assays/tcr_adaptive_template.json +9 -5
- cidc_schemas/schemas/templates/assays/tcr_fastq_template.json +10 -6
- cidc_schemas/schemas/templates/assays/tcrseq_rna_template.json +59 -0
- cidc_schemas/schemas/templates/assays/visium_template.json +13 -9
- cidc_schemas/schemas/templates/assays/wes_bam_template.json +8 -0
- cidc_schemas/schemas/templates/assays/wes_fastq_template.json +8 -0
- cidc_schemas/template.py +0 -4
- cidc_schemas/unprism.py +3 -3
- {nci_cidc_schemas-0.28.7.dist-info → nci_cidc_schemas-0.28.13.dist-info}/METADATA +12 -12
- {nci_cidc_schemas-0.28.7.dist-info → nci_cidc_schemas-0.28.13.dist-info}/RECORD +82 -78
- {nci_cidc_schemas-0.28.7.dist-info → nci_cidc_schemas-0.28.13.dist-info}/WHEEL +1 -1
- cidc_schemas/schemas/templates/manifests/tumor_normal_pairing_template.json +0 -63
- {nci_cidc_schemas-0.28.7.dist-info → nci_cidc_schemas-0.28.13.dist-info}/entry_points.txt +0 -0
- {nci_cidc_schemas-0.28.7.dist-info → nci_cidc_schemas-0.28.13.dist-info}/licenses/LICENSE +0 -0
- {nci_cidc_schemas-0.28.7.dist-info → nci_cidc_schemas-0.28.13.dist-info}/top_level.txt +0 -0
cidc_schemas/__init__.py
CHANGED
|
@@ -485,7 +485,7 @@ def main():
|
|
|
485
485
|
default=False,
|
|
486
486
|
action="store_true",
|
|
487
487
|
)
|
|
488
|
-
|
|
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)
|
cidc_schemas/prism/constants.py
CHANGED
|
@@ -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 = [
|
|
@@ -30,9 +29,11 @@ SUPPORTED_ASSAYS = [
|
|
|
30
29
|
"visium",
|
|
31
30
|
"nulisa",
|
|
32
31
|
"maldi_glycan",
|
|
32
|
+
"olink_ht",
|
|
33
|
+
"tcrseq_rna",
|
|
33
34
|
]
|
|
34
35
|
|
|
35
|
-
|
|
36
|
+
SUPPORTED_MANIFESTS = [
|
|
36
37
|
"pbmc",
|
|
37
38
|
"plasma",
|
|
38
39
|
"tissue_slide",
|
|
@@ -43,12 +44,6 @@ SUPPORTED_SHIPPING_MANIFESTS = [
|
|
|
43
44
|
"h_and_e",
|
|
44
45
|
"microbiome_dna",
|
|
45
46
|
]
|
|
46
|
-
# weird non shipping manifest
|
|
47
|
-
SUPPORTED_WEIRD_MANIFESTS = [
|
|
48
|
-
"tumor_normal_pairing",
|
|
49
|
-
]
|
|
50
|
-
SUPPORTED_MANIFESTS = SUPPORTED_SHIPPING_MANIFESTS + SUPPORTED_WEIRD_MANIFESTS
|
|
51
|
-
|
|
52
47
|
SUPPORTED_ANALYSES = [
|
|
53
48
|
"atacseq_analysis",
|
|
54
49
|
"cytof_analysis",
|
|
@@ -147,6 +142,8 @@ ASSAY_TO_FILEPATH: Dict[str, str] = {
|
|
|
147
142
|
"visium_analysis",
|
|
148
143
|
"nulisa",
|
|
149
144
|
"maldi_glycan",
|
|
145
|
+
"olink_ht",
|
|
146
|
+
"tcrseq_rna",
|
|
150
147
|
]
|
|
151
148
|
},
|
|
152
149
|
}
|
cidc_schemas/prism/pipelines.py
CHANGED
|
@@ -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,
|
|
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
|
|
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": "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": "
|
|
80
|
+
"idRef": "batch_id"
|
|
81
81
|
}
|
|
82
82
|
},
|
|
83
83
|
"olink": {
|
|
@@ -189,7 +189,28 @@
|
|
|
189
189
|
"mergeOptions": {
|
|
190
190
|
"idRef": "batch_id"
|
|
191
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
|
+
}
|
|
192
214
|
}
|
|
193
|
-
|
|
194
215
|
}
|
|
195
216
|
}
|
|
@@ -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
|
}
|
|
@@ -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
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
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": ["
|
|
79
|
+
"required": ["batch_id", "assay_xlsx", "antigens"]
|
|
76
80
|
}
|
|
@@ -102,6 +102,14 @@
|
|
|
102
102
|
|
|
103
103
|
"properties": {
|
|
104
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
|
+
},
|
|
105
113
|
"records": {
|
|
106
114
|
"type": "array",
|
|
107
115
|
"description": "A single data record from H & E assay.",
|
|
@@ -116,6 +124,7 @@
|
|
|
116
124
|
},
|
|
117
125
|
"required": [
|
|
118
126
|
"records",
|
|
119
|
-
"assay_creator"
|
|
127
|
+
"assay_creator",
|
|
128
|
+
"batch_id"
|
|
120
129
|
]
|
|
121
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",
|
|
@@ -35,6 +35,10 @@
|
|
|
35
35
|
"description": "Batch identification number. Unique to every upload.",
|
|
36
36
|
"type": "string"
|
|
37
37
|
},
|
|
38
|
+
"optional_id": {
|
|
39
|
+
"description": "User provided optional id. Currently comes from CIDC Submission ID",
|
|
40
|
+
"type": "string"
|
|
41
|
+
},
|
|
38
42
|
"molecular_assignments_file": {
|
|
39
43
|
"$ref": "artifacts/artifact_tsv.json"
|
|
40
44
|
},
|
|
@@ -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
|
+
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"title": "mIF Assay",
|
|
5
5
|
"type": "object",
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
"$comment": "description used in docs/index.html and docs/assays.mif.html",
|
|
8
8
|
"description": "Multiplex immunofluorescence.",
|
|
9
9
|
|
|
10
10
|
"additionalProperties": false,
|
|
@@ -28,7 +28,14 @@
|
|
|
28
28
|
"imaging_status": {"$ref": "assays/components/imaging_data.json#properties/imaging_status"},
|
|
29
29
|
|
|
30
30
|
"qc_report": {"$ref": "artifacts/artifact_zip.json"},
|
|
31
|
-
|
|
31
|
+
"batch_id": {
|
|
32
|
+
"description": "Batch identification number. Unique to every upload.",
|
|
33
|
+
"type": "string"
|
|
34
|
+
},
|
|
35
|
+
"optional_id": {
|
|
36
|
+
"description": "User provided optional id. Currently comes from CIDC Submission ID",
|
|
37
|
+
"type": "string"
|
|
38
|
+
},
|
|
32
39
|
"panel": {
|
|
33
40
|
"type": "string",
|
|
34
41
|
"enum": [
|
|
@@ -65,6 +72,6 @@
|
|
|
65
72
|
}
|
|
66
73
|
}
|
|
67
74
|
},
|
|
68
|
-
"required": ["records", "panel", "antibodies"],
|
|
75
|
+
"required": ["records", "panel", "antibodies", "batch_id"],
|
|
69
76
|
"mergeStrategy": "objectMerge"
|
|
70
77
|
}
|
|
@@ -46,7 +46,10 @@
|
|
|
46
46
|
"description": "Batch identification number. Unique to every upload.",
|
|
47
47
|
"type": "string"
|
|
48
48
|
},
|
|
49
|
-
|
|
49
|
+
"optional_id": {
|
|
50
|
+
"description": "User provided optional id. Currently comes from CIDC Submission ID",
|
|
51
|
+
"type": "string"
|
|
52
|
+
},
|
|
50
53
|
"samples_file": {"$ref": "artifacts/artifact_csv.json"},
|
|
51
54
|
|
|
52
55
|
"panel": {"type": "string"},
|
|
@@ -43,6 +43,14 @@
|
|
|
43
43
|
"assay_creator": {
|
|
44
44
|
"$ref": "assays/components/assay_core.json#properties/assay_creator"
|
|
45
45
|
},
|
|
46
|
+
"batch_id": {
|
|
47
|
+
"description": "Batch identification number. Unique to every upload.",
|
|
48
|
+
"type": "string"
|
|
49
|
+
},
|
|
50
|
+
"optional_id": {
|
|
51
|
+
"description": "User provided optional id. Currently comes from CIDC Submission ID",
|
|
52
|
+
"type": "string"
|
|
53
|
+
},
|
|
46
54
|
"files": {
|
|
47
55
|
"type": "array",
|
|
48
56
|
"description": "A single file containing miscellaneous data.",
|
|
@@ -59,4 +67,4 @@
|
|
|
59
67
|
"files",
|
|
60
68
|
"assay_creator"
|
|
61
69
|
]
|
|
62
|
-
}
|
|
70
|
+
}
|
|
@@ -61,6 +61,10 @@
|
|
|
61
61
|
"type": "string",
|
|
62
62
|
"description": "A unique ID that separates the different batches of Nanostring."
|
|
63
63
|
},
|
|
64
|
+
"optional_id": {
|
|
65
|
+
"description": "User provided optional id. Currently comes from CIDC Submission ID",
|
|
66
|
+
"type": "string"
|
|
67
|
+
},
|
|
64
68
|
"data": {
|
|
65
69
|
"type": "object",
|
|
66
70
|
"additionalProperties": false,
|
|
@@ -82,5 +86,5 @@
|
|
|
82
86
|
"items": { "$ref": "assays/nanostring_assay.json#definitions/run" }
|
|
83
87
|
}
|
|
84
88
|
},
|
|
85
|
-
"required": ["data", "runs"]
|
|
89
|
+
"required": ["data", "runs", "batch_id"]
|
|
86
90
|
}
|
|
@@ -35,6 +35,10 @@
|
|
|
35
35
|
"description": "Batch identification number. Unique to every upload.",
|
|
36
36
|
"type": "string"
|
|
37
37
|
},
|
|
38
|
+
"optional_id": {
|
|
39
|
+
"description": "User provided optional id. Currently comes from CIDC Submission ID",
|
|
40
|
+
"type": "string"
|
|
41
|
+
},
|
|
38
42
|
"npq_file": {
|
|
39
43
|
"$ref": "artifacts/artifact_csv.json"
|
|
40
44
|
},
|
|
@@ -119,6 +119,10 @@
|
|
|
119
119
|
"type": "string",
|
|
120
120
|
"description": "A unique identifier for this Olink upload"
|
|
121
121
|
},
|
|
122
|
+
"optional_id": {
|
|
123
|
+
"description": "User provided optional id. Currently comes from CIDC Submission ID",
|
|
124
|
+
"type": "string"
|
|
125
|
+
},
|
|
122
126
|
"assay_creator": {
|
|
123
127
|
"$ref": "assays/components/assay_core.json#properties/assay_creator"
|
|
124
128
|
},
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "metaschema/strict_meta_schema.json#",
|
|
3
|
+
"$id": "olink_ht_assay",
|
|
4
|
+
"title": "Olink HT Assay",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"$comment": "description used in docs/index.html and docs/assays.olink_ht.html",
|
|
7
|
+
"description": "Olink HT assay",
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"definitions": {
|
|
10
|
+
"record": {
|
|
11
|
+
"type": "object",
|
|
12
|
+
"mergeStrategy": "objectMerge",
|
|
13
|
+
"description": "A single data record from an Olink HT assay.",
|
|
14
|
+
"additionalProperties": false,
|
|
15
|
+
"required": [
|
|
16
|
+
"cimac_id",
|
|
17
|
+
"npx_run_file",
|
|
18
|
+
"instrument",
|
|
19
|
+
"npx_manager_version"
|
|
20
|
+
],
|
|
21
|
+
"properties": {
|
|
22
|
+
"cimac_id": {
|
|
23
|
+
"description": "Id of an sample within this clinical trial, that this assay record is based upon.",
|
|
24
|
+
"$ref": "sample.json#properties/cimac_id"
|
|
25
|
+
},
|
|
26
|
+
"npx_run_file": {
|
|
27
|
+
"$ref": "artifacts/artifact_parquet.json",
|
|
28
|
+
"$comment": "Parquet file of the overall run the sample was in."
|
|
29
|
+
},
|
|
30
|
+
"instrument": {
|
|
31
|
+
"description": "Instrument used for the Olink HT assay.",
|
|
32
|
+
"type": "string"
|
|
33
|
+
},
|
|
34
|
+
"npx_manager_version": {
|
|
35
|
+
"description": "Version of NPX manager used for the analysis.",
|
|
36
|
+
"type": "string"
|
|
37
|
+
},
|
|
38
|
+
"comments": {
|
|
39
|
+
"description": "Comments on the Olink HT assay sample.",
|
|
40
|
+
"type": "string"
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"properties": {
|
|
46
|
+
"assay_creator": {
|
|
47
|
+
"$ref": "assays/components/assay_core.json#properties/assay_creator"
|
|
48
|
+
},
|
|
49
|
+
"batch_id": {
|
|
50
|
+
"description": "Batch identification number. Unique to every upload.",
|
|
51
|
+
"type": "string"
|
|
52
|
+
},
|
|
53
|
+
"optional_id": {
|
|
54
|
+
"description": "User provided optional id. Currently comes from CIDC Submission ID",
|
|
55
|
+
"type": "string"
|
|
56
|
+
},
|
|
57
|
+
"panel": {
|
|
58
|
+
"description": "Panel used for the assay.",
|
|
59
|
+
"type": "string"
|
|
60
|
+
},
|
|
61
|
+
"assay_panel_lot": {
|
|
62
|
+
"description": "Lot number of the assay panel.",
|
|
63
|
+
"type": "string"
|
|
64
|
+
},
|
|
65
|
+
"study_level_combined_file": {
|
|
66
|
+
"$comment": "Parquet file of the study level run.",
|
|
67
|
+
"$ref": "artifacts/artifact_parquet.json"
|
|
68
|
+
},
|
|
69
|
+
"study_level_combined_npx_manager_version": {
|
|
70
|
+
"description": "Version of NPX manager used for the analysis.",
|
|
71
|
+
"type": "string"
|
|
72
|
+
},
|
|
73
|
+
"batch_level_combined_file": {
|
|
74
|
+
"$comment": "Parquet file of the batch level run.",
|
|
75
|
+
"$ref": "artifacts/artifact_parquet.json"
|
|
76
|
+
},
|
|
77
|
+
"batch_level_combined_npx_manager_version": {
|
|
78
|
+
"description": "Version of NPX manager used for the analysis.",
|
|
79
|
+
"type": "string"
|
|
80
|
+
},
|
|
81
|
+
"records": {
|
|
82
|
+
"type": "array",
|
|
83
|
+
"description": "A single data record from an Olink HT assay.",
|
|
84
|
+
"items": {
|
|
85
|
+
"$ref": "assays/olink_ht_assay.json#definitions/record"
|
|
86
|
+
},
|
|
87
|
+
"mergeStrategy": "append"
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"required": [
|
|
91
|
+
"assay_creator",
|
|
92
|
+
"batch_id",
|
|
93
|
+
"panel",
|
|
94
|
+
"assay_panel_lot",
|
|
95
|
+
"study_level_combined_file",
|
|
96
|
+
"study_level_combined_npx_manager_version",
|
|
97
|
+
"batch_level_combined_file",
|
|
98
|
+
"batch_level_combined_npx_manager_version"
|
|
99
|
+
]
|
|
100
|
+
}
|