-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathapischema.json
1172 lines (1172 loc) · 52.2 KB
/
apischema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{
"swagger": "2.0",
"info": {
"title": "phenopackets",
"description": "",
"version": "1"
},
"paths": {
"/api/v1/phenopacket": {
"get": {
"responses": {
"200": {
"schema": {
"$ref": "#/definitions/org.phenopackets.schema.v2.Phenopacket"
}
}
},
"parameters": [
{
"name": "hash",
"in": "query",
"description": "ID of phenopacket to return",
"required": true,
"schema": {
"type": "string"
}
}
]
},
"post": {
"requestBody": {
"description": "Phenopacket",
"schema": {
"$ref": "#/definitions/org.phenopackets.schema.v2.Phenopacket"
}
},
"parameters": [
{
"in": "body",
"name": "body",
"description": "phenopacket",
"schema": {
"$ref": "#/definitions/org.phenopackets.schema.v2.Phenopacket"
}
}
],
"responses": {
"201": {
"schema": {
"$ref": "#/definitions/org.phenopackets.schema.v2.Phenopacket"
}
}
}
}
},
"/api/v1/phenopacket/{id}": {
"get": {
"responses": {
"200": {
"schema": {
"$ref": "#/definitions/org.phenopackets.schema.v2.Phenopacket"
}
}
},
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of phenopacket to return",
"required": true,
"schema": {
"type": "string"
}
}
]
}
}
},
"definitions": {
"google.protobuf.Timestamp": {
"type": "object",
"properties": {
"seconds": {
"type": "integer",
"format": "int64"
},
"nanos": {
"type": "integer",
"format": "int32"
}
}
},
"org.phenopackets.schema.v2.Phenopacket": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "An identifier specific for this phenopacket."
},
"subject": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Individual",
"description": "The individual representing the focus of this packet - e.g. the proband in rare disease cases or cancer patient"
},
"phenotypic_features": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.PhenotypicFeature"
},
"description": "Phenotypic features relating to the subject of the phenopacket"
},
"measurements": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Measurement"
},
"description": "Quantifiable measurements related to the individual"
},
"biosamples": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Biosample"
},
"description": "Biosample(s) derived from the patient or a collection of biosamples in isolation"
},
"interpretations": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Interpretation"
}
},
"diseases": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Disease"
},
"description": "Field for disease identifiers - could be used for listing either diagnosed or suspected conditions. The\nresources using these fields should define what this represents in their context."
},
"medical_actions": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.MedicalAction"
}
},
"files": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.File"
},
"description": "Pointer to the relevant file(s) for the individual"
},
"meta_data": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.MetaData",
"description": "Structured definitions of the resources and ontologies used within the phenopacket. REQUIRED"
}
},
"description": "An anonymous phenotypic description of an individual or biosample with potential genes of interest and/or diagnoses.\n\nThis is a bundle of high-level concepts with no specifically defined relational concepts. It is expected that the\nresources sharing the phenopackets will define and enforce their own semantics and level of requirements for included\nfields."
},
"org.phenopackets.schema.v2.Family": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "An identifier specific for this family."
},
"proband": {
"$ref": "#/definitions/org.phenopackets.schema.v2.Phenopacket",
"description": "The individual representing the focus of this packet - e.g. the proband in rare disease cases or cancer patient"
},
"relatives": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.Phenopacket"
},
"description": "Individuals related in some way to the patient. For instance, the individuals may be genetically related or may\nbe members of a cohort. If this field is used, then it is expected that a pedigree will be included for\ngenetically related individuals for use cases such as genomic diagnostics. If a phenopacket is being used to\ndescribe one member of a cohort, then in general one phenopacket will be created for each of the individuals in\nthe cohort."
},
"consanguinous_parents": {
"type": "boolean",
"description": "flag to indicate that the parents of the proband are consanguinous"
},
"pedigree": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Pedigree",
"description": "The pedigree defining the relations between the proband and their relatives. Pedigree.individual_id should\nmap to the PhenoPacket.Individual.id"
},
"files": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.File"
},
"description": "Pointer to the relevant file(s) for the family. These should be files relating to one or more of the family\nmembers e.g a multi-sample VCF. Files relating exclusively to individual phenopackets should be contained in the\nPhenopacket."
},
"meta_data": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.MetaData",
"description": "Structured definitions of the resources and ontologies used within the phenopacket. REQUIRED"
}
},
"description": "Phenotype, sample and pedigree data required for a genomic diagnosis.\nEquivalent to the Genomics England InterpretationRequestRD\nhttps://github.com/genomicsengland/GelReportModels/blob/master/schemas/IDLs/org.gel.models.report.avro/5.0.0/InterpretationRequestRD.avdl"
},
"org.phenopackets.schema.v2.Cohort": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"description": {
"type": "string"
},
"members": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.Phenopacket"
}
},
"files": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.File"
},
"description": "Pointer to relevant file(s) for the cohort. Files relating exclusively to individual phenopackets should be\ncontained in the Phenopacket."
},
"meta_data": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.MetaData",
"description": "Structured definitions of the resources and ontologies used within the phenopacket. REQUIRED"
}
},
"description": "A group of individuals related in some phenotypic or genotypic aspect."
},
"org.phenopackets.schema.v2.core.OntologyClass": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "a CURIE-style identifier e.g. HP:0100024, MP:0001284, UBERON:0001690.\nThis is the primary key for the ontology class\nREQUIRED!"
},
"label": {
"type": "string",
"description": "class label, aka name. E.g. \"Abnormality of cardiovascular system\""
}
},
"description": "A class (aka term, concept) in an ontology.\nFHIR mapping: CodeableConcept (http://www.hl7.org/fhir/datatypes.html#CodeableConcept)\nsee also Coding (http://www.hl7.org/fhir/datatypes.html#Coding)"
},
"org.phenopackets.schema.v2.core.ExternalReference": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "e.g. ISBN, PMID:123456, DOI:...,\nFHIR mapping: Reference.identifier"
},
"reference": {
"type": "string",
"description": "A full or partial URL pointing to the external reference if no commonly resolvable identifier can be used in the\n`id` field\nFHIR mapping Reference.reference"
},
"description": {
"type": "string",
"description": "Human readable title or display string for the reference\nFHIR mapping: Reference.display"
}
},
"description": "FHIR mapping: Reference (https://www.hl7.org/fhir/references.html)"
},
"org.phenopackets.schema.v2.core.Evidence": {
"type": "object",
"properties": {
"evidence_code": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "The encoded evidence type using, for example the Evidence & Conclusion Ontology (ECO - http://purl.obolibrary.org/obo/eco.owl)\nFHIR mapping: Condition.evidence.code"
},
"reference": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.ExternalReference",
"description": "FHIR mapping: Condition.evidence.detail"
}
},
"description": "FHIR mapping: Condition.evidence (https://www.hl7.org/fhir/condition-definitions.html#Condition.evidence)"
},
"org.phenopackets.schema.v2.core.Procedure": {
"type": "object",
"properties": {
"code": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "FHIR mapping: Procedure.code"
},
"body_site": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "FHIR mapping: Procedure.bodySite"
},
"performed": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeElement",
"description": "When the procedure was performed."
}
},
"description": "A clinical procedure performed on a subject. By preference a single concept to indicate both the procedure and the\nbody site should be used. In cases where this is not possible, the body site should be indicated using a separate\nontology class.\ne.g.\n{\"code\":{\"NCIT:C51585\": \"Biopsy of Soft Palate\"}}\n{\"code\":{\"NCIT:C28743\": \"Punch Biopsy\"}, \"body_site\":{\"UBERON:0003403\": \"skin of forearm\"}} - a punch biopsy of the skin from the forearm\nFHIR mapping: Procedure (https://www.hl7.org/fhir/procedure.html)"
},
"org.phenopackets.schema.v2.core.GestationalAge": {
"type": "object",
"properties": {
"weeks": {
"type": "integer",
"format": "int32"
},
"days": {
"type": "integer",
"format": "int32"
}
}
},
"org.phenopackets.schema.v2.core.Age": {
"type": "object",
"properties": {
"iso8601duration": {
"type": "string",
"description": "The :ref:`ISO 8601<metadata_date_time>` age of this object as ISO8601\nduration or time intervals. e.g. P40Y10M05D)"
}
},
"description": "See http://build.fhir.org/datatypes and http://build.fhir.org/condition-definitions.html#Condition.onset_x_\nIn FHIR this is represented as a UCUM measurement - http://unitsofmeasure.org/trac/"
},
"org.phenopackets.schema.v2.core.AgeRange": {
"type": "object",
"properties": {
"start": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Age"
},
"end": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Age"
}
}
},
"org.phenopackets.schema.v2.core.TimeInterval": {
"type": "object",
"properties": {
"start": {
"$ref": "#/definitions/google.protobuf.Timestamp"
},
"end": {
"$ref": "#/definitions/google.protobuf.Timestamp"
}
}
},
"org.phenopackets.schema.v2.core.TimeElement": {
"type": "object",
"properties": {
"gestational_age": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.GestationalAge"
},
"age": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Age"
},
"age_range": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.AgeRange"
},
"ontology_class": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass"
},
"timestamp": {
"$ref": "#/definitions/google.protobuf.Timestamp"
},
"interval": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeInterval"
}
}
},
"org.phenopackets.schema.v2.core.File": {
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "URI for the file e.g. file://data/genomes/file1.vcf.gz or https://opensnp.org/data/60.23andme-exome-vcf.231?1341012444"
},
"individual_to_file_identifiers": {
"type": "string",
"description": "A map of identifiers mapping an individual to a sample in the file. The key values must correspond to the\nIndividual::id for the individuals in the message, the values must map to the samples in the file."
},
"file_attributes": {
"type": "string",
"description": "Map of attributes describing the file. For example the File format or genome assembly would be defied here. For\ngenomic data files there MUST be a 'genomeAssembly' key."
}
}
},
"org.phenopackets.schema.v2.core.Biosample": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The Biosample id This is unique in the\ncontext of the server instance.\nARGO mapping specimen::submitter_specimen_id"
},
"individual_id": {
"type": "string",
"description": "The id of the individual this biosample was derived from.\nARGO mapping specimen::submitter_donor_id"
},
"derived_from_id": {
"type": "string",
"description": "The id of the parent biosample this biosample was derived from."
},
"description": {
"type": "string",
"description": "The biosample's description. This attribute contains human readable text.\nThe \"description\" attributes should not contain any structured data."
},
"sampled_tissue": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "UBERON class describing the tissue from which the specimen was collected.\nPDX-MI mapping: 'Specimen tumor tissue'\nFHIR mapping: Specimen.type\nARGO mapping sample_registration::specimen_tissue_source"
},
"sample_type": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "Recommended use of EFO term to describe the sample.\ne.g. Amplified DNA, ctDNA, Total RNA, Lung tissue, Cultured cells...\nARGO mapping sample_registration::sample_type"
},
"phenotypic_features": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.PhenotypicFeature"
},
"description": "Phenotypic characteristics of the BioSample, for example histological findings of a biopsy."
},
"measurements": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Measurement"
}
},
"taxonomy": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "NCBI taxonomic identifier (NCBITaxon) of the sample e.g. NCBITaxon:9606"
},
"time_of_collection": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeElement",
"description": "An TimeElement describing either the age of the individual this biosample was\nderived from at the time of collection, or the time itself.\nSee http://build.fhir.org/datatypes"
},
"histological_diagnosis": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "This is the pathologist’s diagnosis and may often represent a refinement of the clinical diagnosis given in the\nPatient/Clinical module. Should use the same terminology as diagnosis, but represent the pathologist’s findings.\nNormal samples would be tagged with the term \"NCIT:C38757\", \"Negative Finding\"\nARGO mapping specimen::tumour_histological_type"
},
"tumor_progression": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "Is the specimen tissue from the primary tumor, a metastasis or a recurrence?\nMost likely a child term of NCIT:C7062 (Neoplasm by Special Category)\nNCIT:C3677 (Benign Neoplasm)\nNCIT:C84509 (Primary Malignant Neoplasm)\nNCIT:C95606 (Second Primary Malignant Neoplasm)\nNCIT:C3261 (Metastatic Neoplasm)\nNCIT:C4813 (Recurrent Malignant Neoplasm)"
},
"tumor_grade": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "Potentially a child term of NCIT:C28076 (Disease Grade Qualifier) or equivalent\nSee https://www.cancer.gov/about-cancer/diagnosis-staging/prognosis/tumor-grade-fact-sheet"
},
"pathological_stage": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "ARGO mapping specimen::pathological_tumour_staging_system\nARGO mapping specimen::pathological_stage_group"
},
"pathological_tnm_finding": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass"
},
"description": "ARGO mapping specimen::pathological_t_category\nARGO mapping specimen::pathological_n_category\nARGO mapping specimen::pathological_m_category"
},
"diagnostic_markers": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass"
},
"description": "Clinically relevant bio markers. Most of the assays such as IHC are covered by the NCIT under the sub-hierarchy\nNCIT:C25294 (Laboratory Procedure).\ne.g. NCIT:C68748 (HER2/Neu Positive), NCIT:C131711 (Human Papillomavirus-18 Positive)"
},
"procedure": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Procedure",
"description": "Clinical procedure performed on the subject in order to extract the biosample.\nARGO mapping specimen::specimen_anatomic_location - Procedure::body_site\nARGO mapping specimen::specimen_acquisition_interval - Procedure::time_performed"
},
"files": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.File"
},
"description": "Pointer to the relevant file(s) for the biosample. Files relating to the entire individual e.g. a germline exome/genome\nshould be associated with the Phenopacket rather than the Biosample it was derived from."
},
"material_sample": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "This element can be used to specify the status of the sample. For instance, a status may be used as a normal\ncontrol, often in combination with another sample that is thought to contain a pathological finding.\nWe recommend use of ontology terms such as:\nEFO:0009654 (reference sample) or EFO:0009655 (abnormal sample)\nARGO mapping sample_registration::tumour_normal_designation"
},
"sample_processing": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "Field to represent how the sample was processed.\nARGO mapping specimen::specimen_processing"
},
"sample_storage": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "Field to represent how the sample was stored\nARGO mapping specimen::specimen_storage"
}
},
"description": "A Biosample refers to a unit of biological material from which the substrate\nmolecules (e.g. genomic DNA, RNA, proteins) for molecular analyses (e.g.\nsequencing, array hybridisation, mass-spectrometry) are extracted. Examples\nwould be a tissue biopsy, a single cell from a culture for single cell genome\nsequencing or a protein fraction from a gradient centrifugation.\nSeveral instances (e.g. technical replicates) or types of experiments (e.g.\ngenomic array as well as RNA-seq experiments) may refer to the same Biosample.\nFHIR mapping: Specimen (http://www.hl7.org/fhir/specimen.html)."
},
"org.phenopackets.schema.v2.core.Disease": {
"type": "object",
"properties": {
"term": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "The identifier of this disease e.g. MONDO:0007043, OMIM:101600, Orphanet:710, DOID:14705 (note these are all equivalent)\nARGO mapping primary_diagnosis::submitter_primary_diagnosis_id"
},
"excluded": {
"type": "boolean",
"description": "Flag to indicate whether the disease was observed or not. Default is 'false', in other words the disease was\nobserved. Therefore it is only required in cases to indicate that the disease was looked for, but found to be\nabsent.\nMore formally, this modifier indicates the logical negation of the OntologyClass used in the 'term' field.\n*CAUTION* It is imperative to check this field for correct interpretation of the disease!"
},
"onset": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeElement",
"description": "The onset of the disease. The values of this will come from the HPO onset hierarchy\ni.e. subclasses of HP:0003674\nFHIR mapping: Condition.onset\nARGO mapping primary_diagnosis::age_at_diagnosis"
},
"resolution": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeElement"
},
"disease_stage": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass"
},
"description": "Disease staging, the extent to which a disease has developed.\nFor cancers, see https://www.cancer.gov/about-cancer/diagnosis-staging/staging\nValid values include child terms of NCIT:C28108 (Disease Stage Qualifier)\nARGO mapping primary_diagnosis::clinical_tumour_staging_system\nARGO mapping primary_diagnosis::clinical_stage_group"
},
"clinical_tnm_finding": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass"
},
"description": "Cancer findings in the TNM system that is relevant to the diagnosis of cancer.\nSee https://www.cancer.gov/about-cancer/diagnosis-staging/staging\nValid values include child terms of NCIT:C48232 (Cancer TNM Finding)\nARGO mapping primary_diagnosis::clinical_t_category\nARGO mapping primary_diagnosis::clinical_n_category\nARGO mapping primary_diagnosis::clinical_m_category"
},
"primary_site": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "The text term used to describe the primary site of disease, as categorized by the World Health Organization's\n(WHO) International Classification of Diseases for Oncology (ICD-O). This categorization groups cases into general"
},
"laterality": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "The term used to indicate laterality of diagnosis, if applicable. (Codelist reference: NCI CDE: 4122391)"
}
},
"description": "Message to indicate a disease (diagnosis) and its recorded onset."
},
"org.phenopackets.schema.v2.core.Individual": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "An identifier for the individual. This must be unique within the record.\nARGO mapping donor::submitter_donor_id"
},
"alternate_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "An optional list of alternative identifiers for this individual. This field is provided\nfor the convenience of users who may have multiple mappings to an individual which they need to track."
},
"date_of_birth": {
"$ref": "#/definitions/google.protobuf.Timestamp",
"description": "The date of birth of the individual as an ISO8601 UTC timestamp - rounded down to the closest known\nyear/month/day/hour/minute\ne.g. \"2018-03-01T00:00:00Z\" for someone born on an unknown day in March 2018\nor \"2018-01-01T00:00:00Z\" for someone born on an unknown day in 2018\nor empty if unknown/ not stated."
},
"time_at_last_encounter": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeElement",
"description": "An TimeElement object describing the age of the individual at the last time of collection. The Age object allows the encoding\nof the age either as ISO8601 duration or time interval (preferred), or as ontology term object.\nSee http://build.fhir.org/datatypes"
},
"vital_status": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.VitalStatus",
"description": "Vital status of the individual. If not present it is assumed that the individual is alive. If present it will\ndefault to 'false' i.e. the individual was alive when the data was collected.\nARGO mapping donor::vital_status"
},
"sex": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Sex",
"description": "The phenotypic sex of the individual\nARGO mapping sample_registration::gender (this is complicated as ARGO only have male/female/other which maps to the phenopacket Sex field)"
},
"karyotypic_sex": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.KaryotypicSex",
"description": "The karyotypic sex of the individual"
},
"gender": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "Self-identified gender"
},
"taxonomy": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "NCBI taxonomic identifier NCBITaxon e.g. NCBITaxon:9606 or NCBITaxon:1337\nFor resources where there may be more than one organism being studied it is advisable to indicate the taxonomic\nidentifier of that organism, to its most specific level"
}
},
"description": "An individual (or subject) typically corresponds to an individual human or another organism.\nFHIR mapping: Patient (https://www.hl7.org/fhir/patient.html)."
},
"org.phenopackets.schema.v2.core.VitalStatus": {
"type": "object",
"properties": {
"status": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.VitalStatus.Status"
},
"time_of_death": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeElement"
},
"cause_of_death": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "ARGO mapping donor::cause_of_death"
},
"survival_time_in_days": {
"type": "integer",
"format": "int32",
"description": "ARGO mapping donor::survival_time"
}
}
},
"org.phenopackets.schema.v2.core.Sex": {
"type": "number",
"enum": [
0,
1,
2,
3
],
"description": "0 - UNKNOWN_SEX // Not assessed / available.\n1 - FEMALE // Female\n2 - MALE // Male\n3 - OTHER_SEX // It is not possible, to accurately assess the applicability of MALE/FEMALE."
},
"org.phenopackets.schema.v2.core.KaryotypicSex": {
"type": "number",
"enum": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"description": "0 - UNKNOWN_KARYOTYPE \n1 - XX \n2 - XY \n3 - XO \n4 - XXY \n5 - XXX \n6 - XXYY \n7 - XXXY \n8 - XXXX \n9 - XYY \n10 - OTHER_KARYOTYPE "
},
"org.phenopackets.schema.v2.core.Interpretation": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "id of the interpretation"
},
"progress_status": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Interpretation.ProgressStatus"
},
"diagnosis": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Diagnosis",
"description": "The diagnosis made in this interpretation"
},
"summary": {
"type": "string"
}
}
},
"org.phenopackets.schema.v2.core.Diagnosis": {
"type": "object",
"properties": {
"disease": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "The disease/condition assigned to the diagnosis.Details about this disease may be contained in the `diseases`\nfield in the Phenopacket."
},
"genomic_interpretations": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.GenomicInterpretation"
},
"description": "genomic features containing the status of their contribution towards the diagnosis"
}
}
},
"org.phenopackets.schema.v2.core.GenomicInterpretation": {
"type": "object",
"properties": {
"subject_or_biosample_id": {
"type": "string",
"description": "identifier for the subject of the interpretation. This MUST be the individual id or a biosample id of the\nenclosing phenopacket."
},
"interpretation_status": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.GenomicInterpretation.InterpretationStatus"
},
"gene": {},
"variant_interpretation": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.VariantInterpretation"
}
},
"description": "A statement about the contribution of a genomic element towards the observed phenotype. Note that this does not intend\nto encode any knowledge or results of specific computations."
},
"org.phenopackets.schema.v2.core.AcmgPathogenicityClassification": {
"type": "number",
"enum": [
0,
1,
2,
3,
4,
5
],
"description": "0 - NOT_PROVIDED \n1 - BENIGN \n2 - LIKELY_BENIGN \n3 - UNCERTAIN_SIGNIFICANCE \n4 - LIKELY_PATHOGENIC \n5 - PATHOGENIC "
},
"org.phenopackets.schema.v2.core.TherapeuticActionability": {
"type": "number",
"enum": [
0,
1,
2
],
"description": "0 - UNKNOWN_ACTIONABILITY \n1 - NOT_ACTIONABLE \n2 - ACTIONABLE "
},
"org.phenopackets.schema.v2.core.VariantInterpretation": {
"type": "object",
"properties": {
"acmg_pathogenicity_classification": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.AcmgPathogenicityClassification"
},
"therapeutic_actionability": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TherapeuticActionability"
},
"variation_descriptor": {}
}
},
"org.phenopackets.schema.v2.core.Measurement": {
"type": "object",
"properties": {
"description": {
"type": "string",
"description": "Free-text description of the feature. Note this is not a acceptable place to document/describe the phenotype -\nthe type and onset etc... fields should be used for this purpose."
},
"assay": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "An ontology class which describes the assay used to produce the measurement.\nFor example \"body temperature\" (CMO:0000015) or\n\"Platelets [#/volume] in Blood\" (LOINC:26515-7)\nFHIR mapping: Observation.code"
},
"value": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Value"
},
"complex_value": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.ComplexValue"
},
"time_observed": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeElement",
"description": "The time at which the measurement was made"
},
"procedure": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Procedure",
"description": "Clinical procedure performed on the subject in order to produce the measurement."
}
},
"description": "FHIR mapping: Observation (https://www.hl7.org/fhir/observation.html)"
},
"org.phenopackets.schema.v2.core.Value": {
"type": "object",
"properties": {
"quantity": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Quantity"
},
"ontology_class": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "for use with things such as categories 'red', 'yellow' or 'absent'/'present'"
}
}
},
"org.phenopackets.schema.v2.core.ComplexValue": {
"type": "object",
"properties": {
"typed_quantities": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TypedQuantity"
},
"description": "The quantities required to fully describe the complex value. For example the systolic and diastolic blood pressure\nquantities"
}
}
},
"org.phenopackets.schema.v2.core.Quantity": {
"type": "object",
"properties": {
"unit": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "For instance, NCIT subhierarchy, Unit of Measure (Code C25709), https://www.ebi.ac.uk/ols/ontologies/uo"
},
"value": {
"type": "number",
"format": "double",
"description": "the value of the quantity in the units e.g. 2.0 mg"
},
"reference_range": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.ReferenceRange",
"description": "Reference range for the quantity\ne.g. The normal range of platelets is 150,000 to 450,000 platelets/uL."
}
}
},
"org.phenopackets.schema.v2.core.TypedQuantity": {
"type": "object",
"properties": {
"type": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "e.g. diastolic, systolic"
},
"quantity": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Quantity",
"description": "e.g. mm Hg"
}
},
"description": "For complex measurements, such as blood pressure where more than one component quantity is required to describe the\nmeasurement"
},
"org.phenopackets.schema.v2.core.ReferenceRange": {
"type": "object",
"properties": {
"unit": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass"
},
"low": {
"type": "number",
"format": "double"
},
"high": {
"type": "number",
"format": "double"
}
}
},
"org.phenopackets.schema.v2.core.MedicalAction": {
"type": "object",
"properties": {
"procedure": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Procedure"
},
"treatment": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Treatment"
},
"radiation_therapy": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.RadiationTherapy"
},
"therapeutic_regimen": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TherapeuticRegimen"
},
"treatment_target": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "The condition or disease that this treatment was intended to address.\nFHIR mapping Procedure::reasonCode"
},
"treatment_intent": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "Whether the intention of the treatment was curative, palliative,\nARGO mapping treatment::treatment_intent"
},
"response_to_treatment": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "ARGO mapping treatment::response_to_treatment"
},
"adverse_events": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass"
},
"description": "ARGO mapping treatment::adverse_events"
},
"treatment_termination_reason": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "ARGO mapping treatment::treatment_outcome"
}
},
"description": "medication, procedure, other actions taken for clinical management"
},
"org.phenopackets.schema.v2.core.Treatment": {
"type": "object",
"properties": {
"agent": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "for instance, DrugCentral, RxNorm Drugbank concept"
},
"route_of_administration": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "For instance, NCIT subhierarchy: Route of Administration (Code C38114)"
},
"dose_intervals": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.DoseInterval"
}
},
"drug_type": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.DrugType"
},
"cumulative_dose": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Quantity",
"description": "ARGO mapping chemotherapy::cumulative_drug_dosage"
}
},
"description": "treatment with an agent, such as a drug"
},
"org.phenopackets.schema.v2.core.DoseInterval": {
"type": "object",
"properties": {
"quantity": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Quantity"
},
"schedule_frequency": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass"
},
"interval": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeInterval"
}
},
"description": "e.g. 50mg/ml 3 times daily for two weeks"
},
"org.phenopackets.schema.v2.core.DrugType": {
"type": "number",
"enum": [
0,
1,
2,
3
],
"description": "0 - UNKNOWN_DRUG_TYPE \n1 - PRESCRIPTION \n2 - EHR_MEDICATION_LIST \n3 - ADMINISTRATION_RELATED_TO_PROCEDURE "
},
"org.phenopackets.schema.v2.core.RadiationTherapy": {
"type": "object",
"properties": {
"modality": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "The modality of radiation therapy (e.g., electron, photon,…). REQUIRED.\nARGO mapping radiation::radiation_therapy_modality"
},
"body_site": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass",
"description": "The anatomical site where radiation therapy was administered. REQUIRED.\nARGO mapping radiation::anatomical_site_irradiated"
},
"dosage": {
"type": "integer",
"format": "int32",
"description": "The total dose given in units of Gray (Gy). REQUIRED.\nARGO mapping radiation::radiation_therapy_dosage"
},
"fractions": {
"type": "integer",
"format": "int32",
"description": "The total number of fractions delivered as part of treatment. REQUIRED.\nARGO mapping radiation::radiation_therapy_fractions"
}
},
"description": "RadiationTherapy"
},
"org.phenopackets.schema.v2.core.TherapeuticRegimen": {
"type": "object",
"properties": {
"external_reference": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.ExternalReference"
},
"ontology_class": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.OntologyClass"
},
"start_time": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeElement",
"description": "possibly undefined;"
},
"end_time": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TimeElement",
"description": "end time can be empty which would indicate ongoing"
},
"regimen_status": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.TherapeuticRegimen.RegimenStatus"
}
}
},
"org.phenopackets.schema.v2.core.MetaData": {
"type": "object",
"properties": {
"created": {
"$ref": "#/definitions/google.protobuf.Timestamp",
"description": "ISO8601 UTC timestamp for when this phenopacket was created in ISO \"2018-03-01T00:00:00Z\""
},
"created_by": {
"type": "string",
"description": "some kind of identifier for the contributor/ program\nARGO sample_registration::program_id"
},
"submitted_by": {
"type": "string",
"description": "information about the person/organisation/network that has submitted this phenopacket"
},
"resources": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Resource"
},
"description": "a listing of the ontologies and resources referenced in the phenopacket"
},
"updates": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.Update"
},
"description": "An OPTIONAL list of Updates to the phenopacket."
},
"phenopacket_schema_version": {
"type": "string",
"description": "phenopacket-schema-version used to create this phenopacket"
},
"external_references": {
"type": "array",
"items": {
"$ref": "#/definitions/org.phenopackets.schema.v2.core.ExternalReference"
},
"description": "External identifiers for this message. These are considered different representation of the same record, not\nrecords which are in some other relation with the record at hand. For example this might be a PubMed reference\nto a study in which the individuals are reported."
}
}
},
"org.phenopackets.schema.v2.core.Resource": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "for OBO Ontologies, the value of this string MUST always be the official\nOBO ID, which is always equivalent to the ID prefix in lower case.\nExamples: hp, go, mp, mondo\nConsult http://obofoundry.org for a complete list\nFor other ontologies (e.g. SNOMED), use the prefix in identifiers.org"
},
"name": {
"type": "string",
"description": "e.g. The Human Phenotype Ontology\nfor OBO Ontologies, the value of this string SHOULD be the same as the title\nfield on http://obofoundry.org\nhowever, this field is purely for information purposes and software\nshould not encode any assumptions"
},
"url": {
"type": "string",
"description": "For OBO ontologies, this should always be the PURL, e.g.\nhttp://purl.obolibrary.org/obo/hp.owl, http://purl.obolibrary.org/obo/hp.obo"
},
"version": {
"type": "string",
"description": "for OBO ontologies, this should be the versionIRI"
},
"namespace_prefix": {