diff --git a/MV64e.MTB.Test/TestData/mv64e-mtb-fake-patient.json b/MV64e.MTB.Test/TestData/mv64e-mtb-fake-patient.json index 94ec8ad..5895be5 100644 --- a/MV64e.MTB.Test/TestData/mv64e-mtb-fake-patient.json +++ b/MV64e.MTB.Test/TestData/mv64e-mtb-fake-patient.json @@ -1 +1,2606 @@ -{"patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","gender":{"code":"male","display":"Männlich","system":"Gender"},"birthDate":"1982-12-20","dateOfDeath":"2016-12-20","healthInsurance":{"extId":{"value":"aok-ik","system":"IK"},"display":"AOK","type":"Organization"},"age":{"value":34,"unit":"Years"},"vitalStatus":{"code":"deceased","display":"Verstorben","system":"dnpm-dip/patient/vital-status"}},"episodesOfCare":[{"id":"0a9c7aa4-2d50-4798-9903-a3e378e4cf47","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"period":{"start":"2024-06-05"},"diagnoses":[{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","type":"MTBDiagnosis"}]}],"diagnoses":[{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"recordedOn":"2013-07-20","code":{"code":"C72.8","display":"Bösartige Neubildung: Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","system":"http://fhir.de/CodeSystem/bfarm/icd-10-gm","version":"2025"},"topography":{"code":"C72.8","display":"Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","system":"urn:oid:2.16.840.1.113883.6.43.1","version":"Zweite Revision"},"tumorGrade":{"code":"G3","display":"G3 – schlecht differenziert","system":"dnpm-dip/mtb/tumor-grade"},"whoGrading":{"code":"2","display":"Diffuse astrocytoma","system":"dnpm-dip/mtb/who-grading-cns-tumors","version":"2021"},"stageHistory":[{"stage":{"code":"local","display":"Lokal","system":"dnpm-dip/mtb/diagnosis/tumor-spread"},"date":"2024-12-05"}],"guidelineTreatmentStatus":{"code":"non-exhausted","display":"Leitlinien nicht ausgeschöpft","system":"dnpm-dip/diagnosis/guideline-therapy/status"}}],"guidelineTherapies":[{"id":"81766541-269b-40ce-87fb-67d7119f1f7c","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"indication":{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","display":"Bösartige Neubildung: Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","type":"MTBDiagnosis"},"therapyLine":7,"recordedOn":"2024-12-05","status":{"code":"stopped","display":"Abgebrochen","system":"dnpm-dip/therapy/status"},"statusReason":{"code":"progression","display":"Progression","system":"dnpm-dip/therapy/status-reason"},"period":{"start":"2023-07-05","end":"2023-11-22"},"medication":[{"code":"L01FX23","display":"Tisotumab vedotin","system":"http://fhir.de/CodeSystem/bfarm/atc","version":"2024"}],"notes":"Notes on the therapy..."}],"guidelineProcedures":[{"id":"a985be3c-5fd4-487a-8bcf-84e486aeaaed","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"indication":{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","display":"Bösartige Neubildung: Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","type":"MTBDiagnosis"},"code":{"code":"nuclear-medicine","display":"Nuklearmedizinische Therapie","system":"dnpm-dip/mtb/procedure/type"},"status":{"code":"on-going","display":"Laufend","system":"dnpm-dip/therapy/status"},"statusReason":{"code":"medical-reason","display":"Medizinische Gründe","system":"dnpm-dip/therapy/status-reason"},"therapyLine":2,"recordedOn":"2024-12-05","period":{"start":"2024-06-05"},"notes":"Notes on the therapy..."}],"performanceStatus":[{"id":"a72e7813-e11b-4191-9d60-a9798ba35c6d","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"effectiveDate":"2024-12-05","value":{"code":"3","display":"ECOG 3","system":"ECOG-Performance-Status"}}],"specimens":[{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"diagnosis":{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","type":"MTBDiagnosis"},"type":{"code":"cryo-frozen","display":"Cryo-frozen","system":"dnpm-dip/mtb/tumor-specimen/type"},"collection":{"date":"2024-12-05","method":{"code":"biopsy","display":"Biopsie","system":"dnpm-dip/mtb/tumor-specimen/collection/method"},"localization":{"code":"primary-tumor","display":"Primärtumor","system":"dnpm-dip/mtb/tumor-specimen/collection/localization"}}}],"histologyReports":[{"id":"e0e30beb-d4f2-4b40-8cfc-7d2e7f20eaee","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"specimen":{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","type":"TumorSpecimen"},"issuedOn":"2024-12-05","results":{"tumorMorphology":{"id":"86ff597d-6940-497f-9171-3b66fe892c9f","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"specimen":{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","type":"TumorSpecimen"},"value":{"code":"8034/3","display":"Polygonalzelliges Karzinom","system":"urn:oid:2.16.840.1.113883.6.43.1","version":"Zweite Revision"},"notes":"Notes..."},"tumorCellContent":{"id":"6f6eb719-85cd-45ed-b53c-cf2024edf968","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"specimen":{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","type":"TumorSpecimen"},"method":{"code":"histologic","display":"Histologisch","system":"dnpm-dip/mtb/tumor-cell-content/method"},"value":0.10858877664379252}}}],"ihcReports":[{"id":"95bf304c-a182-4cee-acf9-449e71cf4254","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"specimen":{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","type":"TumorSpecimen"},"date":"2024-12-05","journalId":{"value":"2b4c5993-df70-451f-962e-48be062911c1"},"blockId":{"value":"b097a0e9-1d6d-402d-9aae-471c2074a36d"},"proteinExpressionResults":[{"id":"7dcbb823-24aa-4b53-af8a-fa1d612e7e03","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"protein":{"code":"HGNC:5173","display":"HRAS","system":"https://www.genenames.org/"},"value":{"code":"3+","display":"3+","system":"dnpm-dip/mtb/ihc/protein-expression/result"},"tpsScore":66,"icScore":{"code":"2","display":">= 5%","system":"dnpm-dip/mtb/ihc/protein-expression/ic-score"},"tcScore":{"code":"3","display":">= 10%","system":"dnpm-dip/mtb/ihc/protein-expression/tc-score"}},{"id":"0b2736f5-5e6d-44ea-8e54-e17257b1b932","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"protein":{"code":"HGNC:5173","display":"HRAS","system":"https://www.genenames.org/"},"value":{"code":"1+","display":"1+","system":"dnpm-dip/mtb/ihc/protein-expression/result"},"tpsScore":42,"icScore":{"code":"3","display":">= 10%","system":"dnpm-dip/mtb/ihc/protein-expression/ic-score"},"tcScore":{"code":"2","display":">= 5%","system":"dnpm-dip/mtb/ihc/protein-expression/tc-score"}},{"id":"f9583be5-bb9b-45db-93bb-edaf4311c1cc","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"protein":{"code":"HGNC:3236","display":"EGFR","system":"https://www.genenames.org/"},"value":{"code":"not-exp","display":"Nicht exprimiert","system":"dnpm-dip/mtb/ihc/protein-expression/result"},"tpsScore":3,"icScore":{"code":"3","display":">= 10%","system":"dnpm-dip/mtb/ihc/protein-expression/ic-score"},"tcScore":{"code":"1","display":">= 1%","system":"dnpm-dip/mtb/ihc/protein-expression/tc-score"}}],"msiMmrResults":[]}],"ngsReports":[{"id":"45eccf05-0689-400e-8d0b-4d3916e5992d","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"specimen":{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","type":"TumorSpecimen"},"issuedOn":"2024-12-05","sequencingType":{"code":"panel","display":"Panel","system":"dnpm-dip/ngs/sequencing-type"},"metadata":[{"kitType":"Kit Type","kitManufacturer":"Manufacturer","sequencer":"Sequencer","referenceGenome":"HG38","pipeline":"https://github.com/pipeline-project"}],"results":{"tumorCellContent":{"id":"2158a41a-47f7-433d-8bb8-e03c206fe544","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"specimen":{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","type":"TumorSpecimen"},"method":{"code":"bioinformatic","display":"Bioinformatisch","system":"dnpm-dip/mtb/tumor-cell-content/method"},"value":0.3996684912972519},"tmb":{"id":"e76fc83f-f34a-4c23-a341-e4b474e79543","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"specimen":{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","type":"TumorSpecimen"},"value":{"value":460720,"unit":"Mutations per megabase"},"interpretation":{"code":"low","display":"Niedrig","system":"dnpm-dip/mtb/ngs/tmb/interpretation"}},"brcaness":{"id":"0e7027f8-4420-4f5c-921e-5ad618e19500","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"specimen":{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","type":"TumorSpecimen"},"value":0.5,"confidenceRange":{"min":0.4,"max":0.6}},"hrdScore":{"id":"1ca6d158-c516-4e09-bf41-14274d813745","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"specimen":{"id":"4cf8e4dc-7aad-43f7-b988-06095d8dd775","type":"TumorSpecimen"},"value":0.6694837759325275,"components":{"lst":0.975584528571115,"loh":0.3550000346611628,"tai":0.7552648749927258},"interpretation":{"code":"intermediate","display":"Mittel","system":"dnpm-dip/mtb/ngs/hrd-score/interpretation"}},"simpleVariants":[{"id":"2ac9cdab-1470-420b-8202-b364d4bbd874","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"externalIds":[{"value":"25ea5aa0-de87-4ad0-8dd0-6eb722a2dd33","system":"https://www.ncbi.nlm.nih.gov/snp/"},{"value":"675918f5-b44c-4ae3-931c-8fd237fbda6f","system":"https://cancer.sanger.ac.uk/cosmic"}],"chromosome":{"code":"chr20","display":"chr20","system":"chromosome"},"gene":{"code":"HGNC:3690","display":"FGFR3","system":"https://www.genenames.org/"},"transcriptId":{"value":"75e6db4e-3690-486b-af90-3897de5858be","system":"https://www.ensembl.org/index.html"},"position":{"start":150},"altAllele":"T","refAllele":"A","dnaChange":{"code":"c.150A>T","system":"https://hgvs-nomenclature.org"},"proteinChange":{"code":"p.Gly12Cys","system":"https://hgvs-nomenclature.org"},"readDepth":19,"allelicFrequency":0.685010869061194,"interpretation":{"code":"5","display":"Pathogenic","system":"https://www.ncbi.nlm.nih.gov/clinvar/"}},{"id":"6daeb5dd-6c07-4a02-adb2-1bfcd95ff5c5","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"externalIds":[{"value":"c30785e8-8cf5-424e-87fb-2352e3281faa","system":"https://www.ncbi.nlm.nih.gov/snp/"},{"value":"d05c2209-804d-4d09-a40e-687b29fbb022","system":"https://cancer.sanger.ac.uk/cosmic"}],"chromosome":{"code":"chr8","display":"chr8","system":"chromosome"},"gene":{"code":"HGNC:5173","display":"HRAS","system":"https://www.genenames.org/"},"transcriptId":{"value":"dab28033-52de-4d24-9613-81af3766cfb4","system":"https://www.ensembl.org/index.html"},"position":{"start":64},"altAllele":"C","refAllele":"A","dnaChange":{"code":"c.64A>C","system":"https://hgvs-nomenclature.org"},"proteinChange":{"code":"p.Lys23_Val25del","system":"https://hgvs-nomenclature.org"},"readDepth":16,"allelicFrequency":0.8311864378627531,"interpretation":{"code":"2","display":"Likely benign","system":"https://www.ncbi.nlm.nih.gov/clinvar/"}},{"id":"1516de8b-454e-4a54-a6e5-345cf30c6f2b","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"externalIds":[{"value":"5dba0049-4cfe-4223-bebf-76d0abe6f709","system":"https://www.ncbi.nlm.nih.gov/snp/"},{"value":"8aaf1a47-773b-47f3-9e16-397a9d44147c","system":"https://cancer.sanger.ac.uk/cosmic"}],"chromosome":{"code":"chr1","display":"chr1","system":"chromosome"},"gene":{"code":"HGNC:21298","display":"AACS","system":"https://www.genenames.org/"},"transcriptId":{"value":"bfca3449-0c83-4aca-9ccf-38e4f7683ac4","system":"https://www.ensembl.org/index.html"},"position":{"start":146},"altAllele":"C","refAllele":"A","dnaChange":{"code":"c.146A>C","system":"https://hgvs-nomenclature.org"},"proteinChange":{"code":"p.Cys28delinsTrpVal","system":"https://hgvs-nomenclature.org"},"readDepth":9,"allelicFrequency":0.8086334871218963,"interpretation":{"code":"3","display":"Uncertain significance","system":"https://www.ncbi.nlm.nih.gov/clinvar/"}},{"id":"9419a119-7313-4374-85ab-ae02c5889be9","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"externalIds":[{"value":"4a6f7810-3760-4701-88de-56c2c15e4aa3","system":"https://www.ncbi.nlm.nih.gov/snp/"},{"value":"60158888-304f-47b0-a509-fea306c94fcd","system":"https://cancer.sanger.ac.uk/cosmic"}],"chromosome":{"code":"chr6","display":"chr6","system":"chromosome"},"gene":{"code":"HGNC:34","display":"ABCA4","system":"https://www.genenames.org/"},"transcriptId":{"value":"cffb0dd0-71df-46a8-b76d-4d26f6693e0a","system":"https://www.ensembl.org/index.html"},"position":{"start":263},"altAllele":"T","refAllele":"G","dnaChange":{"code":"c.263G>T","system":"https://hgvs-nomenclature.org"},"proteinChange":{"code":"p.(His321Leufs*3)","system":"https://hgvs-nomenclature.org"},"readDepth":8,"allelicFrequency":0.8409595330886142,"interpretation":{"code":"1","display":"Benign","system":"https://www.ncbi.nlm.nih.gov/clinvar/"}}],"copyNumberVariants":[{"id":"d6871ca0-d8f4-4486-9e4c-4005f100daf5","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"chromosome":{"code":"chr4","display":"chr4","system":"chromosome"},"startRange":{"start":16319,"end":16361},"endRange":{"start":16688,"end":16738},"totalCopyNumber":1,"relativeCopyNumber":0.9062571771396243,"cnA":0.01136986168423515,"cnB":0.9007380377937474,"reportedAffectedGenes":[{"code":"HGNC:25829","display":"ABRAXAS1","system":"https://www.genenames.org/"},{"code":"HGNC:6973","display":"MDM2","system":"https://www.genenames.org/"},{"code":"HGNC:1100","display":"BRCA1","system":"https://www.genenames.org/"},{"code":"HGNC:391","display":"AKT1","system":"https://www.genenames.org/"},{"code":"HGNC:886","display":"ATRX","system":"https://www.genenames.org/"},{"code":"HGNC:1777","display":"CDK6","system":"https://www.genenames.org/"},{"code":"HGNC:9967","display":"RET","system":"https://www.genenames.org/"},{"code":"HGNC:21298","display":"AACS","system":"https://www.genenames.org/"},{"code":"HGNC:3689","display":"FGFR2","system":"https://www.genenames.org/"},{"code":"HGNC:34","display":"ABCA4","system":"https://www.genenames.org/"},{"code":"HGNC:3236","display":"EGFR","system":"https://www.genenames.org/"}],"reportedFocality":"partial q-arm","type":{"code":"loss","display":"Loss","system":"dnpm-dip/mtb/ngs-report/cnv/type"},"copyNumberNeutralLoH":[{"code":"HGNC:33","display":"ABCA3","system":"https://www.genenames.org/"},{"code":"HGNC:11998","display":"TP53","system":"https://www.genenames.org/"},{"code":"HGNC:5173","display":"HRAS","system":"https://www.genenames.org/"},{"code":"HGNC:6973","display":"MDM2","system":"https://www.genenames.org/"},{"code":"HGNC:3690","display":"FGFR3","system":"https://www.genenames.org/"},{"code":"HGNC:391","display":"AKT1","system":"https://www.genenames.org/"},{"code":"HGNC:21298","display":"AACS","system":"https://www.genenames.org/"},{"code":"HGNC:1097","display":"BRAF","system":"https://www.genenames.org/"},{"code":"HGNC:25662","display":"AAGAB","system":"https://www.genenames.org/"},{"code":"HGNC:3942","display":"MTOR","system":"https://www.genenames.org/"},{"code":"HGNC:21597","display":"ACAD10","system":"https://www.genenames.org/"}]},{"id":"921efd94-4055-4e71-82e4-a06b67cc0325","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"chromosome":{"code":"chrY","display":"chrY","system":"chromosome"},"startRange":{"start":10433,"end":10475},"endRange":{"start":10719,"end":10769},"totalCopyNumber":1,"relativeCopyNumber":0.5236175144644951,"cnA":0.26914869021054866,"cnB":0.23749126880255889,"reportedAffectedGenes":[{"code":"HGNC:33","display":"ABCA3","system":"https://www.genenames.org/"},{"code":"HGNC:11998","display":"TP53","system":"https://www.genenames.org/"},{"code":"HGNC:3690","display":"FGFR3","system":"https://www.genenames.org/"},{"code":"HGNC:391","display":"AKT1","system":"https://www.genenames.org/"},{"code":"HGNC:76","display":"ABL1","system":"https://www.genenames.org/"},{"code":"HGNC:1777","display":"CDK6","system":"https://www.genenames.org/"},{"code":"HGNC:1097","display":"BRAF","system":"https://www.genenames.org/"},{"code":"HGNC:1100","display":"BRCA1","system":"https://www.genenames.org/"},{"code":"HGNC:9967","display":"RET","system":"https://www.genenames.org/"},{"code":"HGNC:21298","display":"AACS","system":"https://www.genenames.org/"},{"code":"HGNC:3689","display":"FGFR2","system":"https://www.genenames.org/"},{"code":"HGNC:3236","display":"EGFR","system":"https://www.genenames.org/"},{"code":"HGNC:21597","display":"ACAD10","system":"https://www.genenames.org/"}],"reportedFocality":"partial q-arm","type":{"code":"loss","display":"Loss","system":"dnpm-dip/mtb/ngs-report/cnv/type"},"copyNumberNeutralLoH":[{"code":"HGNC:1777","display":"CDK6","system":"https://www.genenames.org/"},{"code":"HGNC:6973","display":"MDM2","system":"https://www.genenames.org/"},{"code":"HGNC:3689","display":"FGFR2","system":"https://www.genenames.org/"},{"code":"HGNC:6407","display":"KRAS","system":"https://www.genenames.org/"}]},{"id":"adc6f36b-1a2e-4cc7-89c0-f7c64b565ba4","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"chromosome":{"code":"chr3","display":"chr3","system":"chromosome"},"startRange":{"start":2502,"end":2544},"endRange":{"start":3402,"end":3452},"totalCopyNumber":5,"relativeCopyNumber":0.26595729208793106,"cnA":0.007428617339384491,"cnB":0.8904149213157745,"reportedAffectedGenes":[{"code":"HGNC:25829","display":"ABRAXAS1","system":"https://www.genenames.org/"},{"code":"HGNC:6973","display":"MDM2","system":"https://www.genenames.org/"},{"code":"HGNC:1097","display":"BRAF","system":"https://www.genenames.org/"},{"code":"HGNC:391","display":"AKT1","system":"https://www.genenames.org/"},{"code":"HGNC:76","display":"ABL1","system":"https://www.genenames.org/"}],"reportedFocality":"partial q-arm","type":{"code":"high-level-gain","display":"High-level-gain","system":"dnpm-dip/mtb/ngs-report/cnv/type"},"copyNumberNeutralLoH":[{"code":"HGNC:11998","display":"TP53","system":"https://www.genenames.org/"},{"code":"HGNC:6973","display":"MDM2","system":"https://www.genenames.org/"},{"code":"HGNC:391","display":"AKT1","system":"https://www.genenames.org/"},{"code":"HGNC:3236","display":"EGFR","system":"https://www.genenames.org/"},{"code":"HGNC:18615","display":"BRAFP1","system":"https://www.genenames.org/"},{"code":"HGNC:9967","display":"RET","system":"https://www.genenames.org/"},{"code":"HGNC:3689","display":"FGFR2","system":"https://www.genenames.org/"}]},{"id":"efc5e8cd-1928-4217-84bc-9e79d44a5ee5","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"chromosome":{"code":"chr14","display":"chr14","system":"chromosome"},"startRange":{"start":44534,"end":44576},"endRange":{"start":45326,"end":45376},"totalCopyNumber":1,"relativeCopyNumber":0.9899175316498431,"cnA":0.6048797572788662,"cnB":0.6682079776039204,"reportedAffectedGenes":[{"code":"HGNC:33","display":"ABCA3","system":"https://www.genenames.org/"},{"code":"HGNC:1097","display":"BRAF","system":"https://www.genenames.org/"},{"code":"HGNC:886","display":"ATRX","system":"https://www.genenames.org/"},{"code":"HGNC:1777","display":"CDK6","system":"https://www.genenames.org/"},{"code":"HGNC:21597","display":"ACAD10","system":"https://www.genenames.org/"},{"code":"HGNC:18615","display":"BRAFP1","system":"https://www.genenames.org/"},{"code":"HGNC:1753","display":"CDH13","system":"https://www.genenames.org/"},{"code":"HGNC:3690","display":"FGFR3","system":"https://www.genenames.org/"}],"reportedFocality":"partial q-arm","type":{"code":"loss","display":"Loss","system":"dnpm-dip/mtb/ngs-report/cnv/type"},"copyNumberNeutralLoH":[{"code":"HGNC:25829","display":"ABRAXAS1","system":"https://www.genenames.org/"},{"code":"HGNC:6973","display":"MDM2","system":"https://www.genenames.org/"},{"code":"HGNC:1100","display":"BRCA1","system":"https://www.genenames.org/"},{"code":"HGNC:76","display":"ABL1","system":"https://www.genenames.org/"},{"code":"HGNC:3689","display":"FGFR2","system":"https://www.genenames.org/"}]},{"id":"58d0f9de-bf58-4727-8ede-0ad8e258c7eb","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"chromosome":{"code":"chr8","display":"chr8","system":"chromosome"},"startRange":{"start":30335,"end":30377},"endRange":{"start":31083,"end":31133},"totalCopyNumber":7,"relativeCopyNumber":0.7020221929136304,"cnA":0.053474273003236594,"cnB":0.7126880519485409,"reportedAffectedGenes":[{"code":"HGNC:11998","display":"TP53","system":"https://www.genenames.org/"},{"code":"HGNC:25829","display":"ABRAXAS1","system":"https://www.genenames.org/"},{"code":"HGNC:6973","display":"MDM2","system":"https://www.genenames.org/"},{"code":"HGNC:1753","display":"CDH13","system":"https://www.genenames.org/"},{"code":"HGNC:1097","display":"BRAF","system":"https://www.genenames.org/"},{"code":"HGNC:886","display":"ATRX","system":"https://www.genenames.org/"},{"code":"HGNC:3236","display":"EGFR","system":"https://www.genenames.org/"},{"code":"HGNC:21298","display":"AACS","system":"https://www.genenames.org/"},{"code":"HGNC:3689","display":"FGFR2","system":"https://www.genenames.org/"},{"code":"HGNC:18615","display":"BRAFP1","system":"https://www.genenames.org/"},{"code":"HGNC:6407","display":"KRAS","system":"https://www.genenames.org/"}],"reportedFocality":"partial q-arm","type":{"code":"high-level-gain","display":"High-level-gain","system":"dnpm-dip/mtb/ngs-report/cnv/type"},"copyNumberNeutralLoH":[{"code":"HGNC:33","display":"ABCA3","system":"https://www.genenames.org/"},{"code":"HGNC:5173","display":"HRAS","system":"https://www.genenames.org/"},{"code":"HGNC:25662","display":"AAGAB","system":"https://www.genenames.org/"},{"code":"HGNC:886","display":"ATRX","system":"https://www.genenames.org/"},{"code":"HGNC:1777","display":"CDK6","system":"https://www.genenames.org/"},{"code":"HGNC:21298","display":"AACS","system":"https://www.genenames.org/"},{"code":"HGNC:34","display":"ABCA4","system":"https://www.genenames.org/"},{"code":"HGNC:6407","display":"KRAS","system":"https://www.genenames.org/"}]}],"dnaFusions":[],"rnaFusions":[],"rnaSeqs":[]}}],"carePlans":[{"id":"fadc68ed-1d43-4024-93aa-7016ea49ba8a","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"indication":{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","display":"Bösartige Neubildung: Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","type":"MTBDiagnosis"},"issuedOn":"2024-12-05","statusReason":{"code":"no-target","display":"Keine Therapeutische Konsequenz","system":"dnpm-dip/mtb/careplan/status-reason"},"medicationRecommendations":[{"id":"01eca133-147d-41d8-bc9b-dab2e83cb5b4","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"indication":{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","display":"Bösartige Neubildung: Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","type":"MTBDiagnosis"},"issuedOn":"2024-12-05","levelOfEvidence":{"grading":{"code":"undefined","display":"Nicht definiert","system":"dnpm-dip/mtb/level-of-evidence/grading"},"addendums":[{"code":"is","display":"is","system":"dnpm-dip/mtb/level-of-evidence/addendum"}],"publications":[{"extId":{"value":"547348950","system":"https://pubmed.ncbi.nlm.nih.gov/"},"type":"Publication"}]},"priority":{"code":"1","display":"1","system":"dnpm-dip/therapy-recommendation/priority"},"medication":[{"code":"L01FX02","display":"Gemtuzumab ozogamicin","system":"http://fhir.de/CodeSystem/bfarm/atc","version":"2024"}],"supportingVariants":[{"id":"efc5e8cd-1928-4217-84bc-9e79d44a5ee5","display":"CNV ABCA3,ATRX,CDH13,BRAF,FGFR3,CDK6,ACAD10,BRAFP1 Loss","type":"Variant"}]},{"id":"c647ecac-4c88-4afb-8888-e71b43bd8422","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"indication":{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","display":"Bösartige Neubildung: Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","type":"MTBDiagnosis"},"issuedOn":"2024-12-05","levelOfEvidence":{"grading":{"code":"undefined","display":"Nicht definiert","system":"dnpm-dip/mtb/level-of-evidence/grading"},"addendums":[{"code":"R","display":"R","system":"dnpm-dip/mtb/level-of-evidence/addendum"}],"publications":[{"extId":{"value":"150735084","system":"https://pubmed.ncbi.nlm.nih.gov/"},"type":"Publication"}]},"priority":{"code":"2","display":"2","system":"dnpm-dip/therapy-recommendation/priority"},"medication":[{"code":"L01EX27","display":"Capivasertib","system":"http://fhir.de/CodeSystem/bfarm/atc","version":"2024"}],"supportingVariants":[{"id":"1516de8b-454e-4a54-a6e5-345cf30c6f2b","display":"SNV AACS p.Cys28delinsTrpVal","type":"Variant"}]}],"geneticCounselingRecommendation":{"id":"0ee29ee6-2507-4f15-a3db-43c8e9c7e3bc","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"issuedOn":"2024-12-05","reason":{"code":"unknown","display":"Unbekannt","system":"dnpm-dip/mtb/recommendation/genetic-counseling/reason"}},"studyEnrollmentRecommendations":[{"id":"1ea64b0f-2c90-4fde-9f73-d19a310ae165","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"reason":{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","display":"Bösartige Neubildung: Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","type":"MTBDiagnosis"},"issuedOn":"2024-12-05","levelOfEvidence":{"code":"undefined","display":"Nicht definiert","system":"dnpm-dip/mtb/level-of-evidence/grading"},"supportingVariants":[{"id":"efc5e8cd-1928-4217-84bc-9e79d44a5ee5","display":"CNV ABCA3,ATRX,CDH13,BRAF,FGFR3,CDK6,ACAD10,BRAFP1 Loss","type":"Variant"}],"studies":[{"value":"NCT:33299761","system":"NCT"}]}],"notes":"Protocol of the MTB conference..."}],"claims":[{"id":"b4cddc10-88c1-42df-ac5e-d5c7c67ccdbf","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"recommendation":{"id":"01eca133-147d-41d8-bc9b-dab2e83cb5b4","type":"MTBMedicationRecommendation"},"issuedOn":"2024-12-05","stage":{"code":"unknown","display":"Unbekannt","system":"dnpm-dip/mtb/claim/stage"}},{"id":"3474c270-a652-4cd8-82fc-8530cabb798c","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"recommendation":{"id":"c647ecac-4c88-4afb-8888-e71b43bd8422","type":"MTBMedicationRecommendation"},"issuedOn":"2024-12-05","stage":{"code":"initial-claim","display":"Erstantrag","system":"dnpm-dip/mtb/claim/stage"}}],"claimResponses":[{"id":"c967ea31-bd7f-480e-b9c8-5f86a58be6e8","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"claim":{"id":"b4cddc10-88c1-42df-ac5e-d5c7c67ccdbf","type":"Claim"},"issuedOn":"2024-12-05","status":{"code":"accepted","display":"Angenommen","system":"dnpm-dip/mtb/claim-response/status"}},{"id":"1ef676a3-842e-4473-bae2-1090f606f235","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"claim":{"id":"3474c270-a652-4cd8-82fc-8530cabb798c","type":"Claim"},"issuedOn":"2024-12-05","status":{"code":"unknown","display":"Unbekannt","system":"dnpm-dip/mtb/claim-response/status"}}],"therapies":[{"history":[{"id":"bb2f7dac-281d-419a-9562-012ba5c918d3","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"indication":{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","display":"Bösartige Neubildung: Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","type":"MTBDiagnosis"},"basedOn":{"id":"01eca133-147d-41d8-bc9b-dab2e83cb5b4","type":"MTBMedicationRecommendation"},"recordedOn":"2024-12-05","status":{"code":"on-going","display":"Laufend","system":"dnpm-dip/therapy/status"},"period":{"start":"2016-07-05","end":"2016-12-20"},"medication":[{"code":"L01FX02","display":"Gemtuzumab ozogamicin","system":"http://fhir.de/CodeSystem/bfarm/atc","version":"2024"}],"notes":"Notes on the therapy..."}]},{"history":[{"id":"5463ebc8-637f-4eb3-8884-ce4355211d6e","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"indication":{"id":"78d5b572-c3fa-4d26-8a07-302a28956b80","display":"Bösartige Neubildung: Gehirn und andere Teile des Zentralnervensystems, mehrere Teilbereiche überlappend","type":"MTBDiagnosis"},"basedOn":{"id":"c647ecac-4c88-4afb-8888-e71b43bd8422","type":"MTBMedicationRecommendation"},"recordedOn":"2024-12-05","status":{"code":"completed","display":"Abgeschlossen","system":"dnpm-dip/therapy/status"},"period":{"start":"2016-08-16","end":"2016-12-20"},"medication":[{"code":"L01EX27","display":"Capivasertib","system":"http://fhir.de/CodeSystem/bfarm/atc","version":"2024"}],"notes":"Notes on the therapy..."}]}],"responses":[{"id":"5565d5ac-dfa7-4a70-b64e-494c5be60b5b","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"therapy":{"id":"bb2f7dac-281d-419a-9562-012ba5c918d3","type":"MTBMedicationTherapy"},"effectiveDate":"2016-08-30","value":{"code":"PD","display":"Progressive Disease","system":"RECIST"}},{"id":"d51793ce-76c4-4909-b3a7-82c04a2c5846","patient":{"id":"b944f6b0-d65f-432c-9e6f-e6d3a4ea79f2","type":"Patient"},"therapy":{"id":"5463ebc8-637f-4eb3-8884-ce4355211d6e","type":"MTBMedicationTherapy"},"effectiveDate":"2016-10-18","value":{"code":"CR","display":"Complete Response","system":"RECIST"}}]} \ No newline at end of file +{ + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "gender": { + "code": "male", + "display": "Männlich", + "system": "Gender" + }, + "birthDate": "1993-08-01", + "healthInsurance": { + "type": { + "code": "GKV", + "display": "gesetzliche Krankenversicherung", + "system": "http://fhir.de/CodeSystem/versicherungsart-de-basis" + }, + "reference": { + "id": "1234567890", + "system": "https://www.dguv.de/arge-ik", + "display": "AOK", + "type": "HealthInsurance" + } + }, + "address": { + "municipalityCode": "12345" + }, + "age": { + "value": 31, + "unit": "Years" + }, + "vitalStatus": { + "code": "alive", + "display": "Lebend", + "system": "dnpm-dip/patient/vital-status" + } + }, + "episodesOfCare": [ + { + "id": "dc4d1b2c-7468-4a4a-8fbd-1b0bb645c082", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "period": { + "start": "2024-11-30" + }, + "diagnoses": [ + { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "type": "MTBDiagnosis" + } + ] + } + ], + "diagnoses": [ + { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "recordedOn": "2022-09-01", + "type": { + "history": [ + { + "value": { + "code": "main", + "display": "Hauptdiagnose", + "system": "dnpm-dip/mtb/diagnosis/type" + }, + "date": "2022-09-01" + } + ] + }, + "code": { + "code": "C57.0", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "system": "http://fhir.de/CodeSystem/bfarm/icd-10-gm", + "version": "2025" + }, + "topography": { + "code": "C57.0", + "display": "Eileiter", + "system": "urn:oid:2.16.840.1.113883.6.43.1", + "version": "Zweite Revision" + }, + "grading": { + "history": [ + { + "date": "2022-09-01", + "codes": [ + { + "code": "4", + "display": "4 = undifferenziert", + "system": "https://www.basisdatensatz.de/feld/161/grading" + }, + { + "code": "1", + "display": "Pilocytic astrocytoma", + "system": "dnpm-dip/mtb/who-grading-cns-tumors", + "version": "2021" + } + ] + } + ] + }, + "staging": { + "history": [ + { + "date": "2022-09-01", + "method": { + "code": "clinical", + "display": "Klinisch", + "system": "dnpm-dip/mtb/tumor-staging/method" + }, + "tnmClassification": { + "tumor": { + "code": "T1", + "system": "UICC" + }, + "nodes": { + "code": "N3", + "system": "UICC" + }, + "metastasis": { + "code": "M0", + "system": "UICC" + } + }, + "otherClassifications": [ + { + "code": "local", + "display": "Lokal", + "system": "dnpm-dip/mtb/diagnosis/kds-tumor-spread" + } + ] + } + ] + }, + "guidelineTreatmentStatus": { + "code": "no-guidelines-available", + "display": "Keine Leitlinien vorhanden", + "system": "dnpm-dip/mtb/diagnosis/guideline-treatment-status" + }, + "notes": [ + "Notes on the tumor diagnosis..." + ] + } + ], + "guidelineTherapies": [ + { + "id": "b63bcd3e-1bbb-425d-bd4f-03820036e249", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "therapyLine": 8, + "intent": { + "code": "X", + "display": "Keine Angabe", + "system": "dnpm-dip/therapy/intent" + }, + "category": { + "code": "S", + "display": "Sonstiges", + "system": "dnpm-dip/therapy/category" + }, + "recordedOn": "2025-05-30", + "status": { + "code": "stopped", + "display": "Abgebrochen", + "system": "dnpm-dip/therapy/status" + }, + "statusReason": { + "code": "progression", + "display": "Progression", + "system": "dnpm-dip/therapy/status-reason" + }, + "period": { + "start": "2024-05-30", + "end": "2024-08-22" + }, + "medication": [ + { + "code": "L01XX57", + "display": "Plitidepsin", + "system": "http://fhir.de/CodeSystem/bfarm/atc", + "version": "2025" + } + ], + "notes": [ + "Notes on the therapy..." + ] + }, + { + "id": "d7de61c1-a5cc-429b-9c6f-e47765828f90", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "therapyLine": 5, + "intent": { + "code": "P", + "display": "Palliativ", + "system": "dnpm-dip/therapy/intent" + }, + "category": { + "code": "S", + "display": "Sonstiges", + "system": "dnpm-dip/therapy/category" + }, + "recordedOn": "2025-05-30", + "status": { + "code": "stopped", + "display": "Abgebrochen", + "system": "dnpm-dip/therapy/status" + }, + "statusReason": { + "code": "progression", + "display": "Progression", + "system": "dnpm-dip/therapy/status-reason" + }, + "period": { + "start": "2024-02-29", + "end": "2024-10-03" + }, + "medication": [ + { + "code": "L01XX29", + "display": "Denileukindiftitox", + "system": "http://fhir.de/CodeSystem/bfarm/atc", + "version": "2025" + } + ], + "notes": [ + "Notes on the therapy..." + ] + } + ], + "guidelineProcedures": [ + { + "id": "960c989f-12f0-4592-96a8-fcb55938cd38", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "therapyLine": 3, + "intent": { + "code": "X", + "display": "Keine Angabe", + "system": "dnpm-dip/therapy/intent" + }, + "code": { + "code": "surgery", + "display": "OP", + "system": "dnpm-dip/mtb/procedure/type" + }, + "status": { + "code": "on-going", + "display": "Laufend", + "system": "dnpm-dip/therapy/status" + }, + "statusReason": { + "code": "payment-pending", + "display": "Kostenübernahme noch ausstehend", + "system": "dnpm-dip/therapy/status-reason" + }, + "recordedOn": "2025-05-30", + "period": { + "start": "2024-11-30" + }, + "notes": [ + "Notes on the therapeutic procedure..." + ] + } + ], + "performanceStatus": [ + { + "id": "2d5108a3-600c-4153-8600-0427ad00d8a9", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "effectiveDate": "2025-05-30", + "value": { + "code": "5", + "display": "ECOG 5", + "system": "ECOG-Performance-Status" + } + } + ], + "specimens": [ + { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "diagnosis": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "type": "MTBDiagnosis" + }, + "type": { + "code": "unknown", + "display": "Unbekannt", + "system": "dnpm-dip/mtb/tumor-specimen/type" + }, + "collection": { + "date": "2025-05-30", + "method": { + "code": "unknown", + "display": "Unbekannt", + "system": "dnpm-dip/mtb/tumor-specimen/collection/method" + }, + "localization": { + "code": "primary-tumor", + "display": "Primärtumor", + "system": "dnpm-dip/mtb/tumor-specimen/collection/localization" + } + } + } + ], + "priorDiagnosticReports": [ + { + "id": "c02f0997-c43f-4da0-819e-d7ae7370d78d", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "performer": { + "id": "xyz", + "display": "Molekular-Pathologie UKx", + "type": "Institute" + }, + "issuedOn": "2025-05-30", + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "type": { + "code": "karyotyping", + "display": "Karyotyping", + "system": "dnpm-dip/mtb/molecular-diagnostics/type" + }, + "results": [ + "Result of diagnostics..." + ] + } + ], + "histologyReports": [ + { + "id": "791de8a5-b766-42d5-9454-12fbfe25ad92", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "issuedOn": "2025-05-30", + "results": { + "tumorMorphology": { + "id": "699db4c1-74a1-4c0f-bc20-275f85abfd20", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "value": { + "code": "8891/0", + "display": "Epitheloides Leiomyom", + "system": "urn:oid:2.16.840.1.113883.6.43.1", + "version": "Zweite Revision" + }, + "note": "Notes..." + }, + "tumorCellContent": { + "id": "5c408779-8f1c-4c44-a3f1-0bee32a0b7f1", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "method": { + "code": "histologic", + "display": "Histologisch", + "system": "dnpm-dip/mtb/tumor-cell-content/method" + }, + "value": 0.022777185931090127 + } + } + } + ], + "ihcReports": [ + { + "id": "d913c59b-7788-4931-a24c-5a71995ee77b", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "issuedOn": "2025-05-30", + "journalId": "7f39e2f3-6b0f-486d-b2d2-a1c8c4ec0493", + "blockIds": [ + "a91d53a8-7949-4233-b710-1f1b456ff8c7" + ], + "results": { + "proteinExpression": [ + { + "id": "60538b11-9da7-4248-a878-00dbfe31cf37", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "protein": { + "code": "HGNC:34", + "display": "ABCA4", + "system": "https://www.genenames.org/" + }, + "value": { + "code": "2+", + "display": "2+", + "system": "dnpm-dip/mtb/ihc/protein-expression/result" + }, + "tpsScore": 15, + "icScore": { + "code": "3", + "display": ">= 10%", + "system": "dnpm-dip/mtb/ihc/protein-expression/ic-score" + }, + "tcScore": { + "code": "5", + "display": ">= 50%", + "system": "dnpm-dip/mtb/ihc/protein-expression/tc-score" + } + }, + { + "id": "32a8c01c-4bd7-4ae9-8835-6ba747fe1991", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "protein": { + "code": "HGNC:886", + "display": "ATRX", + "system": "https://www.genenames.org/" + }, + "value": { + "code": "not-exp", + "display": "Nicht exprimiert", + "system": "dnpm-dip/mtb/ihc/protein-expression/result" + }, + "tpsScore": 33, + "icScore": { + "code": "2", + "display": ">= 5%", + "system": "dnpm-dip/mtb/ihc/protein-expression/ic-score" + }, + "tcScore": { + "code": "5", + "display": ">= 50%", + "system": "dnpm-dip/mtb/ihc/protein-expression/tc-score" + } + }, + { + "id": "edd1cb04-8c1a-49f7-bb88-36ee576ade21", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "protein": { + "code": "HGNC:886", + "display": "ATRX", + "system": "https://www.genenames.org/" + }, + "value": { + "code": "3+", + "display": "3+", + "system": "dnpm-dip/mtb/ihc/protein-expression/result" + }, + "tpsScore": 95, + "icScore": { + "code": "2", + "display": ">= 5%", + "system": "dnpm-dip/mtb/ihc/protein-expression/ic-score" + }, + "tcScore": { + "code": "1", + "display": ">= 1%", + "system": "dnpm-dip/mtb/ihc/protein-expression/tc-score" + } + }, + { + "id": "8e7f8610-2bab-4baa-9567-98a0c71eead4", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "protein": { + "code": "HGNC:33", + "display": "ABCA3", + "system": "https://www.genenames.org/" + }, + "value": { + "code": "not-exp", + "display": "Nicht exprimiert", + "system": "dnpm-dip/mtb/ihc/protein-expression/result" + }, + "tpsScore": 81, + "icScore": { + "code": "3", + "display": ">= 10%", + "system": "dnpm-dip/mtb/ihc/protein-expression/ic-score" + }, + "tcScore": { + "code": "1", + "display": ">= 1%", + "system": "dnpm-dip/mtb/ihc/protein-expression/tc-score" + } + }, + { + "id": "845b905d-eef9-4a2c-9aff-cde382933968", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "protein": { + "code": "HGNC:1100", + "display": "BRCA1", + "system": "https://www.genenames.org/" + }, + "value": { + "code": "1+", + "display": "1+", + "system": "dnpm-dip/mtb/ihc/protein-expression/result" + }, + "tpsScore": 70, + "icScore": { + "code": "1", + "display": ">= 1%", + "system": "dnpm-dip/mtb/ihc/protein-expression/ic-score" + }, + "tcScore": { + "code": "5", + "display": ">= 50%", + "system": "dnpm-dip/mtb/ihc/protein-expression/tc-score" + } + } + ], + "msiMmr": [] + } + } + ], + "ngsReports": [ + { + "id": "c21b5bdb-47e2-4579-a0d4-7bea8f12a1ae", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "issuedOn": "2025-05-30", + "type": { + "code": "single", + "display": "Single", + "system": "dnpm-dip/ngs/type" + }, + "metadata": [ + { + "kitType": "Kit Type", + "kitManufacturer": "Manufacturer", + "sequencer": "Sequencer", + "referenceGenome": "HG38", + "pipeline": "https://github.com/pipeline-project" + } + ], + "results": { + "tumorCellContent": { + "id": "94927ed9-449d-4b20-b87b-8d30c3262cd8", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "method": { + "code": "bioinformatic", + "display": "Bioinformatisch", + "system": "dnpm-dip/mtb/tumor-cell-content/method" + }, + "value": 0.09638668241172943 + }, + "tmb": { + "id": "b50f37ba-684a-4456-baec-1b852506522e", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "value": { + "value": 111701, + "unit": "Mutations per megabase" + }, + "interpretation": { + "code": "intermediate", + "display": "Mittel", + "system": "dnpm-dip/mtb/ngs/tmb/interpretation" + } + }, + "brcaness": { + "id": "ae6d8152-2ec0-46f3-bc96-a8cdb0354dff", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "value": 0.5, + "confidenceRange": { + "min": 0.4, + "max": 0.6 + } + }, + "hrdScore": { + "id": "09b18803-9465-4cd0-8525-60d7aba52cda", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "value": 0.05766991221140638, + "components": { + "lst": 0.702408484465023, + "loh": 0.9316758294159152, + "tai": 0.27810914785699703 + }, + "interpretation": { + "code": "high", + "display": "Hoch", + "system": "dnpm-dip/mtb/ngs/hrd-score/interpretation" + } + }, + "simpleVariants": [ + { + "id": "d2209570-1391-4035-9365-765e707a7675", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "3ff51b45-bea4-4adf-a652-68e9a8eb9ba0", + "system": "https://www.ncbi.nlm.nih.gov/snp" + }, + { + "value": "d4ef6e0d-70f3-48af-9815-12add7d405fd", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "chromosome": "chr4", + "gene": { + "code": "HGNC:18615", + "display": "BRAFP1", + "system": "https://www.genenames.org/" + }, + "localization": [ + { + "code": "intergenic", + "display": "Intergenic", + "system": "dnpm-dip/variant/localization" + } + ], + "transcriptId": { + "value": "b0819774-a371-4f25-898e-0e60971a3bba", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "3", + "position": { + "start": 561 + }, + "altAllele": "T", + "refAllele": "C", + "dnaChange": "c.561C>T", + "proteinChange": "p.Trp24=/Cys", + "readDepth": 6, + "allelicFrequency": 0.7168882236398768, + "interpretation": { + "code": "3", + "display": "Uncertain significance", + "system": "https://www.ncbi.nlm.nih.gov/clinvar" + } + }, + { + "id": "0d033c43-d69b-44b3-90f6-b816180829b5", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "e91b92ac-b721-4dfe-a5fc-d39ad54537c9", + "system": "https://www.ncbi.nlm.nih.gov/snp" + }, + { + "value": "3cc72402-f627-4bbf-9468-fbb566459d81", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "chromosome": "chr17", + "gene": { + "code": "HGNC:3690", + "display": "FGFR3", + "system": "https://www.genenames.org/" + }, + "localization": [ + { + "code": "splicing-region", + "display": "splicing region", + "system": "dnpm-dip/variant/localization" + } + ], + "transcriptId": { + "value": "6512c902-f492-4951-a614-ff4801d2c308", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "2", + "position": { + "start": 193 + }, + "altAllele": "A", + "refAllele": "G", + "dnaChange": "c.193G>A", + "proteinChange": "p.Trp24=/Cys", + "readDepth": 5, + "allelicFrequency": 0.1081527557463462, + "interpretation": { + "code": "2", + "display": "Likely benign", + "system": "https://www.ncbi.nlm.nih.gov/clinvar" + } + }, + { + "id": "ea5a3264-8d84-4312-ba18-7de0da5a89b5", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "29ecbc7d-32bc-41ec-8654-4dbfb76a2333", + "system": "https://www.ncbi.nlm.nih.gov/snp" + }, + { + "value": "e14e1284-920c-429d-9893-8a027eee414c", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "chromosome": "chr1", + "gene": { + "code": "HGNC:6407", + "display": "KRAS", + "system": "https://www.genenames.org/" + }, + "localization": [ + { + "code": "intergenic", + "display": "Intergenic", + "system": "dnpm-dip/variant/localization" + } + ], + "transcriptId": { + "value": "dd7b0cca-2707-4bf7-a361-37906e36a22c", + "system": "https://www.ensembl.org" + }, + "exonId": "8", + "position": { + "start": 131 + }, + "altAllele": "G", + "refAllele": "T", + "dnaChange": "c.131T>G", + "proteinChange": "p.His4_Gln5insAla", + "readDepth": 24, + "allelicFrequency": 0.7601485607234963, + "interpretation": { + "code": "5", + "display": "Pathogenic", + "system": "https://www.ncbi.nlm.nih.gov/clinvar" + } + }, + { + "id": "5feae8bd-710c-42b6-ba52-e9a33be957b7", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "45515482-873f-46ea-818e-9b2b4dd8d389", + "system": "https://www.ncbi.nlm.nih.gov/snp" + }, + { + "value": "c49c7e81-c34d-445e-804f-d110718752e1", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "chromosome": "chr4", + "gene": { + "code": "HGNC:34", + "display": "ABCA4", + "system": "https://www.genenames.org/" + }, + "localization": [ + { + "code": "regulatory-region", + "display": "Regulatory region", + "system": "dnpm-dip/variant/localization" + } + ], + "transcriptId": { + "value": "90ed01ce-b09b-44db-87e5-f8b083664838", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "2", + "position": { + "start": 445 + }, + "altAllele": "C", + "refAllele": "A", + "dnaChange": "c.445A>C", + "proteinChange": "p.Gly2_Met46del", + "readDepth": 15, + "allelicFrequency": 0.42158645101228087, + "interpretation": { + "code": "4", + "display": "Likely pathogenic", + "system": "https://www.ncbi.nlm.nih.gov/clinvar" + } + }, + { + "id": "7748dd2f-e547-4412-996b-c8116040a5d4", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "5600f37a-7570-4177-8ca9-43f08f297c1b", + "system": "https://www.ncbi.nlm.nih.gov/snp" + }, + { + "value": "1c6569e0-a8e6-477a-956a-c95e04097143", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "chromosome": "chr3", + "gene": { + "code": "HGNC:25829", + "display": "ABRAXAS1", + "system": "https://www.genenames.org/" + }, + "localization": [ + { + "code": "coding-region", + "display": "Coding region", + "system": "dnpm-dip/variant/localization" + } + ], + "transcriptId": { + "value": "e97218d5-8e07-4516-980b-9bc3a944f5ed", + "system": "https://www.ensembl.org" + }, + "exonId": "3", + "position": { + "start": 52 + }, + "altAllele": "A", + "refAllele": "T", + "dnaChange": "c.52T>A", + "proteinChange": "p.(Glu125_Ala132delinsGlyLeuHisArgPheIleValLeu)", + "readDepth": 16, + "allelicFrequency": 0.43914773954080655, + "interpretation": { + "code": "2", + "display": "Likely benign", + "system": "https://www.ncbi.nlm.nih.gov/clinvar" + } + }, + { + "id": "c6e4a8ca-9fd5-46d6-b9c3-4fb92fa3ad7f", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "414cfb9c-1a27-49f4-89a7-20fa9b34d4c1", + "system": "https://www.ncbi.nlm.nih.gov/snp" + }, + { + "value": "029491a2-a2ec-4153-8f58-0a0643b82c7f", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "chromosome": "chr19", + "gene": { + "code": "HGNC:25829", + "display": "ABRAXAS1", + "system": "https://www.genenames.org/" + }, + "localization": [ + { + "code": "regulatory-region", + "display": "Regulatory region", + "system": "dnpm-dip/variant/localization" + } + ], + "transcriptId": { + "value": "12393377-f07e-468b-bb15-a5dd2498cd31", + "system": "https://www.ensembl.org" + }, + "exonId": "10", + "position": { + "start": 77 + }, + "altAllele": "G", + "refAllele": "C", + "dnaChange": "c.77C>G", + "proteinChange": "p.Lys23_Val25del", + "readDepth": 23, + "allelicFrequency": 0.7263541136743669, + "interpretation": { + "code": "1", + "display": "Benign", + "system": "https://www.ncbi.nlm.nih.gov/clinvar" + } + } + ], + "copyNumberVariants": [ + { + "id": "def11b75-84d6-4910-8f0a-e289326fa14c", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "chromosome": "chr17", + "localization": [ + { + "code": "intronic", + "display": "Intronic", + "system": "dnpm-dip/variant/localization" + } + ], + "startRange": { + "start": 49051, + "end": 49093 + }, + "endRange": { + "start": 49114, + "end": 49164 + }, + "totalCopyNumber": 4, + "relativeCopyNumber": 0.951841616210335, + "cnA": 0.4819056712797626, + "cnB": 0.6266734124941649, + "reportedAffectedGenes": [ + { + "code": "HGNC:33", + "display": "ABCA3", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:5173", + "display": "HRAS", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:25662", + "display": "AAGAB", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:76", + "display": "ABL1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:886", + "display": "ATRX", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:9967", + "display": "RET", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:21298", + "display": "AACS", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3689", + "display": "FGFR2", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3942", + "display": "MTOR", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3236", + "display": "EGFR", + "system": "https://www.genenames.org/" + } + ], + "reportedFocality": "partial q-arm", + "type": { + "code": "high-level-gain", + "display": "High-level-gain", + "system": "dnpm-dip/mtb/ngs-report/cnv/type" + }, + "copyNumberNeutralLoH": [ + { + "code": "HGNC:33", + "display": "ABCA3", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:5173", + "display": "HRAS", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1753", + "display": "CDH13", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1777", + "display": "CDK6", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1097", + "display": "BRAF", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:25662", + "display": "AAGAB", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1100", + "display": "BRCA1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:9967", + "display": "RET", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:21298", + "display": "AACS", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3689", + "display": "FGFR2", + "system": "https://www.genenames.org/" + } + ] + }, + { + "id": "a8702d47-5520-458e-929f-fdd2bc55fe17", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "chromosome": "chr22", + "localization": [ + { + "code": "intergenic", + "display": "Intergenic", + "system": "dnpm-dip/variant/localization" + } + ], + "startRange": { + "start": 48141, + "end": 48183 + }, + "endRange": { + "start": 48711, + "end": 48761 + }, + "totalCopyNumber": 2, + "relativeCopyNumber": 0.5067539649405646, + "cnA": 0.9335404521608939, + "cnB": 0.04708321769922241, + "reportedAffectedGenes": [ + { + "code": "HGNC:3690", + "display": "FGFR3", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1097", + "display": "BRAF", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:76", + "display": "ABL1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:18615", + "display": "BRAFP1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:9967", + "display": "RET", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:21298", + "display": "AACS", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3236", + "display": "EGFR", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:21597", + "display": "ACAD10", + "system": "https://www.genenames.org/" + } + ], + "reportedFocality": "partial q-arm", + "type": { + "code": "low-level-gain", + "display": "Low-level-gain", + "system": "dnpm-dip/mtb/ngs-report/cnv/type" + }, + "copyNumberNeutralLoH": [ + { + "code": "HGNC:33", + "display": "ABCA3", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:11998", + "display": "TP53", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:5173", + "display": "HRAS", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1100", + "display": "BRCA1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:391", + "display": "AKT1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3689", + "display": "FGFR2", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3236", + "display": "EGFR", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:18615", + "display": "BRAFP1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:6407", + "display": "KRAS", + "system": "https://www.genenames.org/" + } + ] + }, + { + "id": "e459c5b6-16ab-45ad-be8e-588a466fa42e", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "chromosome": "chr22", + "localization": [ + { + "code": "regulatory-region", + "display": "Regulatory region", + "system": "dnpm-dip/variant/localization" + } + ], + "startRange": { + "start": 10844, + "end": 10886 + }, + "endRange": { + "start": 11502, + "end": 11552 + }, + "totalCopyNumber": 3, + "relativeCopyNumber": 0.18257424389770927, + "cnA": 0.6677514703429981, + "cnB": 0.03993481724373449, + "reportedAffectedGenes": [ + { + "code": "HGNC:33", + "display": "ABCA3", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:886", + "display": "ATRX", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:6407", + "display": "KRAS", + "system": "https://www.genenames.org/" + } + ], + "reportedFocality": "partial q-arm", + "type": { + "code": "low-level-gain", + "display": "Low-level-gain", + "system": "dnpm-dip/mtb/ngs-report/cnv/type" + }, + "copyNumberNeutralLoH": [ + { + "code": "HGNC:33", + "display": "ABCA3", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1753", + "display": "CDH13", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1100", + "display": "BRCA1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:886", + "display": "ATRX", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1777", + "display": "CDK6", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:9967", + "display": "RET", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3236", + "display": "EGFR", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:6407", + "display": "KRAS", + "system": "https://www.genenames.org/" + } + ] + }, + { + "id": "6050ca03-a0ae-4da7-87b8-76cac7dffa8d", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "chromosome": "chr22", + "localization": [ + { + "code": "splicing-region", + "display": "splicing region", + "system": "dnpm-dip/variant/localization" + } + ], + "startRange": { + "start": 29573, + "end": 29615 + }, + "endRange": { + "start": 30148, + "end": 30198 + }, + "totalCopyNumber": 5, + "relativeCopyNumber": 0.3733910734264396, + "cnA": 0.4299750761842057, + "cnB": 0.20874476574745604, + "reportedAffectedGenes": [ + { + "code": "HGNC:33", + "display": "ABCA3", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:11998", + "display": "TP53", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:5173", + "display": "HRAS", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:25829", + "display": "ABRAXAS1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:6973", + "display": "MDM2", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1753", + "display": "CDH13", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:25662", + "display": "AAGAB", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:76", + "display": "ABL1", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3689", + "display": "FGFR2", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:6407", + "display": "KRAS", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:34", + "display": "ABCA4", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3942", + "display": "MTOR", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:3236", + "display": "EGFR", + "system": "https://www.genenames.org/" + } + ], + "reportedFocality": "partial q-arm", + "type": { + "code": "high-level-gain", + "display": "High-level-gain", + "system": "dnpm-dip/mtb/ngs-report/cnv/type" + }, + "copyNumberNeutralLoH": [ + { + "code": "HGNC:11998", + "display": "TP53", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:6973", + "display": "MDM2", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1753", + "display": "CDH13", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:1777", + "display": "CDK6", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:9967", + "display": "RET", + "system": "https://www.genenames.org/" + }, + { + "code": "HGNC:21597", + "display": "ACAD10", + "system": "https://www.genenames.org/" + } + ] + } + ], + "dnaFusions": [ + { + "id": "1901fef1-f341-49cd-80b3-80af8f6f7bea", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "localization": [ + { + "code": "splicing-region", + "display": "splicing region", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "chromosome": "chr9", + "gene": { + "code": "HGNC:21597", + "display": "ACAD10", + "system": "https://www.genenames.org/" + }, + "position": 968 + }, + "fusionPartner3prime": { + "chromosome": "chrX", + "gene": { + "code": "HGNC:6407", + "display": "KRAS", + "system": "https://www.genenames.org/" + }, + "position": 61 + }, + "reportedNumReads": 7 + }, + { + "id": "12ca0894-8fe6-4243-aed7-d630df490cac", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "localization": [ + { + "code": "splicing-region", + "display": "splicing region", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "chromosome": "chr20", + "gene": { + "code": "HGNC:18615", + "display": "BRAFP1", + "system": "https://www.genenames.org/" + }, + "position": 462 + }, + "fusionPartner3prime": { + "chromosome": "chr3", + "gene": { + "code": "HGNC:3942", + "display": "MTOR", + "system": "https://www.genenames.org/" + }, + "position": 984 + }, + "reportedNumReads": 5 + }, + { + "id": "17335f8f-1ac4-43a7-9fdf-5574d8390bf5", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "localization": [ + { + "code": "intronic", + "display": "Intronic", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "chromosome": "chr21", + "gene": { + "code": "HGNC:1100", + "display": "BRCA1", + "system": "https://www.genenames.org/" + }, + "position": 930 + }, + "fusionPartner3prime": { + "chromosome": "chr14", + "gene": { + "code": "HGNC:76", + "display": "ABL1", + "system": "https://www.genenames.org/" + }, + "position": 896 + }, + "reportedNumReads": 7 + }, + { + "id": "a6acd3bb-127b-44f6-8331-dc4b2488ed38", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "localization": [ + { + "code": "splicing-region", + "display": "splicing region", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "chromosome": "chr8", + "gene": { + "code": "HGNC:1097", + "display": "BRAF", + "system": "https://www.genenames.org/" + }, + "position": 460 + }, + "fusionPartner3prime": { + "chromosome": "chr19", + "gene": { + "code": "HGNC:3236", + "display": "EGFR", + "system": "https://www.genenames.org/" + }, + "position": 577 + }, + "reportedNumReads": 9 + }, + { + "id": "4705fb0d-d429-47d6-8191-c07d06d16c7a", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "localization": [ + { + "code": "regulatory-region", + "display": "Regulatory region", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "chromosome": "chr19", + "gene": { + "code": "HGNC:25662", + "display": "AAGAB", + "system": "https://www.genenames.org/" + }, + "position": 270 + }, + "fusionPartner3prime": { + "chromosome": "chr5", + "gene": { + "code": "HGNC:21298", + "display": "AACS", + "system": "https://www.genenames.org/" + }, + "position": 124 + }, + "reportedNumReads": 3 + }, + { + "id": "9df78e1b-5126-4e72-9d3b-09ddc0fc4d0c", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "localization": [ + { + "code": "intronic", + "display": "Intronic", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "chromosome": "chr9", + "gene": { + "code": "HGNC:25829", + "display": "ABRAXAS1", + "system": "https://www.genenames.org/" + }, + "position": 658 + }, + "fusionPartner3prime": { + "chromosome": "chr1", + "gene": { + "code": "HGNC:25829", + "display": "ABRAXAS1", + "system": "https://www.genenames.org/" + }, + "position": 805 + }, + "reportedNumReads": 7 + }, + { + "id": "60c7636c-7207-4dbd-bf1f-35fba21137b5", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "localization": [ + { + "code": "coding-region", + "display": "Coding region", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "chromosome": "chr11", + "gene": { + "code": "HGNC:3689", + "display": "FGFR2", + "system": "https://www.genenames.org/" + }, + "position": 146 + }, + "fusionPartner3prime": { + "chromosome": "chr13", + "gene": { + "code": "HGNC:886", + "display": "ATRX", + "system": "https://www.genenames.org/" + }, + "position": 521 + }, + "reportedNumReads": 5 + }, + { + "id": "ade9cd16-516a-4725-b803-51402b8913b2", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "localization": [ + { + "code": "intergenic", + "display": "Intergenic", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "chromosome": "chr13", + "gene": { + "code": "HGNC:3689", + "display": "FGFR2", + "system": "https://www.genenames.org/" + }, + "position": 555 + }, + "fusionPartner3prime": { + "chromosome": "chrY", + "gene": { + "code": "HGNC:3690", + "display": "FGFR3", + "system": "https://www.genenames.org/" + }, + "position": 510 + }, + "reportedNumReads": 9 + } + ], + "rnaFusions": [ + { + "id": "1da6ea65-074a-4850-b2a5-d6c014ba34ec", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "675d80ec-d50b-44ad-8669-a10323550d5a", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "localization": [ + { + "code": "intergenic", + "display": "Intergenic", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "transcriptId": { + "value": "63338877-2207-459b-9700-15bb3794fef4", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "5", + "gene": { + "code": "HGNC:25829", + "display": "ABRAXAS1", + "system": "https://www.genenames.org/" + }, + "position": 844, + "strand": "-" + }, + "fusionPartner3prime": { + "transcriptId": { + "value": "1f43ad86-86f4-4f7c-bc47-893e8ec15584", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "8", + "gene": { + "code": "HGNC:25662", + "display": "AAGAB", + "system": "https://www.genenames.org/" + }, + "position": 280, + "strand": "-" + }, + "effect": "Effect", + "reportedNumReads": 6 + }, + { + "id": "78aaf57f-5e75-47f5-b2ce-284a45f15df3", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "2ac1b8c8-47ec-4465-86c0-0252c9c77fba", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "localization": [ + { + "code": "coding-region", + "display": "Coding region", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "transcriptId": { + "value": "c05b0d75-918a-4cde-8ad3-1e72ed88c04c", + "system": "https://www.ensembl.org" + }, + "exonId": "10", + "gene": { + "code": "HGNC:21298", + "display": "AACS", + "system": "https://www.genenames.org/" + }, + "position": 837, + "strand": "-" + }, + "fusionPartner3prime": { + "transcriptId": { + "value": "4e21b4fc-81fb-4e79-a7a7-cff1c9e428ca", + "system": "https://www.ensembl.org" + }, + "exonId": "11", + "gene": { + "code": "HGNC:3689", + "display": "FGFR2", + "system": "https://www.genenames.org/" + }, + "position": 167, + "strand": "-" + }, + "effect": "Effect", + "reportedNumReads": 3 + }, + { + "id": "85ae18ea-3c4b-4990-a983-4d8cdfbc9987", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "3eaec2c4-3a36-466c-9462-46bfd9238c27", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "localization": [ + { + "code": "splicing-region", + "display": "splicing region", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "transcriptId": { + "value": "6b4b1249-f90d-4971-85d7-444d39e220eb", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "2", + "gene": { + "code": "HGNC:6973", + "display": "MDM2", + "system": "https://www.genenames.org/" + }, + "position": 252, + "strand": "-" + }, + "fusionPartner3prime": { + "transcriptId": { + "value": "67beabf6-e37e-400b-8861-2706e40e63d0", + "system": "https://www.ensembl.org" + }, + "exonId": "6", + "gene": { + "code": "HGNC:3690", + "display": "FGFR3", + "system": "https://www.genenames.org/" + }, + "position": 755, + "strand": "-" + }, + "effect": "Effect", + "reportedNumReads": 3 + }, + { + "id": "33f12136-e588-4fdb-9a00-d54fd045a8ae", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "f7c89ee5-77fb-40eb-8542-916111cf8b68", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "localization": [ + { + "code": "intergenic", + "display": "Intergenic", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "transcriptId": { + "value": "3a84500a-fbdc-4086-b38e-b7e3454a61a7", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "5", + "gene": { + "code": "HGNC:3689", + "display": "FGFR2", + "system": "https://www.genenames.org/" + }, + "position": 902, + "strand": "-" + }, + "fusionPartner3prime": { + "transcriptId": { + "value": "30c64920-c400-407b-93b5-3bbd8ba3f255", + "system": "https://www.ensembl.org" + }, + "exonId": "7", + "gene": { + "code": "HGNC:21298", + "display": "AACS", + "system": "https://www.genenames.org/" + }, + "position": 254, + "strand": "+" + }, + "effect": "Effect", + "reportedNumReads": 3 + }, + { + "id": "f53c79bf-72e0-4e92-a1fe-b91017602828", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "5b988b8f-54a7-43b7-a001-0feaf31fcfef", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "localization": [ + { + "code": "regulatory-region", + "display": "Regulatory region", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "transcriptId": { + "value": "41d8e247-25d3-426b-b3f7-fddf5cdb558c", + "system": "https://www.ensembl.org" + }, + "exonId": "7", + "gene": { + "code": "HGNC:3236", + "display": "EGFR", + "system": "https://www.genenames.org/" + }, + "position": 376, + "strand": "+" + }, + "fusionPartner3prime": { + "transcriptId": { + "value": "5ec975b9-d2f1-4717-82bd-c7ce4dd2734c", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "10", + "gene": { + "code": "HGNC:1100", + "display": "BRCA1", + "system": "https://www.genenames.org/" + }, + "position": 356, + "strand": "-" + }, + "effect": "Effect", + "reportedNumReads": 4 + }, + { + "id": "7a5955a4-c7d4-4fe8-a529-0a0c01b84743", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "externalIds": [ + { + "value": "032e1ac6-e21f-4311-98a6-ad6a19ee7b35", + "system": "https://cancer.sanger.ac.uk/cosmic" + } + ], + "localization": [ + { + "code": "intergenic", + "display": "Intergenic", + "system": "dnpm-dip/variant/localization" + } + ], + "fusionPartner5prime": { + "transcriptId": { + "value": "6e43eb94-48ca-41e2-a57e-bf964c1d953a", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "5", + "gene": { + "code": "HGNC:391", + "display": "AKT1", + "system": "https://www.genenames.org/" + }, + "position": 714, + "strand": "-" + }, + "fusionPartner3prime": { + "transcriptId": { + "value": "91fb4eaf-c3da-434b-991b-cbaeee330de2", + "system": "https://www.ncbi.nlm.nih.gov/refseq" + }, + "exonId": "11", + "gene": { + "code": "HGNC:34", + "display": "ABCA4", + "system": "https://www.genenames.org/" + }, + "position": 357, + "strand": "-" + }, + "effect": "Effect", + "reportedNumReads": 4 + } + ], + "rnaSeqs": [] + } + } + ], + "carePlans": [ + { + "id": "01b19e31-f38b-4b69-bb72-01248bb92d11", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "issuedOn": "2025-05-30", + "geneticCounselingRecommendation": { + "id": "f75d972c-f6be-4be9-bd2a-aeef0d492072", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "issuedOn": "2025-05-30", + "reason": { + "code": "other", + "display": "Andere", + "system": "dnpm-dip/mtb/recommendation/genetic-counseling/reason" + } + }, + "medicationRecommendations": [ + { + "id": "8c9e7e7f-daea-4b7b-ad72-6ef6be070f95", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "issuedOn": "2025-05-30", + "priority": { + "code": "1", + "display": "1", + "system": "dnpm-dip/recommendation/priority" + }, + "levelOfEvidence": { + "grading": { + "code": "m2A", + "display": "m2A", + "system": "dnpm-dip/mtb/level-of-evidence/grading" + }, + "addendums": [ + { + "code": "iv", + "display": "iv", + "system": "dnpm-dip/mtb/level-of-evidence/addendum" + } + ], + "publications": [ + { + "id": "482370142", + "system": "https://pubmed.ncbi.nlm.nih.gov", + "type": "Publication" + } + ] + }, + "category": { + "code": "HO", + "display": "Hormontherapie", + "system": "dnpm-dip/mtb/recommendation/systemic-therapy/category" + }, + "medication": [ + { + "code": "L01EX01", + "display": "Sunitinib", + "system": "http://fhir.de/CodeSystem/bfarm/atc", + "version": "2025" + } + ], + "useType": { + "code": "in-label", + "display": "In-label Use", + "system": "dnpm-dip/mtb/recommendation/systemic-therapy/use-type" + }, + "supportingVariants": [ + { + "variant": { + "id": "4705fb0d-d429-47d6-8191-c07d06d16c7a", + "type": "Variant" + }, + "gene": { + "code": "HGNC:25662", + "display": "AAGAB", + "system": "https://www.genenames.org/" + } + } + ] + }, + { + "id": "5adb8293-f9d1-4e65-bdcf-9d4803bd9d1c", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "issuedOn": "2025-05-30", + "priority": { + "code": "2", + "display": "2", + "system": "dnpm-dip/recommendation/priority" + }, + "levelOfEvidence": { + "grading": { + "code": "m4", + "display": "m4", + "system": "dnpm-dip/mtb/level-of-evidence/grading" + }, + "addendums": [ + { + "code": "iv", + "display": "iv", + "system": "dnpm-dip/mtb/level-of-evidence/addendum" + } + ], + "publications": [ + { + "id": "1987640662", + "system": "https://pubmed.ncbi.nlm.nih.gov", + "type": "Publication" + } + ] + }, + "category": { + "code": "HO", + "display": "Hormontherapie", + "system": "dnpm-dip/mtb/recommendation/systemic-therapy/category" + }, + "medication": [ + { + "code": "L01FX01", + "display": "Edrecolomab", + "system": "http://fhir.de/CodeSystem/bfarm/atc", + "version": "2025" + } + ], + "useType": { + "code": "sec-preventive", + "display": "Sec-preventive", + "system": "dnpm-dip/mtb/recommendation/systemic-therapy/use-type" + }, + "supportingVariants": [ + { + "variant": { + "id": "c6e4a8ca-9fd5-46d6-b9c3-4fb92fa3ad7f", + "type": "Variant" + }, + "gene": { + "code": "HGNC:25829", + "display": "ABRAXAS1", + "system": "https://www.genenames.org/" + } + } + ] + } + ], + "procedureRecommendations": [ + { + "id": "7c51af31-3e47-467b-aee6-87a6aee9068a", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "issuedOn": "2025-05-30", + "priority": { + "code": "1", + "display": "1", + "system": "dnpm-dip/recommendation/priority" + }, + "levelOfEvidence": { + "grading": { + "code": "m1A", + "display": "m1A", + "system": "dnpm-dip/mtb/level-of-evidence/grading" + }, + "addendums": [ + { + "code": "iv", + "display": "iv", + "system": "dnpm-dip/mtb/level-of-evidence/addendum" + } + ], + "publications": [ + { + "id": "45577081", + "system": "https://pubmed.ncbi.nlm.nih.gov", + "type": "Publication" + } + ] + }, + "code": { + "code": "WS", + "display": "Wait and see", + "system": "dnpm-dip/mtb/recommendation/procedure/category" + }, + "supportingVariants": [ + { + "variant": { + "id": "7748dd2f-e547-4412-996b-c8116040a5d4", + "type": "Variant" + }, + "gene": { + "code": "HGNC:25829", + "display": "ABRAXAS1", + "system": "https://www.genenames.org/" + } + } + ] + } + ], + "studyEnrollmentRecommendations": [ + { + "id": "3d4c243c-2908-46b7-9faf-d795fd883ac0", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "issuedOn": "2025-05-30", + "levelOfEvidence": { + "grading": { + "code": "m2A", + "display": "m2A", + "system": "dnpm-dip/mtb/level-of-evidence/grading" + }, + "addendums": [ + { + "code": "iv", + "display": "iv", + "system": "dnpm-dip/mtb/level-of-evidence/addendum" + } + ], + "publications": [ + { + "id": "482370142", + "system": "https://pubmed.ncbi.nlm.nih.gov", + "type": "Publication" + } + ] + }, + "priority": { + "code": "4", + "display": "4", + "system": "dnpm-dip/recommendation/priority" + }, + "study": [ + { + "id": "8547-845744-34-56", + "system": "Eudra-CT", + "type": "Study" + } + ], + "supportingVariants": [ + { + "variant": { + "id": "4705fb0d-d429-47d6-8191-c07d06d16c7a", + "type": "Variant" + }, + "gene": { + "code": "HGNC:25662", + "display": "AAGAB", + "system": "https://www.genenames.org/" + } + } + ] + } + ], + "histologyReevaluationRequests": [ + { + "id": "a641f201-fa1e-4650-8fba-adf3665040ed", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "specimen": { + "id": "c59253e3-3c11-40bd-bc35-7c089f734862", + "type": "TumorSpecimen" + }, + "issuedOn": "2025-05-30" + } + ], + "rebiopsyRequests": [ + { + "id": "2501cd78-c360-40c1-9ced-455fa7172191", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "tumorEntity": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "type": "MTBDiagnosis" + }, + "issuedOn": "2025-05-30" + } + ], + "notes": [ + "Protocol of the MTB conference..." + ] + } + ], + "followUps": [ + { + "date": "2025-02-07", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "lastContactDate": "2025-02-07" + } + ], + "claims": [ + { + "id": "4aa57f09-d47a-4916-852e-c79175a0eca7", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "recommendation": { + "id": "8c9e7e7f-daea-4b7b-ad72-6ef6be070f95", + "type": "MTBMedicationRecommendation" + }, + "issuedOn": "2025-05-30", + "stage": { + "code": "revocation", + "display": "Widerspruch", + "system": "dnpm-dip/mtb/claim/stage" + } + }, + { + "id": "fa9b668c-c39d-42a9-bdb2-410bc3f4a361", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "recommendation": { + "id": "5adb8293-f9d1-4e65-bdcf-9d4803bd9d1c", + "type": "MTBMedicationRecommendation" + }, + "issuedOn": "2025-05-30", + "stage": { + "code": "initial-claim", + "display": "Erstantrag", + "system": "dnpm-dip/mtb/claim/stage" + } + } + ], + "claimResponses": [ + { + "id": "db18a72a-293e-4f2d-bfe5-273776f8286b", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "claim": { + "id": "4aa57f09-d47a-4916-852e-c79175a0eca7", + "type": "Claim" + }, + "issuedOn": "2025-05-30", + "status": { + "code": "accepted", + "display": "Angenommen", + "system": "dnpm-dip/mtb/claim-response/status" + } + }, + { + "id": "ff5f495e-20c6-4c18-b150-4799343049c4", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "claim": { + "id": "fa9b668c-c39d-42a9-bdb2-410bc3f4a361", + "type": "Claim" + }, + "issuedOn": "2025-05-30", + "status": { + "code": "accepted", + "display": "Angenommen", + "system": "dnpm-dip/mtb/claim-response/status" + } + } + ], + "systemicTherapies": [ + { + "history": [ + { + "id": "bc0b340d-17ea-4598-ad69-38d309e47182", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "intent": { + "code": "X", + "display": "Keine Angabe", + "system": "dnpm-dip/therapy/intent" + }, + "category": { + "code": "N", + "display": "Neoadjuvant", + "system": "dnpm-dip/therapy/category" + }, + "basedOn": { + "id": "8c9e7e7f-daea-4b7b-ad72-6ef6be070f95", + "type": "MTBMedicationRecommendation" + }, + "recordedOn": "2025-05-30", + "status": { + "code": "on-going", + "display": "Laufend", + "system": "dnpm-dip/therapy/status" + }, + "recommendationFulfillmentStatus": { + "code": "partial", + "display": "Partiell", + "system": "dnpm-dip/therapy/recommendation-fulfillment-status" + }, + "dosage": { + "code": "under-50%", + "display": "< 50 %", + "system": "dnpm-dip/therapy/dosage-density" + }, + "period": { + "start": "2024-11-08", + "end": "2025-05-30" + }, + "medication": [ + { + "code": "L01EX01", + "display": "Sunitinib", + "system": "http://fhir.de/CodeSystem/bfarm/atc", + "version": "2025" + } + ], + "notes": [ + "Notes on the therapy..." + ] + } + ] + }, + { + "history": [ + { + "id": "e3d4b435-0531-4d75-827c-0da914f054dd", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "reason": { + "id": "53155bb3-39f8-4cd9-aa9b-1675165bfdb8", + "display": "Bösartige Neubildung: Tuba uterina [Falloppio]", + "type": "MTBDiagnosis" + }, + "intent": { + "code": "K", + "display": "Kurativ", + "system": "dnpm-dip/therapy/intent" + }, + "category": { + "code": "A", + "display": "Adjuvant", + "system": "dnpm-dip/therapy/category" + }, + "basedOn": { + "id": "5adb8293-f9d1-4e65-bdcf-9d4803bd9d1c", + "type": "MTBMedicationRecommendation" + }, + "recordedOn": "2025-05-30", + "status": { + "code": "completed", + "display": "Abgeschlossen", + "system": "dnpm-dip/therapy/status" + }, + "recommendationFulfillmentStatus": { + "code": "complete", + "display": "Komplett", + "system": "dnpm-dip/therapy/recommendation-fulfillment-status" + }, + "dosage": { + "code": "over-50%", + "display": ">= 50 %", + "system": "dnpm-dip/therapy/dosage-density" + }, + "period": { + "start": "2024-10-25", + "end": "2025-05-30" + }, + "medication": [ + { + "code": "L01FX01", + "display": "Edrecolomab", + "system": "http://fhir.de/CodeSystem/bfarm/atc", + "version": "2025" + } + ], + "notes": [ + "Notes on the therapy..." + ] + } + ] + } + ], + "responses": [ + { + "id": "1bcd9695-739f-451b-a403-7def6fa43614", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "therapy": { + "id": "bc0b340d-17ea-4598-ad69-38d309e47182", + "type": "MTBSystemicTherapy" + }, + "effectiveDate": "2025-02-07", + "method": { + "code": "RANO", + "display": "Nach RANO-Kriterien", + "system": "dnpm-dip/mtb/response/method" + }, + "value": { + "code": "PR", + "display": "Partial Response", + "system": "RECIST" + } + }, + { + "id": "89f6c606-0ec6-4b1e-a316-56a16eb52ea2", + "patient": { + "id": "e14bf9b6-7982-4933-a648-cfdea6484f1c", + "type": "Patient" + }, + "therapy": { + "id": "e3d4b435-0531-4d75-827c-0da914f054dd", + "type": "MTBSystemicTherapy" + }, + "effectiveDate": "2024-12-27", + "method": { + "code": "RECIST", + "display": "Nach RECIST-Kriterien", + "system": "dnpm-dip/mtb/response/method" + }, + "value": { + "code": "SD", + "display": "Stable Disease", + "system": "RECIST" + } + } + ] +} diff --git a/MV64e.MTB/Mtb.cs b/MV64e.MTB/Mtb.cs index 6a302c4..af16dd1 100644 --- a/MV64e.MTB/Mtb.cs +++ b/MV64e.MTB/Mtb.cs @@ -21,23 +21,20 @@ namespace MV64e.MTB [JsonProperty("claims", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List Claims { get; set; } - [JsonProperty("diagnoses", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + [JsonProperty("diagnoses", Required = Required.Always)] public List Diagnoses { get; set; } - [JsonProperty("episode", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public MtbEpisode Episode { get; set; } + [JsonProperty("episodesOfCare", Required = Required.Always)] + public List EpisodesOfCare { get; set; } - [JsonProperty("episodesOfCare", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List EpisodesOfCare { get; set; } - - [JsonProperty("geneticCounsellingRequests", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List GeneticCounsellingRequests { get; set; } + [JsonProperty("followUps", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List FollowUps { get; set; } [JsonProperty("guidelineProcedures", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List GuidelineProcedures { get; set; } + public List GuidelineProcedures { get; set; } [JsonProperty("guidelineTherapies", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List GuidelineTherapies { get; set; } + public List GuidelineTherapies { get; set; } [JsonProperty("histologyReports", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List HistologyReports { get; set; } @@ -45,20 +42,20 @@ namespace MV64e.MTB [JsonProperty("ihcReports", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List IhcReports { get; set; } - [JsonProperty("molecularTherapies", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List MolecularTherapies { get; set; } + [JsonProperty("metadata", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MvhMetadata Metadata { get; set; } [JsonProperty("ngsReports", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List NgsReports { get; set; } [JsonProperty("patient", Required = Required.Always)] - public MtbPatient Patient { get; set; } + public Patient Patient { get; set; } [JsonProperty("performanceStatus", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List PerformanceStatus { get; set; } - [JsonProperty("recommendations", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List Recommendations { get; set; } + [JsonProperty("priorDiagnosticReports", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List PriorDiagnosticReports { get; set; } [JsonProperty("responses", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List Responses { get; set; } @@ -66,47 +63,50 @@ namespace MV64e.MTB [JsonProperty("specimens", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List Specimens { get; set; } - [JsonProperty("studyInclusionRequests", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List StudyInclusionRequests { get; set; } - - [JsonProperty("therapies", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List Therapies { get; set; } + [JsonProperty("systemicTherapies", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List SystemicTherapies { get; set; } } public partial class MtbCarePlan { - [JsonProperty("diagnosis", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Diagnosis { get; set; } - [JsonProperty("geneticCounselingRecommendation", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public GeneticCounselingRecommendation GeneticCounselingRecommendation { get; set; } + [JsonProperty("histologyReevaluationRequests", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List HistologyReevaluationRequests { get; set; } + [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("indication", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Reference Indication { get; set; } - - [JsonProperty("issuedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? IssuedOn { get; set; } + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } [JsonProperty("medicationRecommendations", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List MedicationRecommendations { get; set; } - [JsonProperty("noTargetFinding", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public NoTargetFinding NoTargetFinding { get; set; } + [JsonProperty("noSequencingPerformedReason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public CarePlanNoSequencingPerformedReasonCoding NoSequencingPerformedReason { get; set; } [JsonProperty("notes", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Notes { get; set; } + public List Notes { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } - [JsonProperty("statusReason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingCarePlanStatusReason StatusReason { get; set; } + [JsonProperty("procedureRecommendations", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List ProcedureRecommendations { get; set; } + + [JsonProperty("reason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Reference Reason { get; set; } + + [JsonProperty("rebiopsyRequests", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List RebiopsyRequests { get; set; } + + [JsonProperty("recommendationsMissingReason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbCarePlanRecommendationsMissingReasonCoding RecommendationsMissingReason { get; set; } [JsonProperty("studyEnrollmentRecommendations", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List StudyEnrollmentRecommendations { get; set; } + public List StudyEnrollmentRecommendations { get; set; } } public partial class GeneticCounselingRecommendation @@ -114,23 +114,206 @@ namespace MV64e.MTB [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("issuedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? IssuedOn { get; set; } + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } [JsonProperty("reason", Required = Required.Always)] - public Coding Reason { get; set; } + public GeneticCounselingRecommendationReasonCoding Reason { get; set; } } - public partial class Patient + public partial class Reference + { + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("id", Required = Required.Always)] + public string Id { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("type", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Type { get; set; } + } + + public partial class GeneticCounselingRecommendationReasonCoding + { + [JsonProperty("code", Required = Required.Always)] + public GeneticCounselingRecommendationReasonCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class HistologyReevaluationRequest { [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("type", Required = Required.Always)] - public PatientType Type { get; set; } + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } + + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } + + [JsonProperty("specimen", Required = Required.Always)] + public Reference Specimen { get; set; } + } + + public partial class MtbMedicationRecommendation + { + [JsonProperty("category", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbMedicationRecommendationCategoryCoding Category { get; set; } + + [JsonProperty("id", Required = Required.Always)] + public string Id { get; set; } + + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } + + [JsonProperty("levelOfEvidence", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public LevelOfEvidence LevelOfEvidence { get; set; } + + [JsonProperty("medication", Required = Required.Always)] + public List Medication { get; set; } + + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } + + [JsonProperty("priority", Required = Required.Always)] + public RecommendationPriorityCoding Priority { get; set; } + + [JsonProperty("reason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Reference Reason { get; set; } + + [JsonProperty("supportingVariants", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List SupportingVariants { get; set; } + + [JsonProperty("useType", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbMedicationRecommendationUseTypeCoding UseType { get; set; } + } + + public partial class MtbMedicationRecommendationCategoryCoding + { + [JsonProperty("code", Required = Required.Always)] + public MtbMedicationRecommendationCategoryCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class LevelOfEvidence + { + [JsonProperty("addendums", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Addendums { get; set; } + + [JsonProperty("grading", Required = Required.Always)] + public LevelOfEvidenceGradingCoding Grading { get; set; } + + [JsonProperty("publications", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Publications { get; set; } + } + + public partial class LevelOfEvidenceAddendumCoding + { + [JsonProperty("code", Required = Required.Always)] + public LevelOfEvidenceAddendumCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class LevelOfEvidenceGradingCoding + { + [JsonProperty("code", Required = Required.Always)] + public LevelOfEvidenceGradingCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class PublicationReference + { + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("id", Required = Required.Always)] + public string Id { get; set; } + + [JsonProperty("system", Required = Required.Always)] + public PublicationSystem System { get; set; } + + [JsonProperty("type", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Type { get; set; } + } + + public partial class AtcUnregisteredMedicationCoding + { + [JsonProperty("code", Required = Required.Always)] + public string Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.Always)] + public RequestedMedicationSystem System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class RecommendationPriorityCoding + { + [JsonProperty("code", Required = Required.Always)] + public RecommendationPriorityCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class GeneAlterationReference + { + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("gene", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Coding Gene { get; set; } + + [JsonProperty("variant", Required = Required.Always)] + public Reference Variant { get; set; } } public partial class Coding @@ -148,184 +331,157 @@ namespace MV64e.MTB public string Version { get; set; } } - public partial class Reference + public partial class MtbMedicationRecommendationUseTypeCoding { + [JsonProperty("code", Required = Required.Always)] + public MtbMedicationRecommendationUseTypeCodingCode Code { get; set; } + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class CarePlanNoSequencingPerformedReasonCoding + { + [JsonProperty("code", Required = Required.Always)] + public NoSequencingPerformedReasonCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class ProcedureRecommendation + { + [JsonProperty("code", Required = Required.Always)] + public MtbProcedureRecommendationCategoryCoding Code { get; set; } + [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("type", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Type { get; set; } + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } + + [JsonProperty("levelOfEvidence", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public LevelOfEvidence LevelOfEvidence { get; set; } + + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } + + [JsonProperty("priority", Required = Required.Always)] + public RecommendationPriorityCoding Priority { get; set; } + + [JsonProperty("reason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Reference Reason { get; set; } + + [JsonProperty("supportingVariants", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List SupportingVariants { get; set; } } - public partial class MtbMedicationRecommendation + public partial class MtbProcedureRecommendationCategoryCoding + { + [JsonProperty("code", Required = Required.Always)] + public MtbProcedureRecommendationCategoryCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class RebiopsyRequest { [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("indication", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Reference Indication { get; set; } + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } - [JsonProperty("issuedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? IssuedOn { get; set; } + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } + + [JsonProperty("tumorEntity", Required = Required.Always)] + public Reference TumorEntity { get; set; } + } + + public partial class MtbCarePlanRecommendationsMissingReasonCoding + { + [JsonProperty("code", Required = Required.Always)] + public MtbCarePlanRecommendationsMissingReasonCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class MtbStudyEnrollmentRecommendation + { + [JsonProperty("id", Required = Required.Always)] + public string Id { get; set; } + + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } [JsonProperty("levelOfEvidence", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public LevelOfEvidence LevelOfEvidence { get; set; } [JsonProperty("medication", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List Medication { get; set; } - - [JsonProperty("ngsReport", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string NgsReport { get; set; } + public List Medication { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } - [JsonProperty("priority", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingTherapyRecommendationPriority Priority { get; set; } - - [JsonProperty("supportingVariants", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List SupportingVariants { get; set; } - } - - public partial class LevelOfEvidence - { - [JsonProperty("addendums", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List Addendums { get; set; } - - [JsonProperty("grading", Required = Required.Always)] - public CodingLevelOfEvidenceGrading Grading { get; set; } - - [JsonProperty("publications", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List Publications { get; set; } - } - - public partial class CodingLevelOfEvidenceAddendum - { - [JsonProperty("code", Required = Required.Always)] - public AddendumCode Code { get; set; } - - [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Display { get; set; } - - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string System { get; set; } - - [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Version { get; set; } - } - - public partial class CodingLevelOfEvidenceGrading - { - [JsonProperty("code", Required = Required.Always)] - public GradingCode Code { get; set; } - - [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Display { get; set; } - - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string System { get; set; } - - [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Version { get; set; } - } - - public partial class ReferencePublication - { - [JsonProperty("extId", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public ExtId ExtId { get; set; } - - [JsonProperty("type", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Type { get; set; } - - [JsonProperty("uri", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Uri { get; set; } - } - - public partial class ExtId - { - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public ExtIdSystem? System { get; set; } - - [JsonProperty("value", Required = Required.Always)] - public string Value { get; set; } - } - - public partial class CodingTherapyRecommendationPriority - { - [JsonProperty("code", Required = Required.Always)] - public TherapyRecommendationPriority Code { get; set; } - - [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Display { get; set; } - - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string System { get; set; } - } - - public partial class NoTargetFinding - { - [JsonProperty("diagnosis", Required = Required.Always)] - public string Diagnosis { get; set; } - - [JsonProperty("issuedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? IssuedOn { get; set; } - - [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } - } - - public partial class CodingCarePlanStatusReason - { - [JsonProperty("code", Required = Required.Always)] - public string Code { get; set; } - - [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Display { get; set; } - - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string System { get; set; } - } - - public partial class StudyEnrollmentRecommendation - { - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } - - [JsonProperty("issuedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? IssuedOn { get; set; } - - [JsonProperty("levelOfEvidence", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding LevelOfEvidence { get; set; } - - [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + [JsonProperty("priority", Required = Required.Always)] + public RecommendationPriorityCoding Priority { get; set; } [JsonProperty("reason", Required = Required.Always)] public Reference Reason { get; set; } - [JsonProperty("studies", Required = Required.Always)] - public List Studies { get; set; } + [JsonProperty("study", Required = Required.Always)] + public List Study { get; set; } [JsonProperty("supportingVariants", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List SupportingVariants { get; set; } + public List SupportingVariants { get; set; } } - public partial class Study + public partial class StudyReference { - [JsonProperty("system", Required = Required.Always)] - public string System { get; set; } + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } - [JsonProperty("value", Required = Required.Always)] - public string Value { get; set; } + [JsonProperty("id", Required = Required.Always)] + public string Id { get; set; } + + [JsonProperty("system", Required = Required.Always)] + public StudySystem System { get; set; } + + [JsonProperty("type", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Type { get; set; } } public partial class ClaimResponse { [JsonProperty("claim", Required = Required.Always)] - public ClaimResponseClaim Claim { get; set; } + public Reference Claim { get; set; } [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } @@ -334,46 +490,43 @@ namespace MV64e.MTB public DateTimeOffset IssuedOn { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } [JsonProperty("status", Required = Required.Always)] - public CodingClaimResponseStatus Status { get; set; } + public ClaimResponseStatusCoding Status { get; set; } [JsonProperty("statusReason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingClaimResponseStatusReason StatusReason { get; set; } + public ClaimResponseStatusReasonCoding StatusReason { get; set; } } - public partial class ClaimResponseClaim - { - [JsonProperty("id", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Id { get; set; } - - [JsonProperty("type", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public ClaimResponseClaimType? Type { get; set; } - } - - public partial class CodingClaimResponseStatus + public partial class ClaimResponseStatusCoding { [JsonProperty("code", Required = Required.Always)] - public ClaimResponseStatus Code { get; set; } + public ClaimResponseStatusCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } - public partial class CodingClaimResponseStatusReason + public partial class ClaimResponseStatusReasonCoding { [JsonProperty("code", Required = Required.Always)] - public ClaimResponseStatusReason Code { get; set; } + public ClaimResponseStatusReasonCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } public partial class Claim @@ -385,88 +538,22 @@ namespace MV64e.MTB public DateTimeOffset IssuedOn { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } - [JsonProperty("recommendation", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Recommendation Recommendation { get; set; } + [JsonProperty("recommendation", Required = Required.Always)] + public Reference Recommendation { get; set; } + + [JsonProperty("requestedMedication", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List RequestedMedication { get; set; } [JsonProperty("stage", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding Stage { get; set; } + public ClaimStageCoding Stage { get; set; } } - public partial class Recommendation - { - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } - - [JsonProperty("type", Required = Required.Always)] - public string Type { get; set; } - } - - public partial class MtbDiagnosis + public partial class ClaimStageCoding { [JsonProperty("code", Required = Required.Always)] - public Coding Code { get; set; } - - [JsonProperty("guidelineTreatmentStatus", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding GuidelineTreatmentStatus { get; set; } - - [JsonProperty("histologyResults", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List HistologyResults { get; set; } - - [JsonProperty("icdO3T", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding IcdO3T { get; set; } - - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } - - [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } - - [JsonProperty("recordedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? RecordedOn { get; set; } - - [JsonProperty("stageHistory", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List StageHistory { get; set; } - - [JsonProperty("topography", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding Topography { get; set; } - - [JsonProperty("tumorGrade", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingTumorGrade TumorGrade { get; set; } - - [JsonProperty("whoGrade", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding WhoGrade { get; set; } - - [JsonProperty("whoGrading", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding WhoGrading { get; set; } - } - - public partial class StageHistory - { - [JsonProperty("date", Required = Required.Always)] - public DateTimeOffset Date { get; set; } - - [JsonProperty("stage", Required = Required.Always)] - public CodingTumorSpread Stage { get; set; } - } - - public partial class CodingTumorSpread - { - [JsonProperty("code", Required = Required.Always)] - public StageCode Code { get; set; } - - [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Display { get; set; } - - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string System { get; set; } - } - - public partial class CodingTumorGrade - { - [JsonProperty("code", Required = Required.Always)] - public TumorGradeCode Code { get; set; } + public ClaimStageCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } @@ -478,28 +565,154 @@ namespace MV64e.MTB public string Version { get; set; } } - public partial class MtbEpisode + public partial class MtbDiagnosis { + [JsonProperty("code", Required = Required.Always)] + public Coding Code { get; set; } + + [JsonProperty("germlineCodes", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List GermlineCodes { get; set; } + + [JsonProperty("grading", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Grading Grading { get; set; } + + [JsonProperty("guidelineTreatmentStatus", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbDiagnosisGuidelineTreatmentStatusCoding GuidelineTreatmentStatus { get; set; } + + [JsonProperty("histology", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Histology { get; set; } + [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } + [JsonProperty("notes", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Notes { get; set; } + [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } - [JsonProperty("period", Required = Required.Always)] - public PeriodLocalDate Period { get; set; } + [JsonProperty("recordedOn", Required = Required.Always)] + public DateTimeOffset RecordedOn { get; set; } + + [JsonProperty("staging", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Staging Staging { get; set; } + + [JsonProperty("topography", Required = Required.Always)] + public Coding Topography { get; set; } + + [JsonProperty("type", Required = Required.Always)] + public TypeClass Type { get; set; } } - public partial class PeriodLocalDate + public partial class Grading { - [JsonProperty("end", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? End { get; set; } - - [JsonProperty("start", Required = Required.Always)] - public DateTimeOffset Start { get; set; } + [JsonProperty("history", Required = Required.Always)] + public List History { get; set; } } - public partial class EpisodeOfCare + public partial class TumorGrading + { + [JsonProperty("codes", Required = Required.Always)] + public List Codes { get; set; } + + [JsonProperty("date", Required = Required.Always)] + public DateTimeOffset Date { get; set; } + } + + public partial class MtbDiagnosisGuidelineTreatmentStatusCoding + { + [JsonProperty("code", Required = Required.Always)] + public MtbDiagnosisGuidelineTreatmentStatusCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class Staging + { + [JsonProperty("history", Required = Required.Always)] + public List History { get; set; } + } + + public partial class TumorStaging + { + [JsonProperty("date", Required = Required.Always)] + public DateTimeOffset Date { get; set; } + + [JsonProperty("method", Required = Required.Always)] + public TumorStagingMethodCoding Method { get; set; } + + [JsonProperty("otherClassifications", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List OtherClassifications { get; set; } + + [JsonProperty("tnmClassification", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public TnmClassification TnmClassification { get; set; } + } + + public partial class TumorStagingMethodCoding + { + [JsonProperty("code", Required = Required.Always)] + public TumorStagingMethodCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class TnmClassification + { + [JsonProperty("metastasis", Required = Required.Always)] + public Coding Metastasis { get; set; } + + [JsonProperty("nodes", Required = Required.Always)] + public Coding Nodes { get; set; } + + [JsonProperty("tumor", Required = Required.Always)] + public Coding Tumor { get; set; } + } + + public partial class TypeClass + { + [JsonProperty("history", Required = Required.Always)] + public List History { get; set; } + } + + public partial class History + { + [JsonProperty("date", Required = Required.Always)] + public DateTimeOffset Date { get; set; } + + [JsonProperty("value", Required = Required.Always)] + public MtbDiagnosisCoding Value { get; set; } + } + + public partial class MtbDiagnosisCoding + { + [JsonProperty("code", Required = Required.Always)] + public ValueCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class MtbEpisodeOfCare { [JsonProperty("diagnoses", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List Diagnoses { get; set; } @@ -511,64 +724,37 @@ namespace MV64e.MTB public Reference Patient { get; set; } [JsonProperty("period", Required = Required.Always)] - public PeriodLocalDate Period { get; set; } + public PeriodDate Period { get; set; } } - public partial class OncoProdecure + public partial class PeriodDate { - [JsonProperty("basedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string BasedOn { get; set; } + [JsonProperty("end", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public DateTimeOffset? End { get; set; } - [JsonProperty("code", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding Code { get; set; } + [JsonProperty("start", Required = Required.Always)] + public DateTimeOffset Start { get; set; } + } - [JsonProperty("diagnosis", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Diagnosis { get; set; } + public partial class FollowUp + { + [JsonProperty("date", Required = Required.Always)] + public DateTimeOffset Date { get; set; } - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } - - [JsonProperty("indication", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Reference Indication { get; set; } - - [JsonProperty("notes", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Notes { get; set; } + [JsonProperty("lastContactDate", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public DateTimeOffset? LastContactDate { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } - [JsonProperty("period", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public PeriodLocalDate Period { get; set; } - - [JsonProperty("recordedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? RecordedOn { get; set; } - - [JsonProperty("status", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingTherapyStatus Status { get; set; } - - [JsonProperty("statusReason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingTherapyStatusReason StatusReason { get; set; } - - [JsonProperty("therapyLine", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public long? TherapyLine { get; set; } + [JsonProperty("patientStatus", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public FollowUpPatientStatusCoding PatientStatus { get; set; } } - public partial class CodingTherapyStatus + public partial class FollowUpPatientStatusCoding { [JsonProperty("code", Required = Required.Always)] - public TherapyStatus Code { get; set; } - - [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Display { get; set; } - - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string System { get; set; } - } - - public partial class CodingTherapyStatusReason - { - [JsonProperty("code", Required = Required.Always)] - public StatusReasonCode Code { get; set; } + public FollowUpPatientStatusCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } @@ -580,45 +766,198 @@ namespace MV64e.MTB public string Version { get; set; } } - public partial class MtbMedicationTherapy + public partial class OncoProcedure { [JsonProperty("basedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public Reference BasedOn { get; set; } - [JsonProperty("diagnosis", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Diagnosis { get; set; } + [JsonProperty("code", Required = Required.Always)] + public OncoProcedureCoding Code { get; set; } [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("indication", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Reference Indication { get; set; } - - [JsonProperty("medication", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List Medication { get; set; } + [JsonProperty("intent", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbTherapyIntentCoding Intent { get; set; } [JsonProperty("notes", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Notes { get; set; } + public List Notes { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } [JsonProperty("period", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public PeriodLocalDate Period { get; set; } + public PeriodDate Period { get; set; } - [JsonProperty("recordedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? RecordedOn { get; set; } + [JsonProperty("reason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Reference Reason { get; set; } - [JsonProperty("status", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingTherapyStatus Status { get; set; } + [JsonProperty("recordedOn", Required = Required.Always)] + public DateTimeOffset RecordedOn { get; set; } + + [JsonProperty("status", Required = Required.Always)] + public TherapyStatusCoding Status { get; set; } [JsonProperty("statusReason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingTherapyStatusReason StatusReason { get; set; } + public MtbTherapyStatusReasonCoding StatusReason { get; set; } [JsonProperty("therapyLine", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public long? TherapyLine { get; set; } } + public partial class OncoProcedureCoding + { + [JsonProperty("code", Required = Required.Always)] + public OncoProcedureCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class MtbTherapyIntentCoding + { + [JsonProperty("code", Required = Required.Always)] + public MtbTherapyIntentCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class TherapyStatusCoding + { + [JsonProperty("code", Required = Required.Always)] + public TherapyStatusCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class MtbTherapyStatusReasonCoding + { + [JsonProperty("code", Required = Required.Always)] + public MtbTherapyStatusReasonCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class MtbSystemicTherapy + { + [JsonProperty("basedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Reference BasedOn { get; set; } + + [JsonProperty("category", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbSystemicTherapyCategoryCoding Category { get; set; } + + [JsonProperty("dosage", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbSystemicTherapyDosageDensityCoding Dosage { get; set; } + + [JsonProperty("id", Required = Required.Always)] + public string Id { get; set; } + + [JsonProperty("intent", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbTherapyIntentCoding Intent { get; set; } + + [JsonProperty("medication", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Medication { get; set; } + + [JsonProperty("notes", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Notes { get; set; } + + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } + + [JsonProperty("period", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public PeriodDate Period { get; set; } + + [JsonProperty("reason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Reference Reason { get; set; } + + [JsonProperty("recommendationFulfillmentStatus", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbSystemicTherapyRecommendationFulfillmentStatusCoding RecommendationFulfillmentStatus { get; set; } + + [JsonProperty("recordedOn", Required = Required.Always)] + public DateTimeOffset RecordedOn { get; set; } + + [JsonProperty("status", Required = Required.Always)] + public TherapyStatusCoding Status { get; set; } + + [JsonProperty("statusReason", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public MtbTherapyStatusReasonCoding StatusReason { get; set; } + + [JsonProperty("therapyLine", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public long? TherapyLine { get; set; } + } + + public partial class MtbSystemicTherapyCategoryCoding + { + [JsonProperty("code", Required = Required.Always)] + public MtbSystemicTherapyCategoryCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class MtbSystemicTherapyDosageDensityCoding + { + [JsonProperty("code", Required = Required.Always)] + public MtbSystemicTherapyDosageDensityCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class MtbSystemicTherapyRecommendationFulfillmentStatusCoding + { + [JsonProperty("code", Required = Required.Always)] + public MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + public partial class HistologyReport { [JsonProperty("id", Required = Required.Always)] @@ -628,18 +967,18 @@ namespace MV64e.MTB public DateTimeOffset IssuedOn { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } [JsonProperty("results", Required = Required.Always)] public HistologyReportResults Results { get; set; } [JsonProperty("specimen", Required = Required.Always)] - public HistologyReportSpecimen Specimen { get; set; } + public Reference Specimen { get; set; } } public partial class HistologyReportResults { - [JsonProperty("tumorCellContent", Required = Required.Always)] + [JsonProperty("tumorCellContent", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public TumorCellContent TumorCellContent { get; set; } [JsonProperty("tumorMorphology", Required = Required.Always)] @@ -652,37 +991,31 @@ namespace MV64e.MTB public string Id { get; set; } [JsonProperty("method", Required = Required.Always)] - public CodingTumorCellContentMethod Method { get; set; } + public TumorCellContentMethodCoding Method { get; set; } - [JsonProperty("patient", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Patient Patient { get; set; } + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } [JsonProperty("specimen", Required = Required.Always)] - public TumorCellContentSpecimen Specimen { get; set; } + public Reference Specimen { get; set; } [JsonProperty("value", Required = Required.Always)] public double Value { get; set; } } - public partial class CodingTumorCellContentMethod + public partial class TumorCellContentMethodCoding { [JsonProperty("code", Required = Required.Always)] - public TumorCellContentMethod Code { get; set; } + public TumorCellContentMethodCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string System { get; set; } - } - public partial class TumorCellContentSpecimen - { - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } - - [JsonProperty("type", Required = Required.Always)] - public SpecimenType Type { get; set; } + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } public partial class TumorMorphology @@ -690,77 +1023,56 @@ namespace MV64e.MTB [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("notes", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Notes { get; set; } + [JsonProperty("note", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Note { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } [JsonProperty("specimen", Required = Required.Always)] - public TumorMorphologySpecimen Specimen { get; set; } + public Reference Specimen { get; set; } [JsonProperty("value", Required = Required.Always)] public Coding Value { get; set; } } - public partial class TumorMorphologySpecimen - { - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } - - [JsonProperty("type", Required = Required.Always)] - public SpecimenType Type { get; set; } - } - - public partial class HistologyReportSpecimen - { - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } - - [JsonProperty("type", Required = Required.Always)] - public SpecimenType Type { get; set; } - } - public partial class IhcReport { - [JsonProperty("blockId", Required = Required.Always)] - public ExternalId BlockId { get; set; } - - [JsonProperty("date", Required = Required.Always)] - public DateTimeOffset Date { get; set; } + [JsonProperty("blockIds", Required = Required.Always)] + public List BlockIds { get; set; } [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("journalId", Required = Required.Always)] - public ExternalId JournalId { get; set; } + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } - [JsonProperty("msiMmrResults", Required = Required.Always)] - public List MsiMmrResults { get; set; } + [JsonProperty("journalId", Required = Required.Always)] + public string JournalId { get; set; } [JsonProperty("patient", Required = Required.Always)] public Reference Patient { get; set; } - [JsonProperty("proteinExpressionResults", Required = Required.Always)] - public List ProteinExpressionResults { get; set; } + [JsonProperty("results", Required = Required.Always)] + public IhcReportResults Results { get; set; } [JsonProperty("specimen", Required = Required.Always)] public Reference Specimen { get; set; } } - public partial class ExternalId + public partial class IhcReportResults { - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string System { get; set; } + [JsonProperty("msiMmr", Required = Required.Always)] + public List MsiMmr { get; set; } - [JsonProperty("value", Required = Required.Always)] - public string Value { get; set; } + [JsonProperty("proteinExpression", Required = Required.Always)] + public List ProteinExpression { get; set; } } - public partial class MsiMmrResult + public partial class MsiMmr { [JsonProperty("icScore", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingProteinExpressionIcScore IcScore { get; set; } + public ProteinExpressionIcScoreCoding IcScore { get; set; } [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } @@ -772,19 +1084,19 @@ namespace MV64e.MTB public Coding Protein { get; set; } [JsonProperty("tcScore", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingProteinExpressionTcScore TcScore { get; set; } + public ProteinExpressionTcScoreCoding TcScore { get; set; } [JsonProperty("tpsScore", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public long? TpsScore { get; set; } [JsonProperty("value", Required = Required.Always)] - public CodingProteinExpressionResult Value { get; set; } + public ProteinExpressionResultCoding Value { get; set; } } - public partial class CodingProteinExpressionIcScore + public partial class ProteinExpressionIcScoreCoding { [JsonProperty("code", Required = Required.Always)] - public IcScoreCode Code { get; set; } + public ProteinExpressionIcScoreCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } @@ -796,10 +1108,10 @@ namespace MV64e.MTB public string Version { get; set; } } - public partial class CodingProteinExpressionTcScore + public partial class ProteinExpressionTcScoreCoding { [JsonProperty("code", Required = Required.Always)] - public TcScoreCode Code { get; set; } + public ProteinExpressionTcScoreCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } @@ -811,10 +1123,10 @@ namespace MV64e.MTB public string Version { get; set; } } - public partial class CodingProteinExpressionResult + public partial class ProteinExpressionResultCoding { [JsonProperty("code", Required = Required.Always)] - public ProteinExpressionResultCode Code { get; set; } + public ProteinExpressionResultCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } @@ -826,10 +1138,10 @@ namespace MV64e.MTB public string Version { get; set; } } - public partial class ProteinExpressionResult + public partial class ProteinExpression { [JsonProperty("icScore", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingProteinExpressionIcScore IcScore { get; set; } + public ProteinExpressionIcScoreCoding IcScore { get; set; } [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } @@ -841,19 +1153,52 @@ namespace MV64e.MTB public Coding Protein { get; set; } [JsonProperty("tcScore", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingProteinExpressionTcScore TcScore { get; set; } + public ProteinExpressionTcScoreCoding TcScore { get; set; } [JsonProperty("tpsScore", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public long? TpsScore { get; set; } [JsonProperty("value", Required = Required.Always)] - public CodingProteinExpressionResult Value { get; set; } + public ProteinExpressionResultCoding Value { get; set; } } - public partial class MolecularTherapy + public partial class MvhMetadata { - [JsonProperty("history", Required = Required.Always)] - public List History { get; set; } + [JsonProperty("modelProjectConsent", Required = Required.Always)] + public ModelProjectConsent ModelProjectConsent { get; set; } + + [JsonProperty("researchConsents", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List> ResearchConsents { get; set; } + + [JsonProperty("transferTAN", Required = Required.Always)] + public string TransferTan { get; set; } + + [JsonProperty("type", Required = Required.Always)] + public MvhSubmissionType Type { get; set; } + } + + public partial class ModelProjectConsent + { + [JsonProperty("date", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public DateTimeOffset? Date { get; set; } + + [JsonProperty("provisions", Required = Required.Always)] + public List Provisions { get; set; } + + [JsonProperty("version", Required = Required.Always)] + public string Version { get; set; } + } + + public partial class Provision + { + [JsonProperty("date", Required = Required.Always)] + public DateTimeOffset Date { get; set; } + + [JsonProperty("purpose", Required = Required.Always)] + public ModelProjectConsentPurpose Purpose { get; set; } + + [JsonProperty("type", Required = Required.Always)] + public ConsentProvision Type { get; set; } } public partial class SomaticNgsReport @@ -861,29 +1206,26 @@ namespace MV64e.MTB [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("issuedOn", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public DateTimeOffset? IssuedOn { get; set; } + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } [JsonProperty("metadata", Required = Required.Always)] - public List Metadata { get; set; } - - [JsonProperty("msi", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public double? Msi { get; set; } + public List Metadata { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } - [JsonProperty("results", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + [JsonProperty("results", Required = Required.Always)] public NgsReportResults Results { get; set; } - [JsonProperty("sequencingType", Required = Required.Always)] - public Coding SequencingType { get; set; } - [JsonProperty("specimen", Required = Required.Always)] - public NgsReportSpecimen Specimen { get; set; } + public Reference Specimen { get; set; } + + [JsonProperty("type", Required = Required.Always)] + public NgsReportCoding Type { get; set; } } - public partial class Metadatum + public partial class NgsReportMetadata { [JsonProperty("kitManufacturer", Required = Required.Always)] public string KitManufacturer { get; set; } @@ -904,7 +1246,7 @@ namespace MV64e.MTB public partial class NgsReportResults { [JsonProperty("brcaness", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public BrcAness Brcaness { get; set; } + public Brcaness Brcaness { get; set; } [JsonProperty("copyNumberVariants", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public List CopyNumberVariants { get; set; } @@ -931,7 +1273,7 @@ namespace MV64e.MTB public TumorCellContent TumorCellContent { get; set; } } - public partial class BrcAness + public partial class Brcaness { [JsonProperty("confidenceRange", Required = Required.Always)] public ConfidenceRange ConfidenceRange { get; set; } @@ -961,7 +1303,7 @@ namespace MV64e.MTB public partial class Cnv { [JsonProperty("chromosome", Required = Required.Always)] - public CodingChromosome Chromosome { get; set; } + public Chromosome Chromosome { get; set; } [JsonProperty("cnA", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public double? CnA { get; set; } @@ -970,61 +1312,40 @@ namespace MV64e.MTB public double? CnB { get; set; } [JsonProperty("copyNumberNeutralLoH", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List CopyNumberNeutralLoH { get; set; } + public List CopyNumberNeutralLoH { get; set; } - [JsonProperty("endRange", Required = Required.Always)] + [JsonProperty("endRange", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public EndRange EndRange { get; set; } + [JsonProperty("externalIds", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List ExternalIds { get; set; } + [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("indication", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Reference Indication { get; set; } + [JsonProperty("localization", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Localization { get; set; } - [JsonProperty("patient", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Patient Patient { get; set; } + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } [JsonProperty("relativeCopyNumber", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public double? RelativeCopyNumber { get; set; } [JsonProperty("reportedAffectedGenes", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List ReportedAffectedGenes { get; set; } + public List ReportedAffectedGenes { get; set; } [JsonProperty("reportedFocality", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string ReportedFocality { get; set; } - [JsonProperty("startRange", Required = Required.Always)] + [JsonProperty("startRange", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public StartRange StartRange { get; set; } [JsonProperty("totalCopyNumber", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public long? TotalCopyNumber { get; set; } [JsonProperty("type", Required = Required.Always)] - public CodingCnvType Type { get; set; } - } - - public partial class CodingChromosome - { - [JsonProperty("code", Required = Required.Always)] - public ChromosomeCode Code { get; set; } - - [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Display { get; set; } - - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public ChromosomeSystem? System { get; set; } - } - - public partial class CodingGene - { - [JsonProperty("code", Required = Required.Always)] - public string Code { get; set; } - - [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Display { get; set; } - - [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public GeneSystem? System { get; set; } + public CnvCoding Type { get; set; } } public partial class EndRange @@ -1036,6 +1357,30 @@ namespace MV64e.MTB public double Start { get; set; } } + public partial class VariantExternalId + { + [JsonProperty("system", Required = Required.Always)] + public ExternalIdSystem System { get; set; } + + [JsonProperty("value", Required = Required.Always)] + public string Value { get; set; } + } + + public partial class BaseVariantLocalizationCoding + { + [JsonProperty("code", Required = Required.Always)] + public BaseVariantLocalizationCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + public partial class StartRange { [JsonProperty("end", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] @@ -1045,20 +1390,26 @@ namespace MV64e.MTB public double Start { get; set; } } - public partial class CodingCnvType + public partial class CnvCoding { [JsonProperty("code", Required = Required.Always)] - public CnvType Code { get; set; } + public CnvCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } public partial class DnaFusion { + [JsonProperty("externalIds", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List ExternalIds { get; set; } + [JsonProperty("fusionPartner3prime", Required = Required.Always)] public DnaFusionFusionPartner3Prime FusionPartner3Prime { get; set; } @@ -1068,6 +1419,12 @@ namespace MV64e.MTB [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } + [JsonProperty("localization", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Localization { get; set; } + + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } + [JsonProperty("reportedNumReads", Required = Required.Always)] public long ReportedNumReads { get; set; } } @@ -1075,10 +1432,10 @@ namespace MV64e.MTB public partial class DnaFusionFusionPartner3Prime { [JsonProperty("chromosome", Required = Required.Always)] - public CodingChromosome Chromosome { get; set; } + public Chromosome Chromosome { get; set; } [JsonProperty("gene", Required = Required.Always)] - public CodingGene Gene { get; set; } + public Coding Gene { get; set; } [JsonProperty("position", Required = Required.Always)] public double Position { get; set; } @@ -1087,24 +1444,15 @@ namespace MV64e.MTB public partial class DnaFusionFusionPartner5Prime { [JsonProperty("chromosome", Required = Required.Always)] - public CodingChromosome Chromosome { get; set; } + public Chromosome Chromosome { get; set; } [JsonProperty("gene", Required = Required.Always)] - public Gene Gene { get; set; } + public Coding Gene { get; set; } [JsonProperty("position", Required = Required.Always)] public double Position { get; set; } } - public partial class Gene - { - [JsonProperty("ensemblId", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string EnsemblId { get; set; } - - [JsonProperty("hgncId", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string HgncId { get; set; } - } - public partial class HrdScore { [JsonProperty("components", Required = Required.Always)] @@ -1114,7 +1462,7 @@ namespace MV64e.MTB public string Id { get; set; } [JsonProperty("interpretation", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding Interpretation { get; set; } + public HrdScoreInterpretationCoding Interpretation { get; set; } [JsonProperty("patient", Required = Required.Always)] public Reference Patient { get; set; } @@ -1138,14 +1486,29 @@ namespace MV64e.MTB public double Tai { get; set; } } + public partial class HrdScoreInterpretationCoding + { + [JsonProperty("code", Required = Required.Always)] + public InterpretationCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + public partial class RnaFusion { - [JsonProperty("cosmicId", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string CosmicId { get; set; } - [JsonProperty("effect", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Effect { get; set; } + [JsonProperty("externalIds", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List ExternalIds { get; set; } + [JsonProperty("fusionPartner3prime", Required = Required.Always)] public RnaFusionFusionPartner3Prime FusionPartner3Prime { get; set; } @@ -1155,17 +1518,23 @@ namespace MV64e.MTB [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } + [JsonProperty("localization", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Localization { get; set; } + + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } + [JsonProperty("reportedNumReads", Required = Required.Always)] public long ReportedNumReads { get; set; } } public partial class RnaFusionFusionPartner3Prime { - [JsonProperty("exon", Required = Required.Always)] - public string Exon { get; set; } + [JsonProperty("exonId", Required = Required.Always)] + public string ExonId { get; set; } [JsonProperty("gene", Required = Required.Always)] - public CodingGene Gene { get; set; } + public Coding Gene { get; set; } [JsonProperty("position", Required = Required.Always)] public double Position { get; set; } @@ -1174,16 +1543,25 @@ namespace MV64e.MTB public RnaFusionStrand Strand { get; set; } [JsonProperty("transcriptId", Required = Required.Always)] - public string TranscriptId { get; set; } + public TranscriptId TranscriptId { get; set; } + } + + public partial class TranscriptId + { + [JsonProperty("system", Required = Required.Always)] + public TranscriptIdSystem System { get; set; } + + [JsonProperty("value", Required = Required.Always)] + public string Value { get; set; } } public partial class RnaFusionFusionPartner5Prime { - [JsonProperty("exon", Required = Required.Always)] - public string Exon { get; set; } + [JsonProperty("exonId", Required = Required.Always)] + public string ExonId { get; set; } [JsonProperty("gene", Required = Required.Always)] - public CodingGene Gene { get; set; } + public Coding Gene { get; set; } [JsonProperty("position", Required = Required.Always)] public double Position { get; set; } @@ -1192,7 +1570,7 @@ namespace MV64e.MTB public RnaFusionStrand Strand { get; set; } [JsonProperty("transcriptId", Required = Required.Always)] - public string TranscriptId { get; set; } + public TranscriptId TranscriptId { get; set; } } public partial class RnaSeq @@ -1200,35 +1578,38 @@ namespace MV64e.MTB [JsonProperty("cohortRanking", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public long? CohortRanking { get; set; } - [JsonProperty("ensemblId", Required = Required.Always)] - public string EnsemblId { get; set; } + [JsonProperty("externalIds", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List ExternalIds { get; set; } - [JsonProperty("entrezId", Required = Required.Always)] - public string EntrezId { get; set; } - - [JsonProperty("fragmentsPerKilobaseMillion", Required = Required.Always)] - public double FragmentsPerKilobaseMillion { get; set; } - - [JsonProperty("fromNGS", Required = Required.Always)] - public bool FromNgs { get; set; } - - [JsonProperty("gene", Required = Required.Always)] - public CodingGene Gene { get; set; } + [JsonProperty("gene", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Coding Gene { get; set; } [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } - [JsonProperty("librarySize", Required = Required.Always)] - public long LibrarySize { get; set; } + [JsonProperty("librarySize", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public long? LibrarySize { get; set; } + + [JsonProperty("localization", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Localization { get; set; } + + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } [JsonProperty("rawCounts", Required = Required.Always)] public long RawCounts { get; set; } - [JsonProperty("tissueCorrectedExpression", Required = Required.Always)] - public bool TissueCorrectedExpression { get; set; } + [JsonProperty("tissueCorrectedExpression", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public bool? TissueCorrectedExpression { get; set; } - [JsonProperty("transcriptId", Required = Required.Always)] - public string TranscriptId { get; set; } + [JsonProperty("transcriptId", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public TranscriptId TranscriptId { get; set; } + + [JsonProperty("transcriptsPerMillion", Required = Required.Always)] + public double TranscriptsPerMillion { get; set; } + + [JsonProperty("variant", Required = Required.Always)] + public Reference Variant { get; set; } } public partial class Snv @@ -1239,41 +1620,38 @@ namespace MV64e.MTB [JsonProperty("altAllele", Required = Required.Always)] public string AltAllele { get; set; } - [JsonProperty("aminoAcidChange", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding AminoAcidChange { get; set; } - [JsonProperty("chromosome", Required = Required.Always)] - public CodingChromosome Chromosome { get; set; } + public Chromosome Chromosome { get; set; } - [JsonProperty("cosmicId", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string CosmicId { get; set; } + [JsonProperty("dnaChange", Required = Required.Always)] + public string DnaChange { get; set; } - [JsonProperty("dbSNPId", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string DbSnpId { get; set; } - - [JsonProperty("dnaChange", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding DnaChange { get; set; } + [JsonProperty("exonId", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string ExonId { get; set; } [JsonProperty("externalIds", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public List ExternalIds { get; set; } + public List ExternalIds { get; set; } - [JsonProperty("gene", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingGene Gene { get; set; } + [JsonProperty("gene", Required = Required.Always)] + public Coding Gene { get; set; } [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } [JsonProperty("interpretation", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding Interpretation { get; set; } + public ClinVarCoding Interpretation { get; set; } + + [JsonProperty("localization", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Localization { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } [JsonProperty("position", Required = Required.Always)] public Position Position { get; set; } [JsonProperty("proteinChange", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding ProteinChange { get; set; } + public string ProteinChange { get; set; } [JsonProperty("readDepth", Required = Required.Always)] public long ReadDepth { get; set; } @@ -1281,8 +1659,23 @@ namespace MV64e.MTB [JsonProperty("refAllele", Required = Required.Always)] public string RefAllele { get; set; } - [JsonProperty("transcriptId", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public ExternalId TranscriptId { get; set; } + [JsonProperty("transcriptId", Required = Required.Always)] + public TranscriptId TranscriptId { get; set; } + } + + public partial class ClinVarCoding + { + [JsonProperty("code", Required = Required.Always)] + public ClinVarCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } public partial class Position @@ -1300,7 +1693,7 @@ namespace MV64e.MTB public string Id { get; set; } [JsonProperty("interpretation", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Coding Interpretation { get; set; } + public TmbInterpretationCoding Interpretation { get; set; } [JsonProperty("patient", Required = Required.Always)] public Reference Patient { get; set; } @@ -1309,34 +1702,55 @@ namespace MV64e.MTB public Reference Specimen { get; set; } [JsonProperty("value", Required = Required.Always)] - public Value Value { get; set; } + public TmbResult Value { get; set; } } - public partial class Value + public partial class TmbInterpretationCoding { - [JsonProperty("unit", Required = Required.Always)] + [JsonProperty("code", Required = Required.Always)] + public InterpretationCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class TmbResult + { + [JsonProperty("unit", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Unit { get; set; } [JsonProperty("value", Required = Required.Always)] - public double ValueValue { get; set; } + public double Value { get; set; } } - public partial class NgsReportSpecimen + public partial class NgsReportCoding { - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } + [JsonProperty("code", Required = Required.Always)] + public NgsReportCodingCode Code { get; set; } - [JsonProperty("type", Required = Required.Always)] - public SpecimenType Type { get; set; } + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } - public partial class MtbPatient + public partial class Patient { - [JsonProperty("address", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + [JsonProperty("address", Required = Required.Always)] public Address Address { get; set; } [JsonProperty("age", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public ValueWithUnit Age { get; set; } + public Age Age { get; set; } [JsonProperty("birthDate", Required = Required.Always)] public DateTimeOffset BirthDate { get; set; } @@ -1345,16 +1759,19 @@ namespace MV64e.MTB public DateTimeOffset? DateOfDeath { get; set; } [JsonProperty("gender", Required = Required.Always)] - public CodingGender Gender { get; set; } + public GenderCoding Gender { get; set; } - [JsonProperty("healthInsurance", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + [JsonProperty("healthInsurance", Required = Required.Always)] public HealthInsurance HealthInsurance { get; set; } [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } + [JsonProperty("managingSite", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Coding ManagingSite { get; set; } + [JsonProperty("vitalStatus", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public VitalStatus VitalStatus { get; set; } + public VitalStatusCoding VitalStatus { get; set; } } public partial class Address @@ -1363,7 +1780,7 @@ namespace MV64e.MTB public string MunicipalityCode { get; set; } } - public partial class ValueWithUnit + public partial class Age { [JsonProperty("unit", Required = Required.Always)] public Unit Unit { get; set; } @@ -1372,10 +1789,10 @@ namespace MV64e.MTB public double Value { get; set; } } - public partial class CodingGender + public partial class GenderCoding { [JsonProperty("code", Required = Required.Always)] - public Gender Code { get; set; } + public GenderCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } @@ -1389,26 +1806,41 @@ namespace MV64e.MTB public partial class HealthInsurance { - [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public string Display { get; set; } + [JsonProperty("reference", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Reference Reference { get; set; } - [JsonProperty("extId", Required = Required.Always)] - public ExternalId ExtId { get; set; } - - [JsonProperty("type", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public TypeEnum? Type { get; set; } + [JsonProperty("type", Required = Required.Always)] + public HealthInsuranceCoding Type { get; set; } } - public partial class VitalStatus + public partial class HealthInsuranceCoding { [JsonProperty("code", Required = Required.Always)] - public VitalStatusCode Code { get; set; } + public HealthInsuranceCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class VitalStatusCoding + { + [JsonProperty("code", Required = Required.Always)] + public VitalStatusCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } public partial class PerformanceStatus @@ -1420,16 +1852,55 @@ namespace MV64e.MTB public string Id { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } [JsonProperty("value", Required = Required.Always)] - public CodingEcog Value { get; set; } + public EcogCoding Value { get; set; } } - public partial class CodingEcog + public partial class EcogCoding { [JsonProperty("code", Required = Required.Always)] - public EcogCode Code { get; set; } + public EcogCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class PriorDiagnosticReport + { + [JsonProperty("id", Required = Required.Always)] + public string Id { get; set; } + + [JsonProperty("issuedOn", Required = Required.Always)] + public DateTimeOffset IssuedOn { get; set; } + + [JsonProperty("patient", Required = Required.Always)] + public Reference Patient { get; set; } + + [JsonProperty("performer", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public Reference Performer { get; set; } + + [JsonProperty("results", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public List Results { get; set; } + + [JsonProperty("specimen", Required = Required.Always)] + public Reference Specimen { get; set; } + + [JsonProperty("type", Required = Required.Always)] + public MolecularDiagnosticReportCoding Type { get; set; } + } + + public partial class MolecularDiagnosticReportCoding + { + [JsonProperty("code", Required = Required.Always)] + public MolecularDiagnosticReportCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } @@ -1449,29 +1920,38 @@ namespace MV64e.MTB [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } + [JsonProperty("method", Required = Required.Always)] + public ResponseMethodCoding Method { get; set; } + [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } [JsonProperty("therapy", Required = Required.Always)] - public ResponseTherapy Therapy { get; set; } + public Reference Therapy { get; set; } [JsonProperty("value", Required = Required.Always)] - public CodingRecist Value { get; set; } + public RecistCoding Value { get; set; } } - public partial class ResponseTherapy - { - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } - - [JsonProperty("type", Required = Required.Always)] - public ResponseTherapyType Type { get; set; } - } - - public partial class CodingRecist + public partial class ResponseMethodCoding { [JsonProperty("code", Required = Required.Always)] - public RecistCode Code { get; set; } + public ResponseMethodCodingCode Code { get; set; } + + [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Display { get; set; } + + [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + } + + public partial class RecistCoding + { + [JsonProperty("code", Required = Required.Always)] + public RecistCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } @@ -1488,145 +1968,187 @@ namespace MV64e.MTB [JsonProperty("collection", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public Collection Collection { get; set; } - [JsonProperty("diagnosis", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public Diagnosis Diagnosis { get; set; } + [JsonProperty("diagnosis", Required = Required.Always)] + public Reference Diagnosis { get; set; } [JsonProperty("id", Required = Required.Always)] public string Id { get; set; } [JsonProperty("patient", Required = Required.Always)] - public Patient Patient { get; set; } + public Reference Patient { get; set; } - [JsonProperty("type", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] - public CodingTumorSpecimenType Type { get; set; } + [JsonProperty("type", Required = Required.Always)] + public TumorSpecimenCoding Type { get; set; } } public partial class Collection { - [JsonProperty("date", Required = Required.Always)] - public DateTimeOffset Date { get; set; } + [JsonProperty("date", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public DateTimeOffset? Date { get; set; } [JsonProperty("localization", Required = Required.Always)] - public CodingTumorSpecimenCollectionLocalization Localization { get; set; } + public TumorSpecimenCollectionLocalizationCoding Localization { get; set; } [JsonProperty("method", Required = Required.Always)] - public CodingTumorSpecimenCollectionMethod Method { get; set; } + public TumorSpecimenCollectionMethodCoding Method { get; set; } } - public partial class CodingTumorSpecimenCollectionLocalization + public partial class TumorSpecimenCollectionLocalizationCoding { [JsonProperty("code", Required = Required.Always)] - public TumorSpecimenCollectionLocalization Code { get; set; } + public TumorSpecimenCollectionLocalizationCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } - public partial class CodingTumorSpecimenCollectionMethod + public partial class TumorSpecimenCollectionMethodCoding { [JsonProperty("code", Required = Required.Always)] - public TumorSpecimenCollectionMethod Code { get; set; } + public TumorSpecimenCollectionMethodCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } - public partial class Diagnosis - { - [JsonProperty("id", Required = Required.Always)] - public string Id { get; set; } - - [JsonProperty("type", Required = Required.Always)] - public string Type { get; set; } - } - - public partial class CodingTumorSpecimenType + public partial class TumorSpecimenCoding { [JsonProperty("code", Required = Required.Always)] - public TumorSpecimenType Code { get; set; } + public TumorSpecimenCodingCode Code { get; set; } [JsonProperty("display", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string Display { get; set; } [JsonProperty("system", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] public string System { get; set; } + + [JsonProperty("version", Required = Required.DisallowNull, NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } } - public partial class Therapy + public partial class SystemicTherapy { [JsonProperty("history", Required = Required.Always)] - public List History { get; set; } + public List History { get; set; } } - public enum PatientType { Patient }; + public enum GeneticCounselingRecommendationReasonCodingCode { FamilyAnamnesis, Other, SecondaryTumor, SelfAnamnesis, Unknown }; - public enum AddendumCode { Is, Iv, R, Z }; + public enum MtbMedicationRecommendationCategoryCodingCode { Ch, Ho, Im, So, Sz, Zs }; - public enum GradingCode { M1A, M1B, M1C, M2A, M2B, M2C, M3, M4, Undefined }; + public enum LevelOfEvidenceAddendumCodingCode { Is, Iv, R, Z }; - public enum ExtIdSystem { HttpsPubmedNcbiNlmNihGov }; + public enum LevelOfEvidenceGradingCodingCode { M1A, M1B, M1C, M2A, M2B, M2C, M3, M4, Undefined }; - public enum TherapyRecommendationPriority { Prio1, Prio2, Prio3, Prio4 }; + public enum PublicationSystem { PubmedNcbiNlmNihGov, DoiOrg }; - public enum ClaimResponseClaimType { Claim }; + public enum RequestedMedicationSystem { HttpFhirDeCodeSystemBfarmAtc, Undefined }; - public enum ClaimResponseStatus { Accepted, Rejected, Unknown }; + public enum RecommendationPriorityCodingCode { Code1, Code2, Code3, Code4 }; - public enum ClaimResponseStatusReason { ApprovalRevocation, FormalReasons, InclusionInStudy, InsufficientEvidence, Other, OtherTherapyRecommended, StandardTherapyNotExhausted, Unknown }; + public enum MtbMedicationRecommendationUseTypeCodingCode { Compassionate, InLabel, OffLabel, SecPreventive, Unknown }; - public enum StageCode { Local, Metastasized, TumorFree, Unknown }; + public enum NoSequencingPerformedReasonCode { NonGeneticCause, NotRareDisease, Other, Psychosomatic, TargetedDiagnosticsRecommended }; - public enum TumorGradeCode { G1, G2, G3, G4, Gx }; + public enum MtbProcedureRecommendationCategoryCodingCode { As, Op, So, St, Ws, Ww }; - public enum TherapyStatus { Completed, NotDone, OnGoing, Stopped, Unknown }; + public enum MtbCarePlanRecommendationsMissingReasonCodingCode { NoTarget }; - public enum StatusReasonCode { ChronicRemission, ContinuedExternally, Deterioration, LostToFu, MedicalReason, NoIndication, Other, OtherTherapyChosen, PatientDeath, PatientRefusal, PatientWish, PaymentEnded, PaymentPending, PaymentRefused, Progression, Toxicity, Unknown }; + public enum StudySystem { Drks, Eudamed, EudraCt, Nct }; - public enum TumorCellContentMethod { Bioinformatic, Histologic }; + public enum ClaimResponseStatusCodingCode { Accepted, Rejected, Unknown }; - public enum SpecimenType { TumorSpecimen }; + public enum ClaimResponseStatusReasonCodingCode { ApprovalRevocation, FormalReasons, InclusionInStudy, InsufficientEvidence, Other, OtherTherapyRecommended, StandardTherapyNotExhausted, Unknown }; - public enum IcScoreCode { Code0, Code1, Code2, Code3 }; + public enum ClaimStageCodingCode { FollowUpClaim, InitialClaim, Revocation, Unknown }; - public enum TcScoreCode { Code0, Code1, Code2, Code3, Code4, Code5, Code6 }; + public enum MtbDiagnosisGuidelineTreatmentStatusCodingCode { Exhausted, Impossible, NoGuidelinesAvailable, NonExhausted, Unknown }; - public enum ProteinExpressionResultCode { Exp, NotExp, Code1Plus, Code2Plus, Code3Plus, Unknown }; + public enum TumorStagingMethodCodingCode { Clinical, Pathologic }; - public enum ChromosomeCode { Chr1, Chr10, Chr11, Chr12, Chr13, Chr14, Chr15, Chr16, Chr17, Chr18, Chr19, Chr2, Chr20, Chr21, Chr22, Chr3, Chr4, Chr5, Chr6, Chr7, Chr8, Chr9, ChrX, ChrY }; + public enum ValueCode { Main, Metachronous, Secondary }; - public enum ChromosomeSystem { Chromosome }; + public enum FollowUpPatientStatusCodingCode { LostToFu }; - public enum GeneSystem { HttpsWwwGenenamesOrg }; + public enum OncoProcedureCodingCode { NuclearMedicine, RadioTherapy, Surgery }; - public enum CnvType { HighLevelGain, Loss, LowLevelGain }; + public enum MtbTherapyIntentCodingCode { K, P, S, X }; + + public enum TherapyStatusCodingCode { Completed, NotDone, OnGoing, Stopped, Unknown }; + + public enum MtbTherapyStatusReasonCodingCode { BestSupportiveCare, ChronicRemission, Deterioration, LostToFu, MedicalReasons, NoIndication, Other, OtherTherapyChosen, PatientDeath, PatientRefusal, PatientWish, PaymentEnded, PaymentPending, PaymentRefused, Progression, RegularCompletion, RegularCompletionWithDosageReduction, RegularCompletionWithSubstanceChange, Toxicity }; + + public enum MtbSystemicTherapyCategoryCodingCode { A, I, N, O, S }; + + public enum MtbSystemicTherapyDosageDensityCodingCode { Over50, Under50 }; + + public enum MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode { Complete, Partial }; + + public enum TumorCellContentMethodCodingCode { Bioinformatic, Histologic }; + + public enum ProteinExpressionIcScoreCodingCode { Code0, Code1, Code2, Code3 }; + + public enum ProteinExpressionTcScoreCodingCode { Code0, Code1, Code2, Code3, Code4, Code5, Code6 }; + + public enum ProteinExpressionResultCodingCode { Exp, NotExp, Code1Plus, Code2Plus, Code3Plus, Unknown }; + + public enum ModelProjectConsentPurpose { CaseIdentification, Reidentification, Sequencing }; + + public enum ConsentProvision { Deny, Permit }; + + public enum MvhSubmissionType { Addition, Correction, Followup, Initial }; + + public enum Chromosome { Chr1, Chr10, Chr11, Chr12, Chr13, Chr14, Chr15, Chr16, Chr17, Chr18, Chr19, Chr2, Chr20, Chr21, Chr22, Chr3, Chr4, Chr5, Chr6, Chr7, Chr8, Chr9, ChrX, ChrY }; + + public enum ExternalIdSystem { CancerSangerAcUkCosmic, EnsemblOrg, NcbiNlmNihGovEntrez, NcbiNlmNihGovSnp }; + + public enum BaseVariantLocalizationCodingCode { CodingRegion, Intergenic, Intronic, RegulatoryRegion, SplicingRegion }; + + public enum CnvCodingCode { HighLevelGain, Loss, LowLevelGain }; + + public enum InterpretationCodingCode { High, Intermediate, Low }; public enum RnaFusionStrand { Empty, RnaFusionStrand }; - public enum Unit { Years }; + public enum TranscriptIdSystem { EnsemblOrg, NcbiNlmNihGovRefseq }; - public enum Gender { Female, Male, Other, Unknown }; + public enum ClinVarCodingCode { Code1, Code2, Code3, Code4, Code5 }; - public enum TypeEnum { Organization }; + public enum NgsReportCodingCode { Array, Exome, GenomeLongRead, GenomeShortRead, Karyotyping, Other, Panel, Single }; - public enum VitalStatusCode { Alive, Deceased }; + public enum Unit { Months, Years }; - public enum EcogCode { Code0, Code1, Code2, Code3, Code4 }; + public enum GenderCodingCode { Female, Male, Other, Unknown }; - public enum ResponseTherapyType { MtbMedicationTherapy }; + public enum HealthInsuranceCodingCode { Bei, Bg, Gkv, Gpv, Pkv, Ppv, Sel, Skt, Soz, Unk }; - public enum RecistCode { Cr, Mr, Na, Nya, Pd, Pr, Sd }; + public enum VitalStatusCodingCode { Alive, Deceased }; - public enum TumorSpecimenCollectionLocalization { Metastasis, PrimaryTumor, Unknown }; + public enum EcogCodingCode { Code0, Code1, Code2, Code3, Code4, Code5 }; - public enum TumorSpecimenCollectionMethod { Biopsy, Cytology, LiquidBiopsy, Resection, Unknown }; + public enum MolecularDiagnosticReportCodingCode { Array, Exome, Fish, FusionPanel, GenePanel, GenomeLongRead, GenomeShortRead, Karyotyping, Other, Panel, Pcr, Single }; - public enum TumorSpecimenType { CryoFrozen, Ffpe, FreshTissue, LiquidBiopsy, Unknown }; + public enum ResponseMethodCodingCode { Rano, Recist }; + + public enum RecistCodingCode { Cr, Mr, Na, Pd, Pr, Sd }; + + public enum TumorSpecimenCollectionLocalizationCodingCode { CellfreeDna, LocalRecurrence, Metastasis, PrimaryTumor, RegionalLymphNodes, Unknown }; + + public enum TumorSpecimenCollectionMethodCodingCode { Biopsy, Cytology, LiquidBiopsy, Resection, Unknown }; + + public enum TumorSpecimenCodingCode { CryoFrozen, Ffpe, FreshTissue, LiquidBiopsy, Unknown }; public partial class Mtb { @@ -1647,56 +2169,86 @@ namespace MV64e.MTB MissingMemberHandling = MissingMemberHandling.Error, Converters = { - PatientTypeConverter.Singleton, - AddendumCodeConverter.Singleton, - GradingCodeConverter.Singleton, - ExtIdSystemConverter.Singleton, - TherapyRecommendationPriorityConverter.Singleton, - ClaimResponseClaimTypeConverter.Singleton, - ClaimResponseStatusConverter.Singleton, - ClaimResponseStatusReasonConverter.Singleton, - StageCodeConverter.Singleton, - TumorGradeCodeConverter.Singleton, - TherapyStatusConverter.Singleton, - StatusReasonCodeConverter.Singleton, - TumorCellContentMethodConverter.Singleton, - SpecimenTypeConverter.Singleton, - IcScoreCodeConverter.Singleton, - TcScoreCodeConverter.Singleton, - ProteinExpressionResultCodeConverter.Singleton, - ChromosomeCodeConverter.Singleton, - ChromosomeSystemConverter.Singleton, - GeneSystemConverter.Singleton, - CnvTypeConverter.Singleton, + GeneticCounselingRecommendationReasonCodingCodeConverter.Singleton, + MtbMedicationRecommendationCategoryCodingCodeConverter.Singleton, + LevelOfEvidenceAddendumCodingCodeConverter.Singleton, + LevelOfEvidenceGradingCodingCodeConverter.Singleton, + PublicationSystemConverter.Singleton, + RequestedMedicationSystemConverter.Singleton, + RecommendationPriorityCodingCodeConverter.Singleton, + MtbMedicationRecommendationUseTypeCodingCodeConverter.Singleton, + NoSequencingPerformedReasonCodeConverter.Singleton, + MtbProcedureRecommendationCategoryCodingCodeConverter.Singleton, + MtbCarePlanRecommendationsMissingReasonCodingCodeConverter.Singleton, + StudySystemConverter.Singleton, + ClaimResponseStatusCodingCodeConverter.Singleton, + ClaimResponseStatusReasonCodingCodeConverter.Singleton, + ClaimStageCodingCodeConverter.Singleton, + MtbDiagnosisGuidelineTreatmentStatusCodingCodeConverter.Singleton, + TumorStagingMethodCodingCodeConverter.Singleton, + ValueCodeConverter.Singleton, + FollowUpPatientStatusCodingCodeConverter.Singleton, + OncoProcedureCodingCodeConverter.Singleton, + MtbTherapyIntentCodingCodeConverter.Singleton, + TherapyStatusCodingCodeConverter.Singleton, + MtbTherapyStatusReasonCodingCodeConverter.Singleton, + MtbSystemicTherapyCategoryCodingCodeConverter.Singleton, + MtbSystemicTherapyDosageDensityCodingCodeConverter.Singleton, + MtbSystemicTherapyRecommendationFulfillmentStatusCodingCodeConverter.Singleton, + TumorCellContentMethodCodingCodeConverter.Singleton, + ProteinExpressionIcScoreCodingCodeConverter.Singleton, + ProteinExpressionTcScoreCodingCodeConverter.Singleton, + ProteinExpressionResultCodingCodeConverter.Singleton, + ModelProjectConsentPurposeConverter.Singleton, + ConsentProvisionConverter.Singleton, + MvhSubmissionTypeConverter.Singleton, + ChromosomeConverter.Singleton, + ExternalIdSystemConverter.Singleton, + BaseVariantLocalizationCodingCodeConverter.Singleton, + CnvCodingCodeConverter.Singleton, + InterpretationCodingCodeConverter.Singleton, RnaFusionStrandConverter.Singleton, + TranscriptIdSystemConverter.Singleton, + ClinVarCodingCodeConverter.Singleton, + NgsReportCodingCodeConverter.Singleton, UnitConverter.Singleton, - GenderConverter.Singleton, - TypeEnumConverter.Singleton, - VitalStatusCodeConverter.Singleton, - EcogCodeConverter.Singleton, - ResponseTherapyTypeConverter.Singleton, - RecistCodeConverter.Singleton, - TumorSpecimenCollectionLocalizationConverter.Singleton, - TumorSpecimenCollectionMethodConverter.Singleton, - TumorSpecimenTypeConverter.Singleton, + GenderCodingCodeConverter.Singleton, + HealthInsuranceCodingCodeConverter.Singleton, + VitalStatusCodingCodeConverter.Singleton, + EcogCodingCodeConverter.Singleton, + MolecularDiagnosticReportCodingCodeConverter.Singleton, + ResponseMethodCodingCodeConverter.Singleton, + RecistCodingCodeConverter.Singleton, + TumorSpecimenCollectionLocalizationCodingCodeConverter.Singleton, + TumorSpecimenCollectionMethodCodingCodeConverter.Singleton, + TumorSpecimenCodingCodeConverter.Singleton, new IsoDateTimeConverter { DateTimeStyles = DateTimeStyles.AssumeUniversal } }, }; } - internal class PatientTypeConverter : JsonConverter + internal class GeneticCounselingRecommendationReasonCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(PatientType) || t == typeof(PatientType?); + public override bool CanConvert(Type t) => t == typeof(GeneticCounselingRecommendationReasonCodingCode) || t == typeof(GeneticCounselingRecommendationReasonCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; var value = serializer.Deserialize(reader); - if (value == "Patient") + switch (value) { - return PatientType.Patient; + case "family-anamnesis": + return GeneticCounselingRecommendationReasonCodingCode.FamilyAnamnesis; + case "other": + return GeneticCounselingRecommendationReasonCodingCode.Other; + case "secondary-tumor": + return GeneticCounselingRecommendationReasonCodingCode.SecondaryTumor; + case "self-anamnesis": + return GeneticCounselingRecommendationReasonCodingCode.SelfAnamnesis; + case "unknown": + return GeneticCounselingRecommendationReasonCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type PatientType"); + throw new Exception("Cannot unmarshal type GeneticCounselingRecommendationReasonCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -1706,21 +2258,95 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (PatientType)untypedValue; - if (value == PatientType.Patient) + var value = (GeneticCounselingRecommendationReasonCodingCode)untypedValue; + switch (value) { - serializer.Serialize(writer, "Patient"); - return; + case GeneticCounselingRecommendationReasonCodingCode.FamilyAnamnesis: + serializer.Serialize(writer, "family-anamnesis"); + return; + case GeneticCounselingRecommendationReasonCodingCode.Other: + serializer.Serialize(writer, "other"); + return; + case GeneticCounselingRecommendationReasonCodingCode.SecondaryTumor: + serializer.Serialize(writer, "secondary-tumor"); + return; + case GeneticCounselingRecommendationReasonCodingCode.SelfAnamnesis: + serializer.Serialize(writer, "self-anamnesis"); + return; + case GeneticCounselingRecommendationReasonCodingCode.Unknown: + serializer.Serialize(writer, "unknown"); + return; } - throw new Exception("Cannot marshal type PatientType"); + throw new Exception("Cannot marshal type GeneticCounselingRecommendationReasonCodingCode"); } - public static readonly PatientTypeConverter Singleton = new PatientTypeConverter(); + public static readonly GeneticCounselingRecommendationReasonCodingCodeConverter Singleton = new GeneticCounselingRecommendationReasonCodingCodeConverter(); } - internal class AddendumCodeConverter : JsonConverter + internal class MtbMedicationRecommendationCategoryCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(AddendumCode) || t == typeof(AddendumCode?); + public override bool CanConvert(Type t) => t == typeof(MtbMedicationRecommendationCategoryCodingCode) || t == typeof(MtbMedicationRecommendationCategoryCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "CH": + return MtbMedicationRecommendationCategoryCodingCode.Ch; + case "HO": + return MtbMedicationRecommendationCategoryCodingCode.Ho; + case "IM": + return MtbMedicationRecommendationCategoryCodingCode.Im; + case "SO": + return MtbMedicationRecommendationCategoryCodingCode.So; + case "SZ": + return MtbMedicationRecommendationCategoryCodingCode.Sz; + case "ZS": + return MtbMedicationRecommendationCategoryCodingCode.Zs; + } + throw new Exception("Cannot unmarshal type MtbMedicationRecommendationCategoryCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (MtbMedicationRecommendationCategoryCodingCode)untypedValue; + switch (value) + { + case MtbMedicationRecommendationCategoryCodingCode.Ch: + serializer.Serialize(writer, "CH"); + return; + case MtbMedicationRecommendationCategoryCodingCode.Ho: + serializer.Serialize(writer, "HO"); + return; + case MtbMedicationRecommendationCategoryCodingCode.Im: + serializer.Serialize(writer, "IM"); + return; + case MtbMedicationRecommendationCategoryCodingCode.So: + serializer.Serialize(writer, "SO"); + return; + case MtbMedicationRecommendationCategoryCodingCode.Sz: + serializer.Serialize(writer, "SZ"); + return; + case MtbMedicationRecommendationCategoryCodingCode.Zs: + serializer.Serialize(writer, "ZS"); + return; + } + throw new Exception("Cannot marshal type MtbMedicationRecommendationCategoryCodingCode"); + } + + public static readonly MtbMedicationRecommendationCategoryCodingCodeConverter Singleton = new MtbMedicationRecommendationCategoryCodingCodeConverter(); + } + + internal class LevelOfEvidenceAddendumCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(LevelOfEvidenceAddendumCodingCode) || t == typeof(LevelOfEvidenceAddendumCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -1729,15 +2355,15 @@ namespace MV64e.MTB switch (value) { case "R": - return AddendumCode.R; + return LevelOfEvidenceAddendumCodingCode.R; case "Z": - return AddendumCode.Z; + return LevelOfEvidenceAddendumCodingCode.Z; case "is": - return AddendumCode.Is; + return LevelOfEvidenceAddendumCodingCode.Is; case "iv": - return AddendumCode.Iv; + return LevelOfEvidenceAddendumCodingCode.Iv; } - throw new Exception("Cannot unmarshal type AddendumCode"); + throw new Exception("Cannot unmarshal type LevelOfEvidenceAddendumCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -1747,31 +2373,31 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (AddendumCode)untypedValue; + var value = (LevelOfEvidenceAddendumCodingCode)untypedValue; switch (value) { - case AddendumCode.R: + case LevelOfEvidenceAddendumCodingCode.R: serializer.Serialize(writer, "R"); return; - case AddendumCode.Z: + case LevelOfEvidenceAddendumCodingCode.Z: serializer.Serialize(writer, "Z"); return; - case AddendumCode.Is: + case LevelOfEvidenceAddendumCodingCode.Is: serializer.Serialize(writer, "is"); return; - case AddendumCode.Iv: + case LevelOfEvidenceAddendumCodingCode.Iv: serializer.Serialize(writer, "iv"); return; } - throw new Exception("Cannot marshal type AddendumCode"); + throw new Exception("Cannot marshal type LevelOfEvidenceAddendumCodingCode"); } - public static readonly AddendumCodeConverter Singleton = new AddendumCodeConverter(); + public static readonly LevelOfEvidenceAddendumCodingCodeConverter Singleton = new LevelOfEvidenceAddendumCodingCodeConverter(); } - internal class GradingCodeConverter : JsonConverter + internal class LevelOfEvidenceGradingCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(GradingCode) || t == typeof(GradingCode?); + public override bool CanConvert(Type t) => t == typeof(LevelOfEvidenceGradingCodingCode) || t == typeof(LevelOfEvidenceGradingCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -1780,25 +2406,25 @@ namespace MV64e.MTB switch (value) { case "m1A": - return GradingCode.M1A; + return LevelOfEvidenceGradingCodingCode.M1A; case "m1B": - return GradingCode.M1B; + return LevelOfEvidenceGradingCodingCode.M1B; case "m1C": - return GradingCode.M1C; + return LevelOfEvidenceGradingCodingCode.M1C; case "m2A": - return GradingCode.M2A; + return LevelOfEvidenceGradingCodingCode.M2A; case "m2B": - return GradingCode.M2B; + return LevelOfEvidenceGradingCodingCode.M2B; case "m2C": - return GradingCode.M2C; + return LevelOfEvidenceGradingCodingCode.M2C; case "m3": - return GradingCode.M3; + return LevelOfEvidenceGradingCodingCode.M3; case "m4": - return GradingCode.M4; + return LevelOfEvidenceGradingCodingCode.M4; case "undefined": - return GradingCode.Undefined; + return LevelOfEvidenceGradingCodingCode.Undefined; } - throw new Exception("Cannot unmarshal type GradingCode"); + throw new Exception("Cannot unmarshal type LevelOfEvidenceGradingCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -1808,56 +2434,59 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (GradingCode)untypedValue; + var value = (LevelOfEvidenceGradingCodingCode)untypedValue; switch (value) { - case GradingCode.M1A: + case LevelOfEvidenceGradingCodingCode.M1A: serializer.Serialize(writer, "m1A"); return; - case GradingCode.M1B: + case LevelOfEvidenceGradingCodingCode.M1B: serializer.Serialize(writer, "m1B"); return; - case GradingCode.M1C: + case LevelOfEvidenceGradingCodingCode.M1C: serializer.Serialize(writer, "m1C"); return; - case GradingCode.M2A: + case LevelOfEvidenceGradingCodingCode.M2A: serializer.Serialize(writer, "m2A"); return; - case GradingCode.M2B: + case LevelOfEvidenceGradingCodingCode.M2B: serializer.Serialize(writer, "m2B"); return; - case GradingCode.M2C: + case LevelOfEvidenceGradingCodingCode.M2C: serializer.Serialize(writer, "m2C"); return; - case GradingCode.M3: + case LevelOfEvidenceGradingCodingCode.M3: serializer.Serialize(writer, "m3"); return; - case GradingCode.M4: + case LevelOfEvidenceGradingCodingCode.M4: serializer.Serialize(writer, "m4"); return; - case GradingCode.Undefined: + case LevelOfEvidenceGradingCodingCode.Undefined: serializer.Serialize(writer, "undefined"); return; } - throw new Exception("Cannot marshal type GradingCode"); + throw new Exception("Cannot marshal type LevelOfEvidenceGradingCodingCode"); } - public static readonly GradingCodeConverter Singleton = new GradingCodeConverter(); + public static readonly LevelOfEvidenceGradingCodingCodeConverter Singleton = new LevelOfEvidenceGradingCodingCodeConverter(); } - internal class ExtIdSystemConverter : JsonConverter + internal class PublicationSystemConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(ExtIdSystem) || t == typeof(ExtIdSystem?); + public override bool CanConvert(Type t) => t == typeof(PublicationSystem) || t == typeof(PublicationSystem?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; var value = serializer.Deserialize(reader); - if (value == "https://pubmed.ncbi.nlm.nih.gov/") + switch (value) { - return ExtIdSystem.HttpsPubmedNcbiNlmNihGov; + case "https://pubmed.ncbi.nlm.nih.gov": + return PublicationSystem.PubmedNcbiNlmNihGov; + case "https://www.doi.org": + return PublicationSystem.DoiOrg; } - throw new Exception("Cannot unmarshal type ExtIdSystem"); + throw new Exception("Cannot unmarshal type PublicationSystem"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -1867,21 +2496,66 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (ExtIdSystem)untypedValue; - if (value == ExtIdSystem.HttpsPubmedNcbiNlmNihGov) + var value = (PublicationSystem)untypedValue; + switch (value) { - serializer.Serialize(writer, "https://pubmed.ncbi.nlm.nih.gov/"); - return; + case PublicationSystem.PubmedNcbiNlmNihGov: + serializer.Serialize(writer, "https://pubmed.ncbi.nlm.nih.gov"); + return; + case PublicationSystem.DoiOrg: + serializer.Serialize(writer, "https://www.doi.org"); + return; } - throw new Exception("Cannot marshal type ExtIdSystem"); + throw new Exception("Cannot marshal type PublicationSystem"); } - public static readonly ExtIdSystemConverter Singleton = new ExtIdSystemConverter(); + public static readonly PublicationSystemConverter Singleton = new PublicationSystemConverter(); } - internal class TherapyRecommendationPriorityConverter : JsonConverter + internal class RequestedMedicationSystemConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(TherapyRecommendationPriority) || t == typeof(TherapyRecommendationPriority?); + public override bool CanConvert(Type t) => t == typeof(RequestedMedicationSystem) || t == typeof(RequestedMedicationSystem?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "http://fhir.de/CodeSystem/bfarm/atc": + return RequestedMedicationSystem.HttpFhirDeCodeSystemBfarmAtc; + case "undefined": + return RequestedMedicationSystem.Undefined; + } + throw new Exception("Cannot unmarshal type RequestedMedicationSystem"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (RequestedMedicationSystem)untypedValue; + switch (value) + { + case RequestedMedicationSystem.HttpFhirDeCodeSystemBfarmAtc: + serializer.Serialize(writer, "http://fhir.de/CodeSystem/bfarm/atc"); + return; + case RequestedMedicationSystem.Undefined: + serializer.Serialize(writer, "undefined"); + return; + } + throw new Exception("Cannot marshal type RequestedMedicationSystem"); + } + + public static readonly RequestedMedicationSystemConverter Singleton = new RequestedMedicationSystemConverter(); + } + + internal class RecommendationPriorityCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(RecommendationPriorityCodingCode) || t == typeof(RecommendationPriorityCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -1890,15 +2564,15 @@ namespace MV64e.MTB switch (value) { case "1": - return TherapyRecommendationPriority.Prio1; + return RecommendationPriorityCodingCode.Code1; case "2": - return TherapyRecommendationPriority.Prio2; + return RecommendationPriorityCodingCode.Code2; case "3": - return TherapyRecommendationPriority.Prio3; + return RecommendationPriorityCodingCode.Code3; case "4": - return TherapyRecommendationPriority.Prio4; + return RecommendationPriorityCodingCode.Code4; } - throw new Exception("Cannot unmarshal type TherapyRecommendationPriority"); + throw new Exception("Cannot unmarshal type RecommendationPriorityCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -1908,41 +2582,50 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (TherapyRecommendationPriority)untypedValue; + var value = (RecommendationPriorityCodingCode)untypedValue; switch (value) { - case TherapyRecommendationPriority.Prio1: + case RecommendationPriorityCodingCode.Code1: serializer.Serialize(writer, "1"); return; - case TherapyRecommendationPriority.Prio2: + case RecommendationPriorityCodingCode.Code2: serializer.Serialize(writer, "2"); return; - case TherapyRecommendationPriority.Prio3: + case RecommendationPriorityCodingCode.Code3: serializer.Serialize(writer, "3"); return; - case TherapyRecommendationPriority.Prio4: + case RecommendationPriorityCodingCode.Code4: serializer.Serialize(writer, "4"); return; } - throw new Exception("Cannot marshal type TherapyRecommendationPriority"); + throw new Exception("Cannot marshal type RecommendationPriorityCodingCode"); } - public static readonly TherapyRecommendationPriorityConverter Singleton = new TherapyRecommendationPriorityConverter(); + public static readonly RecommendationPriorityCodingCodeConverter Singleton = new RecommendationPriorityCodingCodeConverter(); } - internal class ClaimResponseClaimTypeConverter : JsonConverter + internal class MtbMedicationRecommendationUseTypeCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(ClaimResponseClaimType) || t == typeof(ClaimResponseClaimType?); + public override bool CanConvert(Type t) => t == typeof(MtbMedicationRecommendationUseTypeCodingCode) || t == typeof(MtbMedicationRecommendationUseTypeCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; var value = serializer.Deserialize(reader); - if (value == "Claim") + switch (value) { - return ClaimResponseClaimType.Claim; + case "compassionate": + return MtbMedicationRecommendationUseTypeCodingCode.Compassionate; + case "in-label": + return MtbMedicationRecommendationUseTypeCodingCode.InLabel; + case "off-label": + return MtbMedicationRecommendationUseTypeCodingCode.OffLabel; + case "sec-preventive": + return MtbMedicationRecommendationUseTypeCodingCode.SecPreventive; + case "unknown": + return MtbMedicationRecommendationUseTypeCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type ClaimResponseClaimType"); + throw new Exception("Cannot unmarshal type MtbMedicationRecommendationUseTypeCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -1952,21 +2635,236 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (ClaimResponseClaimType)untypedValue; - if (value == ClaimResponseClaimType.Claim) + var value = (MtbMedicationRecommendationUseTypeCodingCode)untypedValue; + switch (value) { - serializer.Serialize(writer, "Claim"); - return; + case MtbMedicationRecommendationUseTypeCodingCode.Compassionate: + serializer.Serialize(writer, "compassionate"); + return; + case MtbMedicationRecommendationUseTypeCodingCode.InLabel: + serializer.Serialize(writer, "in-label"); + return; + case MtbMedicationRecommendationUseTypeCodingCode.OffLabel: + serializer.Serialize(writer, "off-label"); + return; + case MtbMedicationRecommendationUseTypeCodingCode.SecPreventive: + serializer.Serialize(writer, "sec-preventive"); + return; + case MtbMedicationRecommendationUseTypeCodingCode.Unknown: + serializer.Serialize(writer, "unknown"); + return; } - throw new Exception("Cannot marshal type ClaimResponseClaimType"); + throw new Exception("Cannot marshal type MtbMedicationRecommendationUseTypeCodingCode"); } - public static readonly ClaimResponseClaimTypeConverter Singleton = new ClaimResponseClaimTypeConverter(); + public static readonly MtbMedicationRecommendationUseTypeCodingCodeConverter Singleton = new MtbMedicationRecommendationUseTypeCodingCodeConverter(); } - internal class ClaimResponseStatusConverter : JsonConverter + internal class NoSequencingPerformedReasonCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(ClaimResponseStatus) || t == typeof(ClaimResponseStatus?); + public override bool CanConvert(Type t) => t == typeof(NoSequencingPerformedReasonCode) || t == typeof(NoSequencingPerformedReasonCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "non-genetic-cause": + return NoSequencingPerformedReasonCode.NonGeneticCause; + case "not-rare-disease": + return NoSequencingPerformedReasonCode.NotRareDisease; + case "other": + return NoSequencingPerformedReasonCode.Other; + case "psychosomatic": + return NoSequencingPerformedReasonCode.Psychosomatic; + case "targeted-diagnostics-recommended": + return NoSequencingPerformedReasonCode.TargetedDiagnosticsRecommended; + } + throw new Exception("Cannot unmarshal type NoSequencingPerformedReasonCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (NoSequencingPerformedReasonCode)untypedValue; + switch (value) + { + case NoSequencingPerformedReasonCode.NonGeneticCause: + serializer.Serialize(writer, "non-genetic-cause"); + return; + case NoSequencingPerformedReasonCode.NotRareDisease: + serializer.Serialize(writer, "not-rare-disease"); + return; + case NoSequencingPerformedReasonCode.Other: + serializer.Serialize(writer, "other"); + return; + case NoSequencingPerformedReasonCode.Psychosomatic: + serializer.Serialize(writer, "psychosomatic"); + return; + case NoSequencingPerformedReasonCode.TargetedDiagnosticsRecommended: + serializer.Serialize(writer, "targeted-diagnostics-recommended"); + return; + } + throw new Exception("Cannot marshal type NoSequencingPerformedReasonCode"); + } + + public static readonly NoSequencingPerformedReasonCodeConverter Singleton = new NoSequencingPerformedReasonCodeConverter(); + } + + internal class MtbProcedureRecommendationCategoryCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(MtbProcedureRecommendationCategoryCodingCode) || t == typeof(MtbProcedureRecommendationCategoryCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "AS": + return MtbProcedureRecommendationCategoryCodingCode.As; + case "OP": + return MtbProcedureRecommendationCategoryCodingCode.Op; + case "SO": + return MtbProcedureRecommendationCategoryCodingCode.So; + case "ST": + return MtbProcedureRecommendationCategoryCodingCode.St; + case "WS": + return MtbProcedureRecommendationCategoryCodingCode.Ws; + case "WW": + return MtbProcedureRecommendationCategoryCodingCode.Ww; + } + throw new Exception("Cannot unmarshal type MtbProcedureRecommendationCategoryCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (MtbProcedureRecommendationCategoryCodingCode)untypedValue; + switch (value) + { + case MtbProcedureRecommendationCategoryCodingCode.As: + serializer.Serialize(writer, "AS"); + return; + case MtbProcedureRecommendationCategoryCodingCode.Op: + serializer.Serialize(writer, "OP"); + return; + case MtbProcedureRecommendationCategoryCodingCode.So: + serializer.Serialize(writer, "SO"); + return; + case MtbProcedureRecommendationCategoryCodingCode.St: + serializer.Serialize(writer, "ST"); + return; + case MtbProcedureRecommendationCategoryCodingCode.Ws: + serializer.Serialize(writer, "WS"); + return; + case MtbProcedureRecommendationCategoryCodingCode.Ww: + serializer.Serialize(writer, "WW"); + return; + } + throw new Exception("Cannot marshal type MtbProcedureRecommendationCategoryCodingCode"); + } + + public static readonly MtbProcedureRecommendationCategoryCodingCodeConverter Singleton = new MtbProcedureRecommendationCategoryCodingCodeConverter(); + } + + internal class MtbCarePlanRecommendationsMissingReasonCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(MtbCarePlanRecommendationsMissingReasonCodingCode) || t == typeof(MtbCarePlanRecommendationsMissingReasonCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + if (value == "no-target") + { + return MtbCarePlanRecommendationsMissingReasonCodingCode.NoTarget; + } + throw new Exception("Cannot unmarshal type MtbCarePlanRecommendationsMissingReasonCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (MtbCarePlanRecommendationsMissingReasonCodingCode)untypedValue; + if (value == MtbCarePlanRecommendationsMissingReasonCodingCode.NoTarget) + { + serializer.Serialize(writer, "no-target"); + return; + } + throw new Exception("Cannot marshal type MtbCarePlanRecommendationsMissingReasonCodingCode"); + } + + public static readonly MtbCarePlanRecommendationsMissingReasonCodingCodeConverter Singleton = new MtbCarePlanRecommendationsMissingReasonCodingCodeConverter(); + } + + internal class StudySystemConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(StudySystem) || t == typeof(StudySystem?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "DRKS": + return StudySystem.Drks; + case "EUDAMED": + return StudySystem.Eudamed; + case "Eudra-CT": + return StudySystem.EudraCt; + case "NCT": + return StudySystem.Nct; + } + throw new Exception("Cannot unmarshal type StudySystem"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (StudySystem)untypedValue; + switch (value) + { + case StudySystem.Drks: + serializer.Serialize(writer, "DRKS"); + return; + case StudySystem.Eudamed: + serializer.Serialize(writer, "EUDAMED"); + return; + case StudySystem.EudraCt: + serializer.Serialize(writer, "Eudra-CT"); + return; + case StudySystem.Nct: + serializer.Serialize(writer, "NCT"); + return; + } + throw new Exception("Cannot marshal type StudySystem"); + } + + public static readonly StudySystemConverter Singleton = new StudySystemConverter(); + } + + internal class ClaimResponseStatusCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(ClaimResponseStatusCodingCode) || t == typeof(ClaimResponseStatusCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -1975,13 +2873,13 @@ namespace MV64e.MTB switch (value) { case "accepted": - return ClaimResponseStatus.Accepted; + return ClaimResponseStatusCodingCode.Accepted; case "rejected": - return ClaimResponseStatus.Rejected; + return ClaimResponseStatusCodingCode.Rejected; case "unknown": - return ClaimResponseStatus.Unknown; + return ClaimResponseStatusCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type ClaimResponseStatus"); + throw new Exception("Cannot unmarshal type ClaimResponseStatusCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -1991,28 +2889,28 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (ClaimResponseStatus)untypedValue; + var value = (ClaimResponseStatusCodingCode)untypedValue; switch (value) { - case ClaimResponseStatus.Accepted: + case ClaimResponseStatusCodingCode.Accepted: serializer.Serialize(writer, "accepted"); return; - case ClaimResponseStatus.Rejected: + case ClaimResponseStatusCodingCode.Rejected: serializer.Serialize(writer, "rejected"); return; - case ClaimResponseStatus.Unknown: + case ClaimResponseStatusCodingCode.Unknown: serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type ClaimResponseStatus"); + throw new Exception("Cannot marshal type ClaimResponseStatusCodingCode"); } - public static readonly ClaimResponseStatusConverter Singleton = new ClaimResponseStatusConverter(); + public static readonly ClaimResponseStatusCodingCodeConverter Singleton = new ClaimResponseStatusCodingCodeConverter(); } - internal class ClaimResponseStatusReasonConverter : JsonConverter + internal class ClaimResponseStatusReasonCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(ClaimResponseStatusReason) || t == typeof(ClaimResponseStatusReason?); + public override bool CanConvert(Type t) => t == typeof(ClaimResponseStatusReasonCodingCode) || t == typeof(ClaimResponseStatusReasonCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2021,23 +2919,23 @@ namespace MV64e.MTB switch (value) { case "approval-revocation": - return ClaimResponseStatusReason.ApprovalRevocation; + return ClaimResponseStatusReasonCodingCode.ApprovalRevocation; case "formal-reasons": - return ClaimResponseStatusReason.FormalReasons; + return ClaimResponseStatusReasonCodingCode.FormalReasons; case "inclusion-in-study": - return ClaimResponseStatusReason.InclusionInStudy; + return ClaimResponseStatusReasonCodingCode.InclusionInStudy; case "insufficient-evidence": - return ClaimResponseStatusReason.InsufficientEvidence; + return ClaimResponseStatusReasonCodingCode.InsufficientEvidence; case "other": - return ClaimResponseStatusReason.Other; + return ClaimResponseStatusReasonCodingCode.Other; case "other-therapy-recommended": - return ClaimResponseStatusReason.OtherTherapyRecommended; + return ClaimResponseStatusReasonCodingCode.OtherTherapyRecommended; case "standard-therapy-not-exhausted": - return ClaimResponseStatusReason.StandardTherapyNotExhausted; + return ClaimResponseStatusReasonCodingCode.StandardTherapyNotExhausted; case "unknown": - return ClaimResponseStatusReason.Unknown; + return ClaimResponseStatusReasonCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type ClaimResponseStatusReason"); + throw new Exception("Cannot unmarshal type ClaimResponseStatusReasonCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2047,43 +2945,43 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (ClaimResponseStatusReason)untypedValue; + var value = (ClaimResponseStatusReasonCodingCode)untypedValue; switch (value) { - case ClaimResponseStatusReason.ApprovalRevocation: + case ClaimResponseStatusReasonCodingCode.ApprovalRevocation: serializer.Serialize(writer, "approval-revocation"); return; - case ClaimResponseStatusReason.FormalReasons: + case ClaimResponseStatusReasonCodingCode.FormalReasons: serializer.Serialize(writer, "formal-reasons"); return; - case ClaimResponseStatusReason.InclusionInStudy: + case ClaimResponseStatusReasonCodingCode.InclusionInStudy: serializer.Serialize(writer, "inclusion-in-study"); return; - case ClaimResponseStatusReason.InsufficientEvidence: + case ClaimResponseStatusReasonCodingCode.InsufficientEvidence: serializer.Serialize(writer, "insufficient-evidence"); return; - case ClaimResponseStatusReason.Other: + case ClaimResponseStatusReasonCodingCode.Other: serializer.Serialize(writer, "other"); return; - case ClaimResponseStatusReason.OtherTherapyRecommended: + case ClaimResponseStatusReasonCodingCode.OtherTherapyRecommended: serializer.Serialize(writer, "other-therapy-recommended"); return; - case ClaimResponseStatusReason.StandardTherapyNotExhausted: + case ClaimResponseStatusReasonCodingCode.StandardTherapyNotExhausted: serializer.Serialize(writer, "standard-therapy-not-exhausted"); return; - case ClaimResponseStatusReason.Unknown: + case ClaimResponseStatusReasonCodingCode.Unknown: serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type ClaimResponseStatusReason"); + throw new Exception("Cannot marshal type ClaimResponseStatusReasonCodingCode"); } - public static readonly ClaimResponseStatusReasonConverter Singleton = new ClaimResponseStatusReasonConverter(); + public static readonly ClaimResponseStatusReasonCodingCodeConverter Singleton = new ClaimResponseStatusReasonCodingCodeConverter(); } - internal class StageCodeConverter : JsonConverter + internal class ClaimStageCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(StageCode) || t == typeof(StageCode?); + public override bool CanConvert(Type t) => t == typeof(ClaimStageCodingCode) || t == typeof(ClaimStageCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2091,16 +2989,16 @@ namespace MV64e.MTB var value = serializer.Deserialize(reader); switch (value) { - case "local": - return StageCode.Local; - case "metastasized": - return StageCode.Metastasized; - case "tumor-free": - return StageCode.TumorFree; + case "follow-up-claim": + return ClaimStageCodingCode.FollowUpClaim; + case "initial-claim": + return ClaimStageCodingCode.InitialClaim; + case "revocation": + return ClaimStageCodingCode.Revocation; case "unknown": - return StageCode.Unknown; + return ClaimStageCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type StageCode"); + throw new Exception("Cannot unmarshal type ClaimStageCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2110,31 +3008,31 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (StageCode)untypedValue; + var value = (ClaimStageCodingCode)untypedValue; switch (value) { - case StageCode.Local: - serializer.Serialize(writer, "local"); + case ClaimStageCodingCode.FollowUpClaim: + serializer.Serialize(writer, "follow-up-claim"); return; - case StageCode.Metastasized: - serializer.Serialize(writer, "metastasized"); + case ClaimStageCodingCode.InitialClaim: + serializer.Serialize(writer, "initial-claim"); return; - case StageCode.TumorFree: - serializer.Serialize(writer, "tumor-free"); + case ClaimStageCodingCode.Revocation: + serializer.Serialize(writer, "revocation"); return; - case StageCode.Unknown: + case ClaimStageCodingCode.Unknown: serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type StageCode"); + throw new Exception("Cannot marshal type ClaimStageCodingCode"); } - public static readonly StageCodeConverter Singleton = new StageCodeConverter(); + public static readonly ClaimStageCodingCodeConverter Singleton = new ClaimStageCodingCodeConverter(); } - internal class TumorGradeCodeConverter : JsonConverter + internal class MtbDiagnosisGuidelineTreatmentStatusCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(TumorGradeCode) || t == typeof(TumorGradeCode?); + public override bool CanConvert(Type t) => t == typeof(MtbDiagnosisGuidelineTreatmentStatusCodingCode) || t == typeof(MtbDiagnosisGuidelineTreatmentStatusCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2142,18 +3040,18 @@ namespace MV64e.MTB var value = serializer.Deserialize(reader); switch (value) { - case "G1": - return TumorGradeCode.G1; - case "G2": - return TumorGradeCode.G2; - case "G3": - return TumorGradeCode.G3; - case "G4": - return TumorGradeCode.G4; - case "GX": - return TumorGradeCode.Gx; + case "exhausted": + return MtbDiagnosisGuidelineTreatmentStatusCodingCode.Exhausted; + case "impossible": + return MtbDiagnosisGuidelineTreatmentStatusCodingCode.Impossible; + case "no-guidelines-available": + return MtbDiagnosisGuidelineTreatmentStatusCodingCode.NoGuidelinesAvailable; + case "non-exhausted": + return MtbDiagnosisGuidelineTreatmentStatusCodingCode.NonExhausted; + case "unknown": + return MtbDiagnosisGuidelineTreatmentStatusCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type TumorGradeCode"); + throw new Exception("Cannot unmarshal type MtbDiagnosisGuidelineTreatmentStatusCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2163,34 +3061,252 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (TumorGradeCode)untypedValue; + var value = (MtbDiagnosisGuidelineTreatmentStatusCodingCode)untypedValue; switch (value) { - case TumorGradeCode.G1: - serializer.Serialize(writer, "G1"); + case MtbDiagnosisGuidelineTreatmentStatusCodingCode.Exhausted: + serializer.Serialize(writer, "exhausted"); return; - case TumorGradeCode.G2: - serializer.Serialize(writer, "G2"); + case MtbDiagnosisGuidelineTreatmentStatusCodingCode.Impossible: + serializer.Serialize(writer, "impossible"); return; - case TumorGradeCode.G3: - serializer.Serialize(writer, "G3"); + case MtbDiagnosisGuidelineTreatmentStatusCodingCode.NoGuidelinesAvailable: + serializer.Serialize(writer, "no-guidelines-available"); return; - case TumorGradeCode.G4: - serializer.Serialize(writer, "G4"); + case MtbDiagnosisGuidelineTreatmentStatusCodingCode.NonExhausted: + serializer.Serialize(writer, "non-exhausted"); return; - case TumorGradeCode.Gx: - serializer.Serialize(writer, "GX"); + case MtbDiagnosisGuidelineTreatmentStatusCodingCode.Unknown: + serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type TumorGradeCode"); + throw new Exception("Cannot marshal type MtbDiagnosisGuidelineTreatmentStatusCodingCode"); } - public static readonly TumorGradeCodeConverter Singleton = new TumorGradeCodeConverter(); + public static readonly MtbDiagnosisGuidelineTreatmentStatusCodingCodeConverter Singleton = new MtbDiagnosisGuidelineTreatmentStatusCodingCodeConverter(); } - internal class TherapyStatusConverter : JsonConverter + internal class TumorStagingMethodCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(TherapyStatus) || t == typeof(TherapyStatus?); + public override bool CanConvert(Type t) => t == typeof(TumorStagingMethodCodingCode) || t == typeof(TumorStagingMethodCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "clinical": + return TumorStagingMethodCodingCode.Clinical; + case "pathologic": + return TumorStagingMethodCodingCode.Pathologic; + } + throw new Exception("Cannot unmarshal type TumorStagingMethodCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (TumorStagingMethodCodingCode)untypedValue; + switch (value) + { + case TumorStagingMethodCodingCode.Clinical: + serializer.Serialize(writer, "clinical"); + return; + case TumorStagingMethodCodingCode.Pathologic: + serializer.Serialize(writer, "pathologic"); + return; + } + throw new Exception("Cannot marshal type TumorStagingMethodCodingCode"); + } + + public static readonly TumorStagingMethodCodingCodeConverter Singleton = new TumorStagingMethodCodingCodeConverter(); + } + + internal class ValueCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(ValueCode) || t == typeof(ValueCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "main": + return ValueCode.Main; + case "metachronous": + return ValueCode.Metachronous; + case "secondary": + return ValueCode.Secondary; + } + throw new Exception("Cannot unmarshal type ValueCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (ValueCode)untypedValue; + switch (value) + { + case ValueCode.Main: + serializer.Serialize(writer, "main"); + return; + case ValueCode.Metachronous: + serializer.Serialize(writer, "metachronous"); + return; + case ValueCode.Secondary: + serializer.Serialize(writer, "secondary"); + return; + } + throw new Exception("Cannot marshal type ValueCode"); + } + + public static readonly ValueCodeConverter Singleton = new ValueCodeConverter(); + } + + internal class FollowUpPatientStatusCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(FollowUpPatientStatusCodingCode) || t == typeof(FollowUpPatientStatusCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + if (value == "lost-to-fu") + { + return FollowUpPatientStatusCodingCode.LostToFu; + } + throw new Exception("Cannot unmarshal type FollowUpPatientStatusCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (FollowUpPatientStatusCodingCode)untypedValue; + if (value == FollowUpPatientStatusCodingCode.LostToFu) + { + serializer.Serialize(writer, "lost-to-fu"); + return; + } + throw new Exception("Cannot marshal type FollowUpPatientStatusCodingCode"); + } + + public static readonly FollowUpPatientStatusCodingCodeConverter Singleton = new FollowUpPatientStatusCodingCodeConverter(); + } + + internal class OncoProcedureCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(OncoProcedureCodingCode) || t == typeof(OncoProcedureCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "nuclear-medicine": + return OncoProcedureCodingCode.NuclearMedicine; + case "radio-therapy": + return OncoProcedureCodingCode.RadioTherapy; + case "surgery": + return OncoProcedureCodingCode.Surgery; + } + throw new Exception("Cannot unmarshal type OncoProcedureCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (OncoProcedureCodingCode)untypedValue; + switch (value) + { + case OncoProcedureCodingCode.NuclearMedicine: + serializer.Serialize(writer, "nuclear-medicine"); + return; + case OncoProcedureCodingCode.RadioTherapy: + serializer.Serialize(writer, "radio-therapy"); + return; + case OncoProcedureCodingCode.Surgery: + serializer.Serialize(writer, "surgery"); + return; + } + throw new Exception("Cannot marshal type OncoProcedureCodingCode"); + } + + public static readonly OncoProcedureCodingCodeConverter Singleton = new OncoProcedureCodingCodeConverter(); + } + + internal class MtbTherapyIntentCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(MtbTherapyIntentCodingCode) || t == typeof(MtbTherapyIntentCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "K": + return MtbTherapyIntentCodingCode.K; + case "P": + return MtbTherapyIntentCodingCode.P; + case "S": + return MtbTherapyIntentCodingCode.S; + case "X": + return MtbTherapyIntentCodingCode.X; + } + throw new Exception("Cannot unmarshal type MtbTherapyIntentCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (MtbTherapyIntentCodingCode)untypedValue; + switch (value) + { + case MtbTherapyIntentCodingCode.K: + serializer.Serialize(writer, "K"); + return; + case MtbTherapyIntentCodingCode.P: + serializer.Serialize(writer, "P"); + return; + case MtbTherapyIntentCodingCode.S: + serializer.Serialize(writer, "S"); + return; + case MtbTherapyIntentCodingCode.X: + serializer.Serialize(writer, "X"); + return; + } + throw new Exception("Cannot marshal type MtbTherapyIntentCodingCode"); + } + + public static readonly MtbTherapyIntentCodingCodeConverter Singleton = new MtbTherapyIntentCodingCodeConverter(); + } + + internal class TherapyStatusCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(TherapyStatusCodingCode) || t == typeof(TherapyStatusCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2199,17 +3315,17 @@ namespace MV64e.MTB switch (value) { case "completed": - return TherapyStatus.Completed; + return TherapyStatusCodingCode.Completed; case "not-done": - return TherapyStatus.NotDone; + return TherapyStatusCodingCode.NotDone; case "on-going": - return TherapyStatus.OnGoing; + return TherapyStatusCodingCode.OnGoing; case "stopped": - return TherapyStatus.Stopped; + return TherapyStatusCodingCode.Stopped; case "unknown": - return TherapyStatus.Unknown; + return TherapyStatusCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type TherapyStatus"); + throw new Exception("Cannot unmarshal type TherapyStatusCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2219,34 +3335,34 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (TherapyStatus)untypedValue; + var value = (TherapyStatusCodingCode)untypedValue; switch (value) { - case TherapyStatus.Completed: + case TherapyStatusCodingCode.Completed: serializer.Serialize(writer, "completed"); return; - case TherapyStatus.NotDone: + case TherapyStatusCodingCode.NotDone: serializer.Serialize(writer, "not-done"); return; - case TherapyStatus.OnGoing: + case TherapyStatusCodingCode.OnGoing: serializer.Serialize(writer, "on-going"); return; - case TherapyStatus.Stopped: + case TherapyStatusCodingCode.Stopped: serializer.Serialize(writer, "stopped"); return; - case TherapyStatus.Unknown: + case TherapyStatusCodingCode.Unknown: serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type TherapyStatus"); + throw new Exception("Cannot marshal type TherapyStatusCodingCode"); } - public static readonly TherapyStatusConverter Singleton = new TherapyStatusConverter(); + public static readonly TherapyStatusCodingCodeConverter Singleton = new TherapyStatusCodingCodeConverter(); } - internal class StatusReasonCodeConverter : JsonConverter + internal class MtbTherapyStatusReasonCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(StatusReasonCode) || t == typeof(StatusReasonCode?); + public override bool CanConvert(Type t) => t == typeof(MtbTherapyStatusReasonCodingCode) || t == typeof(MtbTherapyStatusReasonCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2254,42 +3370,46 @@ namespace MV64e.MTB var value = serializer.Deserialize(reader); switch (value) { + case "best-supportive-care": + return MtbTherapyStatusReasonCodingCode.BestSupportiveCare; case "chronic-remission": - return StatusReasonCode.ChronicRemission; - case "continued-externally": - return StatusReasonCode.ContinuedExternally; + return MtbTherapyStatusReasonCodingCode.ChronicRemission; case "deterioration": - return StatusReasonCode.Deterioration; + return MtbTherapyStatusReasonCodingCode.Deterioration; case "lost-to-fu": - return StatusReasonCode.LostToFu; - case "medical-reason": - return StatusReasonCode.MedicalReason; + return MtbTherapyStatusReasonCodingCode.LostToFu; + case "medical-reasons": + return MtbTherapyStatusReasonCodingCode.MedicalReasons; case "no-indication": - return StatusReasonCode.NoIndication; + return MtbTherapyStatusReasonCodingCode.NoIndication; case "other": - return StatusReasonCode.Other; + return MtbTherapyStatusReasonCodingCode.Other; case "other-therapy-chosen": - return StatusReasonCode.OtherTherapyChosen; + return MtbTherapyStatusReasonCodingCode.OtherTherapyChosen; case "patient-death": - return StatusReasonCode.PatientDeath; + return MtbTherapyStatusReasonCodingCode.PatientDeath; case "patient-refusal": - return StatusReasonCode.PatientRefusal; + return MtbTherapyStatusReasonCodingCode.PatientRefusal; case "patient-wish": - return StatusReasonCode.PatientWish; + return MtbTherapyStatusReasonCodingCode.PatientWish; case "payment-ended": - return StatusReasonCode.PaymentEnded; + return MtbTherapyStatusReasonCodingCode.PaymentEnded; case "payment-pending": - return StatusReasonCode.PaymentPending; + return MtbTherapyStatusReasonCodingCode.PaymentPending; case "payment-refused": - return StatusReasonCode.PaymentRefused; + return MtbTherapyStatusReasonCodingCode.PaymentRefused; case "progression": - return StatusReasonCode.Progression; + return MtbTherapyStatusReasonCodingCode.Progression; + case "regular-completion": + return MtbTherapyStatusReasonCodingCode.RegularCompletion; + case "regular-completion-with-dosage-reduction": + return MtbTherapyStatusReasonCodingCode.RegularCompletionWithDosageReduction; + case "regular-completion-with-substance-change": + return MtbTherapyStatusReasonCodingCode.RegularCompletionWithSubstanceChange; case "toxicity": - return StatusReasonCode.Toxicity; - case "unknown": - return StatusReasonCode.Unknown; + return MtbTherapyStatusReasonCodingCode.Toxicity; } - throw new Exception("Cannot unmarshal type StatusReasonCode"); + throw new Exception("Cannot unmarshal type MtbTherapyStatusReasonCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2299,70 +3419,214 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (StatusReasonCode)untypedValue; + var value = (MtbTherapyStatusReasonCodingCode)untypedValue; switch (value) { - case StatusReasonCode.ChronicRemission: + case MtbTherapyStatusReasonCodingCode.BestSupportiveCare: + serializer.Serialize(writer, "best-supportive-care"); + return; + case MtbTherapyStatusReasonCodingCode.ChronicRemission: serializer.Serialize(writer, "chronic-remission"); return; - case StatusReasonCode.ContinuedExternally: - serializer.Serialize(writer, "continued-externally"); - return; - case StatusReasonCode.Deterioration: + case MtbTherapyStatusReasonCodingCode.Deterioration: serializer.Serialize(writer, "deterioration"); return; - case StatusReasonCode.LostToFu: + case MtbTherapyStatusReasonCodingCode.LostToFu: serializer.Serialize(writer, "lost-to-fu"); return; - case StatusReasonCode.MedicalReason: - serializer.Serialize(writer, "medical-reason"); + case MtbTherapyStatusReasonCodingCode.MedicalReasons: + serializer.Serialize(writer, "medical-reasons"); return; - case StatusReasonCode.NoIndication: + case MtbTherapyStatusReasonCodingCode.NoIndication: serializer.Serialize(writer, "no-indication"); return; - case StatusReasonCode.Other: + case MtbTherapyStatusReasonCodingCode.Other: serializer.Serialize(writer, "other"); return; - case StatusReasonCode.OtherTherapyChosen: + case MtbTherapyStatusReasonCodingCode.OtherTherapyChosen: serializer.Serialize(writer, "other-therapy-chosen"); return; - case StatusReasonCode.PatientDeath: + case MtbTherapyStatusReasonCodingCode.PatientDeath: serializer.Serialize(writer, "patient-death"); return; - case StatusReasonCode.PatientRefusal: + case MtbTherapyStatusReasonCodingCode.PatientRefusal: serializer.Serialize(writer, "patient-refusal"); return; - case StatusReasonCode.PatientWish: + case MtbTherapyStatusReasonCodingCode.PatientWish: serializer.Serialize(writer, "patient-wish"); return; - case StatusReasonCode.PaymentEnded: + case MtbTherapyStatusReasonCodingCode.PaymentEnded: serializer.Serialize(writer, "payment-ended"); return; - case StatusReasonCode.PaymentPending: + case MtbTherapyStatusReasonCodingCode.PaymentPending: serializer.Serialize(writer, "payment-pending"); return; - case StatusReasonCode.PaymentRefused: + case MtbTherapyStatusReasonCodingCode.PaymentRefused: serializer.Serialize(writer, "payment-refused"); return; - case StatusReasonCode.Progression: + case MtbTherapyStatusReasonCodingCode.Progression: serializer.Serialize(writer, "progression"); return; - case StatusReasonCode.Toxicity: + case MtbTherapyStatusReasonCodingCode.RegularCompletion: + serializer.Serialize(writer, "regular-completion"); + return; + case MtbTherapyStatusReasonCodingCode.RegularCompletionWithDosageReduction: + serializer.Serialize(writer, "regular-completion-with-dosage-reduction"); + return; + case MtbTherapyStatusReasonCodingCode.RegularCompletionWithSubstanceChange: + serializer.Serialize(writer, "regular-completion-with-substance-change"); + return; + case MtbTherapyStatusReasonCodingCode.Toxicity: serializer.Serialize(writer, "toxicity"); return; - case StatusReasonCode.Unknown: - serializer.Serialize(writer, "unknown"); - return; } - throw new Exception("Cannot marshal type StatusReasonCode"); + throw new Exception("Cannot marshal type MtbTherapyStatusReasonCodingCode"); } - public static readonly StatusReasonCodeConverter Singleton = new StatusReasonCodeConverter(); + public static readonly MtbTherapyStatusReasonCodingCodeConverter Singleton = new MtbTherapyStatusReasonCodingCodeConverter(); } - internal class TumorCellContentMethodConverter : JsonConverter + internal class MtbSystemicTherapyCategoryCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(TumorCellContentMethod) || t == typeof(TumorCellContentMethod?); + public override bool CanConvert(Type t) => t == typeof(MtbSystemicTherapyCategoryCodingCode) || t == typeof(MtbSystemicTherapyCategoryCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "A": + return MtbSystemicTherapyCategoryCodingCode.A; + case "I": + return MtbSystemicTherapyCategoryCodingCode.I; + case "N": + return MtbSystemicTherapyCategoryCodingCode.N; + case "O": + return MtbSystemicTherapyCategoryCodingCode.O; + case "S": + return MtbSystemicTherapyCategoryCodingCode.S; + } + throw new Exception("Cannot unmarshal type MtbSystemicTherapyCategoryCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (MtbSystemicTherapyCategoryCodingCode)untypedValue; + switch (value) + { + case MtbSystemicTherapyCategoryCodingCode.A: + serializer.Serialize(writer, "A"); + return; + case MtbSystemicTherapyCategoryCodingCode.I: + serializer.Serialize(writer, "I"); + return; + case MtbSystemicTherapyCategoryCodingCode.N: + serializer.Serialize(writer, "N"); + return; + case MtbSystemicTherapyCategoryCodingCode.O: + serializer.Serialize(writer, "O"); + return; + case MtbSystemicTherapyCategoryCodingCode.S: + serializer.Serialize(writer, "S"); + return; + } + throw new Exception("Cannot marshal type MtbSystemicTherapyCategoryCodingCode"); + } + + public static readonly MtbSystemicTherapyCategoryCodingCodeConverter Singleton = new MtbSystemicTherapyCategoryCodingCodeConverter(); + } + + internal class MtbSystemicTherapyDosageDensityCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(MtbSystemicTherapyDosageDensityCodingCode) || t == typeof(MtbSystemicTherapyDosageDensityCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "over-50%": + return MtbSystemicTherapyDosageDensityCodingCode.Over50; + case "under-50%": + return MtbSystemicTherapyDosageDensityCodingCode.Under50; + } + throw new Exception("Cannot unmarshal type MtbSystemicTherapyDosageDensityCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (MtbSystemicTherapyDosageDensityCodingCode)untypedValue; + switch (value) + { + case MtbSystemicTherapyDosageDensityCodingCode.Over50: + serializer.Serialize(writer, "over-50%"); + return; + case MtbSystemicTherapyDosageDensityCodingCode.Under50: + serializer.Serialize(writer, "under-50%"); + return; + } + throw new Exception("Cannot marshal type MtbSystemicTherapyDosageDensityCodingCode"); + } + + public static readonly MtbSystemicTherapyDosageDensityCodingCodeConverter Singleton = new MtbSystemicTherapyDosageDensityCodingCodeConverter(); + } + + internal class MtbSystemicTherapyRecommendationFulfillmentStatusCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode) || t == typeof(MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "complete": + return MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode.Complete; + case "partial": + return MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode.Partial; + } + throw new Exception("Cannot unmarshal type MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode)untypedValue; + switch (value) + { + case MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode.Complete: + serializer.Serialize(writer, "complete"); + return; + case MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode.Partial: + serializer.Serialize(writer, "partial"); + return; + } + throw new Exception("Cannot marshal type MtbSystemicTherapyRecommendationFulfillmentStatusCodingCode"); + } + + public static readonly MtbSystemicTherapyRecommendationFulfillmentStatusCodingCodeConverter Singleton = new MtbSystemicTherapyRecommendationFulfillmentStatusCodingCodeConverter(); + } + + internal class TumorCellContentMethodCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(TumorCellContentMethodCodingCode) || t == typeof(TumorCellContentMethodCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2371,11 +3635,11 @@ namespace MV64e.MTB switch (value) { case "bioinformatic": - return TumorCellContentMethod.Bioinformatic; + return TumorCellContentMethodCodingCode.Bioinformatic; case "histologic": - return TumorCellContentMethod.Histologic; + return TumorCellContentMethodCodingCode.Histologic; } - throw new Exception("Cannot unmarshal type TumorCellContentMethod"); + throw new Exception("Cannot unmarshal type TumorCellContentMethodCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2385,59 +3649,25 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (TumorCellContentMethod)untypedValue; + var value = (TumorCellContentMethodCodingCode)untypedValue; switch (value) { - case TumorCellContentMethod.Bioinformatic: + case TumorCellContentMethodCodingCode.Bioinformatic: serializer.Serialize(writer, "bioinformatic"); return; - case TumorCellContentMethod.Histologic: + case TumorCellContentMethodCodingCode.Histologic: serializer.Serialize(writer, "histologic"); return; } - throw new Exception("Cannot marshal type TumorCellContentMethod"); + throw new Exception("Cannot marshal type TumorCellContentMethodCodingCode"); } - public static readonly TumorCellContentMethodConverter Singleton = new TumorCellContentMethodConverter(); + public static readonly TumorCellContentMethodCodingCodeConverter Singleton = new TumorCellContentMethodCodingCodeConverter(); } - internal class SpecimenTypeConverter : JsonConverter + internal class ProteinExpressionIcScoreCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(SpecimenType) || t == typeof(SpecimenType?); - - public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) - { - if (reader.TokenType == JsonToken.Null) return null; - var value = serializer.Deserialize(reader); - if (value == "TumorSpecimen") - { - return SpecimenType.TumorSpecimen; - } - throw new Exception("Cannot unmarshal type SpecimenType"); - } - - public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) - { - if (untypedValue == null) - { - serializer.Serialize(writer, null); - return; - } - var value = (SpecimenType)untypedValue; - if (value == SpecimenType.TumorSpecimen) - { - serializer.Serialize(writer, "TumorSpecimen"); - return; - } - throw new Exception("Cannot marshal type SpecimenType"); - } - - public static readonly SpecimenTypeConverter Singleton = new SpecimenTypeConverter(); - } - - internal class IcScoreCodeConverter : JsonConverter - { - public override bool CanConvert(Type t) => t == typeof(IcScoreCode) || t == typeof(IcScoreCode?); + public override bool CanConvert(Type t) => t == typeof(ProteinExpressionIcScoreCodingCode) || t == typeof(ProteinExpressionIcScoreCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2446,15 +3676,15 @@ namespace MV64e.MTB switch (value) { case "0": - return IcScoreCode.Code0; + return ProteinExpressionIcScoreCodingCode.Code0; case "1": - return IcScoreCode.Code1; + return ProteinExpressionIcScoreCodingCode.Code1; case "2": - return IcScoreCode.Code2; + return ProteinExpressionIcScoreCodingCode.Code2; case "3": - return IcScoreCode.Code3; + return ProteinExpressionIcScoreCodingCode.Code3; } - throw new Exception("Cannot unmarshal type IcScoreCode"); + throw new Exception("Cannot unmarshal type ProteinExpressionIcScoreCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2464,31 +3694,31 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (IcScoreCode)untypedValue; + var value = (ProteinExpressionIcScoreCodingCode)untypedValue; switch (value) { - case IcScoreCode.Code0: + case ProteinExpressionIcScoreCodingCode.Code0: serializer.Serialize(writer, "0"); return; - case IcScoreCode.Code1: + case ProteinExpressionIcScoreCodingCode.Code1: serializer.Serialize(writer, "1"); return; - case IcScoreCode.Code2: + case ProteinExpressionIcScoreCodingCode.Code2: serializer.Serialize(writer, "2"); return; - case IcScoreCode.Code3: + case ProteinExpressionIcScoreCodingCode.Code3: serializer.Serialize(writer, "3"); return; } - throw new Exception("Cannot marshal type IcScoreCode"); + throw new Exception("Cannot marshal type ProteinExpressionIcScoreCodingCode"); } - public static readonly IcScoreCodeConverter Singleton = new IcScoreCodeConverter(); + public static readonly ProteinExpressionIcScoreCodingCodeConverter Singleton = new ProteinExpressionIcScoreCodingCodeConverter(); } - internal class TcScoreCodeConverter : JsonConverter + internal class ProteinExpressionTcScoreCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(TcScoreCode) || t == typeof(TcScoreCode?); + public override bool CanConvert(Type t) => t == typeof(ProteinExpressionTcScoreCodingCode) || t == typeof(ProteinExpressionTcScoreCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2497,21 +3727,21 @@ namespace MV64e.MTB switch (value) { case "0": - return TcScoreCode.Code0; + return ProteinExpressionTcScoreCodingCode.Code0; case "1": - return TcScoreCode.Code1; + return ProteinExpressionTcScoreCodingCode.Code1; case "2": - return TcScoreCode.Code2; + return ProteinExpressionTcScoreCodingCode.Code2; case "3": - return TcScoreCode.Code3; + return ProteinExpressionTcScoreCodingCode.Code3; case "4": - return TcScoreCode.Code4; + return ProteinExpressionTcScoreCodingCode.Code4; case "5": - return TcScoreCode.Code5; + return ProteinExpressionTcScoreCodingCode.Code5; case "6": - return TcScoreCode.Code6; + return ProteinExpressionTcScoreCodingCode.Code6; } - throw new Exception("Cannot unmarshal type TcScoreCode"); + throw new Exception("Cannot unmarshal type ProteinExpressionTcScoreCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2521,40 +3751,40 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (TcScoreCode)untypedValue; + var value = (ProteinExpressionTcScoreCodingCode)untypedValue; switch (value) { - case TcScoreCode.Code0: + case ProteinExpressionTcScoreCodingCode.Code0: serializer.Serialize(writer, "0"); return; - case TcScoreCode.Code1: + case ProteinExpressionTcScoreCodingCode.Code1: serializer.Serialize(writer, "1"); return; - case TcScoreCode.Code2: + case ProteinExpressionTcScoreCodingCode.Code2: serializer.Serialize(writer, "2"); return; - case TcScoreCode.Code3: + case ProteinExpressionTcScoreCodingCode.Code3: serializer.Serialize(writer, "3"); return; - case TcScoreCode.Code4: + case ProteinExpressionTcScoreCodingCode.Code4: serializer.Serialize(writer, "4"); return; - case TcScoreCode.Code5: + case ProteinExpressionTcScoreCodingCode.Code5: serializer.Serialize(writer, "5"); return; - case TcScoreCode.Code6: + case ProteinExpressionTcScoreCodingCode.Code6: serializer.Serialize(writer, "6"); return; } - throw new Exception("Cannot marshal type TcScoreCode"); + throw new Exception("Cannot marshal type ProteinExpressionTcScoreCodingCode"); } - public static readonly TcScoreCodeConverter Singleton = new TcScoreCodeConverter(); + public static readonly ProteinExpressionTcScoreCodingCodeConverter Singleton = new ProteinExpressionTcScoreCodingCodeConverter(); } - internal class ProteinExpressionResultCodeConverter : JsonConverter + internal class ProteinExpressionResultCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(ProteinExpressionResultCode) || t == typeof(ProteinExpressionResultCode?); + public override bool CanConvert(Type t) => t == typeof(ProteinExpressionResultCodingCode) || t == typeof(ProteinExpressionResultCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2563,19 +3793,19 @@ namespace MV64e.MTB switch (value) { case "1+": - return ProteinExpressionResultCode.Code1Plus; + return ProteinExpressionResultCodingCode.Code1Plus; case "2+": - return ProteinExpressionResultCode.Code2Plus; + return ProteinExpressionResultCodingCode.Code2Plus; case "3+": - return ProteinExpressionResultCode.Code3Plus; + return ProteinExpressionResultCodingCode.Code3Plus; case "exp": - return ProteinExpressionResultCode.Exp; + return ProteinExpressionResultCodingCode.Exp; case "not-exp": - return ProteinExpressionResultCode.NotExp; + return ProteinExpressionResultCodingCode.NotExp; case "unknown": - return ProteinExpressionResultCode.Unknown; + return ProteinExpressionResultCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type ProteinExpressionResultCode"); + throw new Exception("Cannot unmarshal type ProteinExpressionResultCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2585,37 +3815,175 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (ProteinExpressionResultCode)untypedValue; + var value = (ProteinExpressionResultCodingCode)untypedValue; switch (value) { - case ProteinExpressionResultCode.Code1Plus: + case ProteinExpressionResultCodingCode.Code1Plus: serializer.Serialize(writer, "1+"); return; - case ProteinExpressionResultCode.Code2Plus: + case ProteinExpressionResultCodingCode.Code2Plus: serializer.Serialize(writer, "2+"); return; - case ProteinExpressionResultCode.Code3Plus: + case ProteinExpressionResultCodingCode.Code3Plus: serializer.Serialize(writer, "3+"); return; - case ProteinExpressionResultCode.Exp: + case ProteinExpressionResultCodingCode.Exp: serializer.Serialize(writer, "exp"); return; - case ProteinExpressionResultCode.NotExp: + case ProteinExpressionResultCodingCode.NotExp: serializer.Serialize(writer, "not-exp"); return; - case ProteinExpressionResultCode.Unknown: + case ProteinExpressionResultCodingCode.Unknown: serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type ProteinExpressionResultCode"); + throw new Exception("Cannot marshal type ProteinExpressionResultCodingCode"); } - public static readonly ProteinExpressionResultCodeConverter Singleton = new ProteinExpressionResultCodeConverter(); + public static readonly ProteinExpressionResultCodingCodeConverter Singleton = new ProteinExpressionResultCodingCodeConverter(); } - internal class ChromosomeCodeConverter : JsonConverter + internal class ModelProjectConsentPurposeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(ChromosomeCode) || t == typeof(ChromosomeCode?); + public override bool CanConvert(Type t) => t == typeof(ModelProjectConsentPurpose) || t == typeof(ModelProjectConsentPurpose?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "case-identification": + return ModelProjectConsentPurpose.CaseIdentification; + case "reidentification": + return ModelProjectConsentPurpose.Reidentification; + case "sequencing": + return ModelProjectConsentPurpose.Sequencing; + } + throw new Exception("Cannot unmarshal type ModelProjectConsentPurpose"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (ModelProjectConsentPurpose)untypedValue; + switch (value) + { + case ModelProjectConsentPurpose.CaseIdentification: + serializer.Serialize(writer, "case-identification"); + return; + case ModelProjectConsentPurpose.Reidentification: + serializer.Serialize(writer, "reidentification"); + return; + case ModelProjectConsentPurpose.Sequencing: + serializer.Serialize(writer, "sequencing"); + return; + } + throw new Exception("Cannot marshal type ModelProjectConsentPurpose"); + } + + public static readonly ModelProjectConsentPurposeConverter Singleton = new ModelProjectConsentPurposeConverter(); + } + + internal class ConsentProvisionConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(ConsentProvision) || t == typeof(ConsentProvision?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "deny": + return ConsentProvision.Deny; + case "permit": + return ConsentProvision.Permit; + } + throw new Exception("Cannot unmarshal type ConsentProvision"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (ConsentProvision)untypedValue; + switch (value) + { + case ConsentProvision.Deny: + serializer.Serialize(writer, "deny"); + return; + case ConsentProvision.Permit: + serializer.Serialize(writer, "permit"); + return; + } + throw new Exception("Cannot marshal type ConsentProvision"); + } + + public static readonly ConsentProvisionConverter Singleton = new ConsentProvisionConverter(); + } + + internal class MvhSubmissionTypeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(MvhSubmissionType) || t == typeof(MvhSubmissionType?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "addition": + return MvhSubmissionType.Addition; + case "correction": + return MvhSubmissionType.Correction; + case "followup": + return MvhSubmissionType.Followup; + case "initial": + return MvhSubmissionType.Initial; + } + throw new Exception("Cannot unmarshal type MvhSubmissionType"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (MvhSubmissionType)untypedValue; + switch (value) + { + case MvhSubmissionType.Addition: + serializer.Serialize(writer, "addition"); + return; + case MvhSubmissionType.Correction: + serializer.Serialize(writer, "correction"); + return; + case MvhSubmissionType.Followup: + serializer.Serialize(writer, "followup"); + return; + case MvhSubmissionType.Initial: + serializer.Serialize(writer, "initial"); + return; + } + throw new Exception("Cannot marshal type MvhSubmissionType"); + } + + public static readonly MvhSubmissionTypeConverter Singleton = new MvhSubmissionTypeConverter(); + } + + internal class ChromosomeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(Chromosome) || t == typeof(Chromosome?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2624,55 +3992,55 @@ namespace MV64e.MTB switch (value) { case "chr1": - return ChromosomeCode.Chr1; + return Chromosome.Chr1; case "chr10": - return ChromosomeCode.Chr10; + return Chromosome.Chr10; case "chr11": - return ChromosomeCode.Chr11; + return Chromosome.Chr11; case "chr12": - return ChromosomeCode.Chr12; + return Chromosome.Chr12; case "chr13": - return ChromosomeCode.Chr13; + return Chromosome.Chr13; case "chr14": - return ChromosomeCode.Chr14; + return Chromosome.Chr14; case "chr15": - return ChromosomeCode.Chr15; + return Chromosome.Chr15; case "chr16": - return ChromosomeCode.Chr16; + return Chromosome.Chr16; case "chr17": - return ChromosomeCode.Chr17; + return Chromosome.Chr17; case "chr18": - return ChromosomeCode.Chr18; + return Chromosome.Chr18; case "chr19": - return ChromosomeCode.Chr19; + return Chromosome.Chr19; case "chr2": - return ChromosomeCode.Chr2; + return Chromosome.Chr2; case "chr20": - return ChromosomeCode.Chr20; + return Chromosome.Chr20; case "chr21": - return ChromosomeCode.Chr21; + return Chromosome.Chr21; case "chr22": - return ChromosomeCode.Chr22; + return Chromosome.Chr22; case "chr3": - return ChromosomeCode.Chr3; + return Chromosome.Chr3; case "chr4": - return ChromosomeCode.Chr4; + return Chromosome.Chr4; case "chr5": - return ChromosomeCode.Chr5; + return Chromosome.Chr5; case "chr6": - return ChromosomeCode.Chr6; + return Chromosome.Chr6; case "chr7": - return ChromosomeCode.Chr7; + return Chromosome.Chr7; case "chr8": - return ChromosomeCode.Chr8; + return Chromosome.Chr8; case "chr9": - return ChromosomeCode.Chr9; + return Chromosome.Chr9; case "chrX": - return ChromosomeCode.ChrX; + return Chromosome.ChrX; case "chrY": - return ChromosomeCode.ChrY; + return Chromosome.ChrY; } - throw new Exception("Cannot unmarshal type ChromosomeCode"); + throw new Exception("Cannot unmarshal type Chromosome"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2682,101 +4050,108 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (ChromosomeCode)untypedValue; + var value = (Chromosome)untypedValue; switch (value) { - case ChromosomeCode.Chr1: + case Chromosome.Chr1: serializer.Serialize(writer, "chr1"); return; - case ChromosomeCode.Chr10: + case Chromosome.Chr10: serializer.Serialize(writer, "chr10"); return; - case ChromosomeCode.Chr11: + case Chromosome.Chr11: serializer.Serialize(writer, "chr11"); return; - case ChromosomeCode.Chr12: + case Chromosome.Chr12: serializer.Serialize(writer, "chr12"); return; - case ChromosomeCode.Chr13: + case Chromosome.Chr13: serializer.Serialize(writer, "chr13"); return; - case ChromosomeCode.Chr14: + case Chromosome.Chr14: serializer.Serialize(writer, "chr14"); return; - case ChromosomeCode.Chr15: + case Chromosome.Chr15: serializer.Serialize(writer, "chr15"); return; - case ChromosomeCode.Chr16: + case Chromosome.Chr16: serializer.Serialize(writer, "chr16"); return; - case ChromosomeCode.Chr17: + case Chromosome.Chr17: serializer.Serialize(writer, "chr17"); return; - case ChromosomeCode.Chr18: + case Chromosome.Chr18: serializer.Serialize(writer, "chr18"); return; - case ChromosomeCode.Chr19: + case Chromosome.Chr19: serializer.Serialize(writer, "chr19"); return; - case ChromosomeCode.Chr2: + case Chromosome.Chr2: serializer.Serialize(writer, "chr2"); return; - case ChromosomeCode.Chr20: + case Chromosome.Chr20: serializer.Serialize(writer, "chr20"); return; - case ChromosomeCode.Chr21: + case Chromosome.Chr21: serializer.Serialize(writer, "chr21"); return; - case ChromosomeCode.Chr22: + case Chromosome.Chr22: serializer.Serialize(writer, "chr22"); return; - case ChromosomeCode.Chr3: + case Chromosome.Chr3: serializer.Serialize(writer, "chr3"); return; - case ChromosomeCode.Chr4: + case Chromosome.Chr4: serializer.Serialize(writer, "chr4"); return; - case ChromosomeCode.Chr5: + case Chromosome.Chr5: serializer.Serialize(writer, "chr5"); return; - case ChromosomeCode.Chr6: + case Chromosome.Chr6: serializer.Serialize(writer, "chr6"); return; - case ChromosomeCode.Chr7: + case Chromosome.Chr7: serializer.Serialize(writer, "chr7"); return; - case ChromosomeCode.Chr8: + case Chromosome.Chr8: serializer.Serialize(writer, "chr8"); return; - case ChromosomeCode.Chr9: + case Chromosome.Chr9: serializer.Serialize(writer, "chr9"); return; - case ChromosomeCode.ChrX: + case Chromosome.ChrX: serializer.Serialize(writer, "chrX"); return; - case ChromosomeCode.ChrY: + case Chromosome.ChrY: serializer.Serialize(writer, "chrY"); return; } - throw new Exception("Cannot marshal type ChromosomeCode"); + throw new Exception("Cannot marshal type Chromosome"); } - public static readonly ChromosomeCodeConverter Singleton = new ChromosomeCodeConverter(); + public static readonly ChromosomeConverter Singleton = new ChromosomeConverter(); } - internal class ChromosomeSystemConverter : JsonConverter + internal class ExternalIdSystemConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(ChromosomeSystem) || t == typeof(ChromosomeSystem?); + public override bool CanConvert(Type t) => t == typeof(ExternalIdSystem) || t == typeof(ExternalIdSystem?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; var value = serializer.Deserialize(reader); - if (value == "chromosome") + switch (value) { - return ChromosomeSystem.Chromosome; + case "https://cancer.sanger.ac.uk/cosmic": + return ExternalIdSystem.CancerSangerAcUkCosmic; + case "https://www.ensembl.org": + return ExternalIdSystem.EnsemblOrg; + case "https://www.ncbi.nlm.nih.gov/entrez": + return ExternalIdSystem.NcbiNlmNihGovEntrez; + case "https://www.ncbi.nlm.nih.gov/snp": + return ExternalIdSystem.NcbiNlmNihGovSnp; } - throw new Exception("Cannot unmarshal type ChromosomeSystem"); + throw new Exception("Cannot unmarshal type ExternalIdSystem"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2786,31 +4161,50 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (ChromosomeSystem)untypedValue; - if (value == ChromosomeSystem.Chromosome) + var value = (ExternalIdSystem)untypedValue; + switch (value) { - serializer.Serialize(writer, "chromosome"); - return; + case ExternalIdSystem.CancerSangerAcUkCosmic: + serializer.Serialize(writer, "https://cancer.sanger.ac.uk/cosmic"); + return; + case ExternalIdSystem.EnsemblOrg: + serializer.Serialize(writer, "https://www.ensembl.org"); + return; + case ExternalIdSystem.NcbiNlmNihGovEntrez: + serializer.Serialize(writer, "https://www.ncbi.nlm.nih.gov/entrez"); + return; + case ExternalIdSystem.NcbiNlmNihGovSnp: + serializer.Serialize(writer, "https://www.ncbi.nlm.nih.gov/snp"); + return; } - throw new Exception("Cannot marshal type ChromosomeSystem"); + throw new Exception("Cannot marshal type ExternalIdSystem"); } - public static readonly ChromosomeSystemConverter Singleton = new ChromosomeSystemConverter(); + public static readonly ExternalIdSystemConverter Singleton = new ExternalIdSystemConverter(); } - internal class GeneSystemConverter : JsonConverter + internal class BaseVariantLocalizationCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(GeneSystem) || t == typeof(GeneSystem?); + public override bool CanConvert(Type t) => t == typeof(BaseVariantLocalizationCodingCode) || t == typeof(BaseVariantLocalizationCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; var value = serializer.Deserialize(reader); - if (value == "https://www.genenames.org/") + switch (value) { - return GeneSystem.HttpsWwwGenenamesOrg; + case "coding-region": + return BaseVariantLocalizationCodingCode.CodingRegion; + case "intergenic": + return BaseVariantLocalizationCodingCode.Intergenic; + case "intronic": + return BaseVariantLocalizationCodingCode.Intronic; + case "regulatory-region": + return BaseVariantLocalizationCodingCode.RegulatoryRegion; + case "splicing-region": + return BaseVariantLocalizationCodingCode.SplicingRegion; } - throw new Exception("Cannot unmarshal type GeneSystem"); + throw new Exception("Cannot unmarshal type BaseVariantLocalizationCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2820,21 +4214,34 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (GeneSystem)untypedValue; - if (value == GeneSystem.HttpsWwwGenenamesOrg) + var value = (BaseVariantLocalizationCodingCode)untypedValue; + switch (value) { - serializer.Serialize(writer, "https://www.genenames.org/"); - return; + case BaseVariantLocalizationCodingCode.CodingRegion: + serializer.Serialize(writer, "coding-region"); + return; + case BaseVariantLocalizationCodingCode.Intergenic: + serializer.Serialize(writer, "intergenic"); + return; + case BaseVariantLocalizationCodingCode.Intronic: + serializer.Serialize(writer, "intronic"); + return; + case BaseVariantLocalizationCodingCode.RegulatoryRegion: + serializer.Serialize(writer, "regulatory-region"); + return; + case BaseVariantLocalizationCodingCode.SplicingRegion: + serializer.Serialize(writer, "splicing-region"); + return; } - throw new Exception("Cannot marshal type GeneSystem"); + throw new Exception("Cannot marshal type BaseVariantLocalizationCodingCode"); } - public static readonly GeneSystemConverter Singleton = new GeneSystemConverter(); + public static readonly BaseVariantLocalizationCodingCodeConverter Singleton = new BaseVariantLocalizationCodingCodeConverter(); } - internal class CnvTypeConverter : JsonConverter + internal class CnvCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(CnvType) || t == typeof(CnvType?); + public override bool CanConvert(Type t) => t == typeof(CnvCodingCode) || t == typeof(CnvCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2843,13 +4250,13 @@ namespace MV64e.MTB switch (value) { case "high-level-gain": - return CnvType.HighLevelGain; + return CnvCodingCode.HighLevelGain; case "loss": - return CnvType.Loss; + return CnvCodingCode.Loss; case "low-level-gain": - return CnvType.LowLevelGain; + return CnvCodingCode.LowLevelGain; } - throw new Exception("Cannot unmarshal type CnvType"); + throw new Exception("Cannot unmarshal type CnvCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2859,23 +4266,69 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (CnvType)untypedValue; + var value = (CnvCodingCode)untypedValue; switch (value) { - case CnvType.HighLevelGain: + case CnvCodingCode.HighLevelGain: serializer.Serialize(writer, "high-level-gain"); return; - case CnvType.Loss: + case CnvCodingCode.Loss: serializer.Serialize(writer, "loss"); return; - case CnvType.LowLevelGain: + case CnvCodingCode.LowLevelGain: serializer.Serialize(writer, "low-level-gain"); return; } - throw new Exception("Cannot marshal type CnvType"); + throw new Exception("Cannot marshal type CnvCodingCode"); } - public static readonly CnvTypeConverter Singleton = new CnvTypeConverter(); + public static readonly CnvCodingCodeConverter Singleton = new CnvCodingCodeConverter(); + } + + internal class InterpretationCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(InterpretationCodingCode) || t == typeof(InterpretationCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "high": + return InterpretationCodingCode.High; + case "intermediate": + return InterpretationCodingCode.Intermediate; + case "low": + return InterpretationCodingCode.Low; + } + throw new Exception("Cannot unmarshal type InterpretationCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (InterpretationCodingCode)untypedValue; + switch (value) + { + case InterpretationCodingCode.High: + serializer.Serialize(writer, "high"); + return; + case InterpretationCodingCode.Intermediate: + serializer.Serialize(writer, "intermediate"); + return; + case InterpretationCodingCode.Low: + serializer.Serialize(writer, "low"); + return; + } + throw new Exception("Cannot marshal type InterpretationCodingCode"); + } + + public static readonly InterpretationCodingCodeConverter Singleton = new InterpretationCodingCodeConverter(); } internal class RnaFusionStrandConverter : JsonConverter @@ -2919,6 +4372,174 @@ namespace MV64e.MTB public static readonly RnaFusionStrandConverter Singleton = new RnaFusionStrandConverter(); } + internal class TranscriptIdSystemConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(TranscriptIdSystem) || t == typeof(TranscriptIdSystem?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "https://www.ensembl.org": + return TranscriptIdSystem.EnsemblOrg; + case "https://www.ncbi.nlm.nih.gov/refseq": + return TranscriptIdSystem.NcbiNlmNihGovRefseq; + } + throw new Exception("Cannot unmarshal type TranscriptIdSystem"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (TranscriptIdSystem)untypedValue; + switch (value) + { + case TranscriptIdSystem.EnsemblOrg: + serializer.Serialize(writer, "https://www.ensembl.org"); + return; + case TranscriptIdSystem.NcbiNlmNihGovRefseq: + serializer.Serialize(writer, "https://www.ncbi.nlm.nih.gov/refseq"); + return; + } + throw new Exception("Cannot marshal type TranscriptIdSystem"); + } + + public static readonly TranscriptIdSystemConverter Singleton = new TranscriptIdSystemConverter(); + } + + internal class ClinVarCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(ClinVarCodingCode) || t == typeof(ClinVarCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "1": + return ClinVarCodingCode.Code1; + case "2": + return ClinVarCodingCode.Code2; + case "3": + return ClinVarCodingCode.Code3; + case "4": + return ClinVarCodingCode.Code4; + case "5": + return ClinVarCodingCode.Code5; + } + throw new Exception("Cannot unmarshal type ClinVarCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (ClinVarCodingCode)untypedValue; + switch (value) + { + case ClinVarCodingCode.Code1: + serializer.Serialize(writer, "1"); + return; + case ClinVarCodingCode.Code2: + serializer.Serialize(writer, "2"); + return; + case ClinVarCodingCode.Code3: + serializer.Serialize(writer, "3"); + return; + case ClinVarCodingCode.Code4: + serializer.Serialize(writer, "4"); + return; + case ClinVarCodingCode.Code5: + serializer.Serialize(writer, "5"); + return; + } + throw new Exception("Cannot marshal type ClinVarCodingCode"); + } + + public static readonly ClinVarCodingCodeConverter Singleton = new ClinVarCodingCodeConverter(); + } + + internal class NgsReportCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(NgsReportCodingCode) || t == typeof(NgsReportCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "array": + return NgsReportCodingCode.Array; + case "exome": + return NgsReportCodingCode.Exome; + case "genome-long-read": + return NgsReportCodingCode.GenomeLongRead; + case "genome-short-read": + return NgsReportCodingCode.GenomeShortRead; + case "karyotyping": + return NgsReportCodingCode.Karyotyping; + case "other": + return NgsReportCodingCode.Other; + case "panel": + return NgsReportCodingCode.Panel; + case "single": + return NgsReportCodingCode.Single; + } + throw new Exception("Cannot unmarshal type NgsReportCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (NgsReportCodingCode)untypedValue; + switch (value) + { + case NgsReportCodingCode.Array: + serializer.Serialize(writer, "array"); + return; + case NgsReportCodingCode.Exome: + serializer.Serialize(writer, "exome"); + return; + case NgsReportCodingCode.GenomeLongRead: + serializer.Serialize(writer, "genome-long-read"); + return; + case NgsReportCodingCode.GenomeShortRead: + serializer.Serialize(writer, "genome-short-read"); + return; + case NgsReportCodingCode.Karyotyping: + serializer.Serialize(writer, "karyotyping"); + return; + case NgsReportCodingCode.Other: + serializer.Serialize(writer, "other"); + return; + case NgsReportCodingCode.Panel: + serializer.Serialize(writer, "panel"); + return; + case NgsReportCodingCode.Single: + serializer.Serialize(writer, "single"); + return; + } + throw new Exception("Cannot marshal type NgsReportCodingCode"); + } + + public static readonly NgsReportCodingCodeConverter Singleton = new NgsReportCodingCodeConverter(); + } + internal class UnitConverter : JsonConverter { public override bool CanConvert(Type t) => t == typeof(Unit) || t == typeof(Unit?); @@ -2927,9 +4548,12 @@ namespace MV64e.MTB { if (reader.TokenType == JsonToken.Null) return null; var value = serializer.Deserialize(reader); - if (value == "Years") + switch (value) { - return Unit.Years; + case "Months": + return Unit.Months; + case "Years": + return Unit.Years; } throw new Exception("Cannot unmarshal type Unit"); } @@ -2942,10 +4566,14 @@ namespace MV64e.MTB return; } var value = (Unit)untypedValue; - if (value == Unit.Years) + switch (value) { - serializer.Serialize(writer, "Years"); - return; + case Unit.Months: + serializer.Serialize(writer, "Months"); + return; + case Unit.Years: + serializer.Serialize(writer, "Years"); + return; } throw new Exception("Cannot marshal type Unit"); } @@ -2953,9 +4581,9 @@ namespace MV64e.MTB public static readonly UnitConverter Singleton = new UnitConverter(); } - internal class GenderConverter : JsonConverter + internal class GenderCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(Gender) || t == typeof(Gender?); + public override bool CanConvert(Type t) => t == typeof(GenderCodingCode) || t == typeof(GenderCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -2964,15 +4592,15 @@ namespace MV64e.MTB switch (value) { case "female": - return Gender.Female; + return GenderCodingCode.Female; case "male": - return Gender.Male; + return GenderCodingCode.Male; case "other": - return Gender.Other; + return GenderCodingCode.Other; case "unknown": - return Gender.Unknown; + return GenderCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type Gender"); + throw new Exception("Cannot unmarshal type GenderCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -2982,41 +4610,60 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (Gender)untypedValue; + var value = (GenderCodingCode)untypedValue; switch (value) { - case Gender.Female: + case GenderCodingCode.Female: serializer.Serialize(writer, "female"); return; - case Gender.Male: + case GenderCodingCode.Male: serializer.Serialize(writer, "male"); return; - case Gender.Other: + case GenderCodingCode.Other: serializer.Serialize(writer, "other"); return; - case Gender.Unknown: + case GenderCodingCode.Unknown: serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type Gender"); + throw new Exception("Cannot marshal type GenderCodingCode"); } - public static readonly GenderConverter Singleton = new GenderConverter(); + public static readonly GenderCodingCodeConverter Singleton = new GenderCodingCodeConverter(); } - internal class TypeEnumConverter : JsonConverter + internal class HealthInsuranceCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(TypeEnum) || t == typeof(TypeEnum?); + public override bool CanConvert(Type t) => t == typeof(HealthInsuranceCodingCode) || t == typeof(HealthInsuranceCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; var value = serializer.Deserialize(reader); - if (value == "Organization") + switch (value) { - return TypeEnum.Organization; + case "BEI": + return HealthInsuranceCodingCode.Bei; + case "BG": + return HealthInsuranceCodingCode.Bg; + case "GKV": + return HealthInsuranceCodingCode.Gkv; + case "GPV": + return HealthInsuranceCodingCode.Gpv; + case "PKV": + return HealthInsuranceCodingCode.Pkv; + case "PPV": + return HealthInsuranceCodingCode.Ppv; + case "SEL": + return HealthInsuranceCodingCode.Sel; + case "SKT": + return HealthInsuranceCodingCode.Skt; + case "SOZ": + return HealthInsuranceCodingCode.Soz; + case "UNK": + return HealthInsuranceCodingCode.Unk; } - throw new Exception("Cannot unmarshal type TypeEnum"); + throw new Exception("Cannot unmarshal type HealthInsuranceCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -3026,21 +4673,49 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (TypeEnum)untypedValue; - if (value == TypeEnum.Organization) + var value = (HealthInsuranceCodingCode)untypedValue; + switch (value) { - serializer.Serialize(writer, "Organization"); - return; + case HealthInsuranceCodingCode.Bei: + serializer.Serialize(writer, "BEI"); + return; + case HealthInsuranceCodingCode.Bg: + serializer.Serialize(writer, "BG"); + return; + case HealthInsuranceCodingCode.Gkv: + serializer.Serialize(writer, "GKV"); + return; + case HealthInsuranceCodingCode.Gpv: + serializer.Serialize(writer, "GPV"); + return; + case HealthInsuranceCodingCode.Pkv: + serializer.Serialize(writer, "PKV"); + return; + case HealthInsuranceCodingCode.Ppv: + serializer.Serialize(writer, "PPV"); + return; + case HealthInsuranceCodingCode.Sel: + serializer.Serialize(writer, "SEL"); + return; + case HealthInsuranceCodingCode.Skt: + serializer.Serialize(writer, "SKT"); + return; + case HealthInsuranceCodingCode.Soz: + serializer.Serialize(writer, "SOZ"); + return; + case HealthInsuranceCodingCode.Unk: + serializer.Serialize(writer, "UNK"); + return; } - throw new Exception("Cannot marshal type TypeEnum"); + throw new Exception("Cannot marshal type HealthInsuranceCodingCode"); } - public static readonly TypeEnumConverter Singleton = new TypeEnumConverter(); + public static readonly HealthInsuranceCodingCodeConverter Singleton = new HealthInsuranceCodingCodeConverter(); } - internal class VitalStatusCodeConverter : JsonConverter + internal class VitalStatusCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(VitalStatusCode) || t == typeof(VitalStatusCode?); + public override bool CanConvert(Type t) => t == typeof(VitalStatusCodingCode) || t == typeof(VitalStatusCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -3049,11 +4724,11 @@ namespace MV64e.MTB switch (value) { case "alive": - return VitalStatusCode.Alive; + return VitalStatusCodingCode.Alive; case "deceased": - return VitalStatusCode.Deceased; + return VitalStatusCodingCode.Deceased; } - throw new Exception("Cannot unmarshal type VitalStatusCode"); + throw new Exception("Cannot unmarshal type VitalStatusCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -3063,25 +4738,25 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (VitalStatusCode)untypedValue; + var value = (VitalStatusCodingCode)untypedValue; switch (value) { - case VitalStatusCode.Alive: + case VitalStatusCodingCode.Alive: serializer.Serialize(writer, "alive"); return; - case VitalStatusCode.Deceased: + case VitalStatusCodingCode.Deceased: serializer.Serialize(writer, "deceased"); return; } - throw new Exception("Cannot marshal type VitalStatusCode"); + throw new Exception("Cannot marshal type VitalStatusCodingCode"); } - public static readonly VitalStatusCodeConverter Singleton = new VitalStatusCodeConverter(); + public static readonly VitalStatusCodingCodeConverter Singleton = new VitalStatusCodingCodeConverter(); } - internal class EcogCodeConverter : JsonConverter + internal class EcogCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(EcogCode) || t == typeof(EcogCode?); + public override bool CanConvert(Type t) => t == typeof(EcogCodingCode) || t == typeof(EcogCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -3090,17 +4765,19 @@ namespace MV64e.MTB switch (value) { case "0": - return EcogCode.Code0; + return EcogCodingCode.Code0; case "1": - return EcogCode.Code1; + return EcogCodingCode.Code1; case "2": - return EcogCode.Code2; + return EcogCodingCode.Code2; case "3": - return EcogCode.Code3; + return EcogCodingCode.Code3; case "4": - return EcogCode.Code4; + return EcogCodingCode.Code4; + case "5": + return EcogCodingCode.Code5; } - throw new Exception("Cannot unmarshal type EcogCode"); + throw new Exception("Cannot unmarshal type EcogCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -3110,44 +4787,70 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (EcogCode)untypedValue; + var value = (EcogCodingCode)untypedValue; switch (value) { - case EcogCode.Code0: + case EcogCodingCode.Code0: serializer.Serialize(writer, "0"); return; - case EcogCode.Code1: + case EcogCodingCode.Code1: serializer.Serialize(writer, "1"); return; - case EcogCode.Code2: + case EcogCodingCode.Code2: serializer.Serialize(writer, "2"); return; - case EcogCode.Code3: + case EcogCodingCode.Code3: serializer.Serialize(writer, "3"); return; - case EcogCode.Code4: + case EcogCodingCode.Code4: serializer.Serialize(writer, "4"); return; + case EcogCodingCode.Code5: + serializer.Serialize(writer, "5"); + return; } - throw new Exception("Cannot marshal type EcogCode"); + throw new Exception("Cannot marshal type EcogCodingCode"); } - public static readonly EcogCodeConverter Singleton = new EcogCodeConverter(); + public static readonly EcogCodingCodeConverter Singleton = new EcogCodingCodeConverter(); } - internal class ResponseTherapyTypeConverter : JsonConverter + internal class MolecularDiagnosticReportCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(ResponseTherapyType) || t == typeof(ResponseTherapyType?); + public override bool CanConvert(Type t) => t == typeof(MolecularDiagnosticReportCodingCode) || t == typeof(MolecularDiagnosticReportCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) return null; var value = serializer.Deserialize(reader); - if (value == "MTBMedicationTherapy") + switch (value) { - return ResponseTherapyType.MtbMedicationTherapy; + case "FISH": + return MolecularDiagnosticReportCodingCode.Fish; + case "PCR": + return MolecularDiagnosticReportCodingCode.Pcr; + case "array": + return MolecularDiagnosticReportCodingCode.Array; + case "exome": + return MolecularDiagnosticReportCodingCode.Exome; + case "fusion-panel": + return MolecularDiagnosticReportCodingCode.FusionPanel; + case "gene-panel": + return MolecularDiagnosticReportCodingCode.GenePanel; + case "genome-long-read": + return MolecularDiagnosticReportCodingCode.GenomeLongRead; + case "genome-short-read": + return MolecularDiagnosticReportCodingCode.GenomeShortRead; + case "karyotyping": + return MolecularDiagnosticReportCodingCode.Karyotyping; + case "other": + return MolecularDiagnosticReportCodingCode.Other; + case "panel": + return MolecularDiagnosticReportCodingCode.Panel; + case "single": + return MolecularDiagnosticReportCodingCode.Single; } - throw new Exception("Cannot unmarshal type ResponseTherapyType"); + throw new Exception("Cannot unmarshal type MolecularDiagnosticReportCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -3157,21 +4860,96 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (ResponseTherapyType)untypedValue; - if (value == ResponseTherapyType.MtbMedicationTherapy) + var value = (MolecularDiagnosticReportCodingCode)untypedValue; + switch (value) { - serializer.Serialize(writer, "MTBMedicationTherapy"); - return; + case MolecularDiagnosticReportCodingCode.Fish: + serializer.Serialize(writer, "FISH"); + return; + case MolecularDiagnosticReportCodingCode.Pcr: + serializer.Serialize(writer, "PCR"); + return; + case MolecularDiagnosticReportCodingCode.Array: + serializer.Serialize(writer, "array"); + return; + case MolecularDiagnosticReportCodingCode.Exome: + serializer.Serialize(writer, "exome"); + return; + case MolecularDiagnosticReportCodingCode.FusionPanel: + serializer.Serialize(writer, "fusion-panel"); + return; + case MolecularDiagnosticReportCodingCode.GenePanel: + serializer.Serialize(writer, "gene-panel"); + return; + case MolecularDiagnosticReportCodingCode.GenomeLongRead: + serializer.Serialize(writer, "genome-long-read"); + return; + case MolecularDiagnosticReportCodingCode.GenomeShortRead: + serializer.Serialize(writer, "genome-short-read"); + return; + case MolecularDiagnosticReportCodingCode.Karyotyping: + serializer.Serialize(writer, "karyotyping"); + return; + case MolecularDiagnosticReportCodingCode.Other: + serializer.Serialize(writer, "other"); + return; + case MolecularDiagnosticReportCodingCode.Panel: + serializer.Serialize(writer, "panel"); + return; + case MolecularDiagnosticReportCodingCode.Single: + serializer.Serialize(writer, "single"); + return; } - throw new Exception("Cannot marshal type ResponseTherapyType"); + throw new Exception("Cannot marshal type MolecularDiagnosticReportCodingCode"); } - public static readonly ResponseTherapyTypeConverter Singleton = new ResponseTherapyTypeConverter(); + public static readonly MolecularDiagnosticReportCodingCodeConverter Singleton = new MolecularDiagnosticReportCodingCodeConverter(); } - internal class RecistCodeConverter : JsonConverter + internal class ResponseMethodCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(RecistCode) || t == typeof(RecistCode?); + public override bool CanConvert(Type t) => t == typeof(ResponseMethodCodingCode) || t == typeof(ResponseMethodCodingCode?); + + public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) + { + if (reader.TokenType == JsonToken.Null) return null; + var value = serializer.Deserialize(reader); + switch (value) + { + case "RANO": + return ResponseMethodCodingCode.Rano; + case "RECIST": + return ResponseMethodCodingCode.Recist; + } + throw new Exception("Cannot unmarshal type ResponseMethodCodingCode"); + } + + public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) + { + if (untypedValue == null) + { + serializer.Serialize(writer, null); + return; + } + var value = (ResponseMethodCodingCode)untypedValue; + switch (value) + { + case ResponseMethodCodingCode.Rano: + serializer.Serialize(writer, "RANO"); + return; + case ResponseMethodCodingCode.Recist: + serializer.Serialize(writer, "RECIST"); + return; + } + throw new Exception("Cannot marshal type ResponseMethodCodingCode"); + } + + public static readonly ResponseMethodCodingCodeConverter Singleton = new ResponseMethodCodingCodeConverter(); + } + + internal class RecistCodingCodeConverter : JsonConverter + { + public override bool CanConvert(Type t) => t == typeof(RecistCodingCode) || t == typeof(RecistCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -3180,21 +4958,19 @@ namespace MV64e.MTB switch (value) { case "CR": - return RecistCode.Cr; + return RecistCodingCode.Cr; case "MR": - return RecistCode.Mr; + return RecistCodingCode.Mr; case "NA": - return RecistCode.Na; - case "NYA": - return RecistCode.Nya; + return RecistCodingCode.Na; case "PD": - return RecistCode.Pd; + return RecistCodingCode.Pd; case "PR": - return RecistCode.Pr; + return RecistCodingCode.Pr; case "SD": - return RecistCode.Sd; + return RecistCodingCode.Sd; } - throw new Exception("Cannot unmarshal type RecistCode"); + throw new Exception("Cannot unmarshal type RecistCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -3204,40 +4980,37 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (RecistCode)untypedValue; + var value = (RecistCodingCode)untypedValue; switch (value) { - case RecistCode.Cr: + case RecistCodingCode.Cr: serializer.Serialize(writer, "CR"); return; - case RecistCode.Mr: + case RecistCodingCode.Mr: serializer.Serialize(writer, "MR"); return; - case RecistCode.Na: + case RecistCodingCode.Na: serializer.Serialize(writer, "NA"); return; - case RecistCode.Nya: - serializer.Serialize(writer, "NYA"); - return; - case RecistCode.Pd: + case RecistCodingCode.Pd: serializer.Serialize(writer, "PD"); return; - case RecistCode.Pr: + case RecistCodingCode.Pr: serializer.Serialize(writer, "PR"); return; - case RecistCode.Sd: + case RecistCodingCode.Sd: serializer.Serialize(writer, "SD"); return; } - throw new Exception("Cannot marshal type RecistCode"); + throw new Exception("Cannot marshal type RecistCodingCode"); } - public static readonly RecistCodeConverter Singleton = new RecistCodeConverter(); + public static readonly RecistCodingCodeConverter Singleton = new RecistCodingCodeConverter(); } - internal class TumorSpecimenCollectionLocalizationConverter : JsonConverter + internal class TumorSpecimenCollectionLocalizationCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(TumorSpecimenCollectionLocalization) || t == typeof(TumorSpecimenCollectionLocalization?); + public override bool CanConvert(Type t) => t == typeof(TumorSpecimenCollectionLocalizationCodingCode) || t == typeof(TumorSpecimenCollectionLocalizationCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -3245,14 +5018,20 @@ namespace MV64e.MTB var value = serializer.Deserialize(reader); switch (value) { + case "cellfree-dna": + return TumorSpecimenCollectionLocalizationCodingCode.CellfreeDna; + case "local-recurrence": + return TumorSpecimenCollectionLocalizationCodingCode.LocalRecurrence; case "metastasis": - return TumorSpecimenCollectionLocalization.Metastasis; + return TumorSpecimenCollectionLocalizationCodingCode.Metastasis; case "primary-tumor": - return TumorSpecimenCollectionLocalization.PrimaryTumor; + return TumorSpecimenCollectionLocalizationCodingCode.PrimaryTumor; + case "regional-lymph-nodes": + return TumorSpecimenCollectionLocalizationCodingCode.RegionalLymphNodes; case "unknown": - return TumorSpecimenCollectionLocalization.Unknown; + return TumorSpecimenCollectionLocalizationCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type TumorSpecimenCollectionLocalization"); + throw new Exception("Cannot unmarshal type TumorSpecimenCollectionLocalizationCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -3262,28 +5041,37 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (TumorSpecimenCollectionLocalization)untypedValue; + var value = (TumorSpecimenCollectionLocalizationCodingCode)untypedValue; switch (value) { - case TumorSpecimenCollectionLocalization.Metastasis: + case TumorSpecimenCollectionLocalizationCodingCode.CellfreeDna: + serializer.Serialize(writer, "cellfree-dna"); + return; + case TumorSpecimenCollectionLocalizationCodingCode.LocalRecurrence: + serializer.Serialize(writer, "local-recurrence"); + return; + case TumorSpecimenCollectionLocalizationCodingCode.Metastasis: serializer.Serialize(writer, "metastasis"); return; - case TumorSpecimenCollectionLocalization.PrimaryTumor: + case TumorSpecimenCollectionLocalizationCodingCode.PrimaryTumor: serializer.Serialize(writer, "primary-tumor"); return; - case TumorSpecimenCollectionLocalization.Unknown: + case TumorSpecimenCollectionLocalizationCodingCode.RegionalLymphNodes: + serializer.Serialize(writer, "regional-lymph-nodes"); + return; + case TumorSpecimenCollectionLocalizationCodingCode.Unknown: serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type TumorSpecimenCollectionLocalization"); + throw new Exception("Cannot marshal type TumorSpecimenCollectionLocalizationCodingCode"); } - public static readonly TumorSpecimenCollectionLocalizationConverter Singleton = new TumorSpecimenCollectionLocalizationConverter(); + public static readonly TumorSpecimenCollectionLocalizationCodingCodeConverter Singleton = new TumorSpecimenCollectionLocalizationCodingCodeConverter(); } - internal class TumorSpecimenCollectionMethodConverter : JsonConverter + internal class TumorSpecimenCollectionMethodCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(TumorSpecimenCollectionMethod) || t == typeof(TumorSpecimenCollectionMethod?); + public override bool CanConvert(Type t) => t == typeof(TumorSpecimenCollectionMethodCodingCode) || t == typeof(TumorSpecimenCollectionMethodCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -3292,17 +5080,17 @@ namespace MV64e.MTB switch (value) { case "biopsy": - return TumorSpecimenCollectionMethod.Biopsy; + return TumorSpecimenCollectionMethodCodingCode.Biopsy; case "cytology": - return TumorSpecimenCollectionMethod.Cytology; + return TumorSpecimenCollectionMethodCodingCode.Cytology; case "liquid-biopsy": - return TumorSpecimenCollectionMethod.LiquidBiopsy; + return TumorSpecimenCollectionMethodCodingCode.LiquidBiopsy; case "resection": - return TumorSpecimenCollectionMethod.Resection; + return TumorSpecimenCollectionMethodCodingCode.Resection; case "unknown": - return TumorSpecimenCollectionMethod.Unknown; + return TumorSpecimenCollectionMethodCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type TumorSpecimenCollectionMethod"); + throw new Exception("Cannot unmarshal type TumorSpecimenCollectionMethodCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -3312,34 +5100,34 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (TumorSpecimenCollectionMethod)untypedValue; + var value = (TumorSpecimenCollectionMethodCodingCode)untypedValue; switch (value) { - case TumorSpecimenCollectionMethod.Biopsy: + case TumorSpecimenCollectionMethodCodingCode.Biopsy: serializer.Serialize(writer, "biopsy"); return; - case TumorSpecimenCollectionMethod.Cytology: + case TumorSpecimenCollectionMethodCodingCode.Cytology: serializer.Serialize(writer, "cytology"); return; - case TumorSpecimenCollectionMethod.LiquidBiopsy: + case TumorSpecimenCollectionMethodCodingCode.LiquidBiopsy: serializer.Serialize(writer, "liquid-biopsy"); return; - case TumorSpecimenCollectionMethod.Resection: + case TumorSpecimenCollectionMethodCodingCode.Resection: serializer.Serialize(writer, "resection"); return; - case TumorSpecimenCollectionMethod.Unknown: + case TumorSpecimenCollectionMethodCodingCode.Unknown: serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type TumorSpecimenCollectionMethod"); + throw new Exception("Cannot marshal type TumorSpecimenCollectionMethodCodingCode"); } - public static readonly TumorSpecimenCollectionMethodConverter Singleton = new TumorSpecimenCollectionMethodConverter(); + public static readonly TumorSpecimenCollectionMethodCodingCodeConverter Singleton = new TumorSpecimenCollectionMethodCodingCodeConverter(); } - internal class TumorSpecimenTypeConverter : JsonConverter + internal class TumorSpecimenCodingCodeConverter : JsonConverter { - public override bool CanConvert(Type t) => t == typeof(TumorSpecimenType) || t == typeof(TumorSpecimenType?); + public override bool CanConvert(Type t) => t == typeof(TumorSpecimenCodingCode) || t == typeof(TumorSpecimenCodingCode?); public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer) { @@ -3348,17 +5136,17 @@ namespace MV64e.MTB switch (value) { case "FFPE": - return TumorSpecimenType.Ffpe; + return TumorSpecimenCodingCode.Ffpe; case "cryo-frozen": - return TumorSpecimenType.CryoFrozen; + return TumorSpecimenCodingCode.CryoFrozen; case "fresh-tissue": - return TumorSpecimenType.FreshTissue; + return TumorSpecimenCodingCode.FreshTissue; case "liquid-biopsy": - return TumorSpecimenType.LiquidBiopsy; + return TumorSpecimenCodingCode.LiquidBiopsy; case "unknown": - return TumorSpecimenType.Unknown; + return TumorSpecimenCodingCode.Unknown; } - throw new Exception("Cannot unmarshal type TumorSpecimenType"); + throw new Exception("Cannot unmarshal type TumorSpecimenCodingCode"); } public override void WriteJson(JsonWriter writer, object untypedValue, JsonSerializer serializer) @@ -3368,28 +5156,28 @@ namespace MV64e.MTB serializer.Serialize(writer, null); return; } - var value = (TumorSpecimenType)untypedValue; + var value = (TumorSpecimenCodingCode)untypedValue; switch (value) { - case TumorSpecimenType.Ffpe: + case TumorSpecimenCodingCode.Ffpe: serializer.Serialize(writer, "FFPE"); return; - case TumorSpecimenType.CryoFrozen: + case TumorSpecimenCodingCode.CryoFrozen: serializer.Serialize(writer, "cryo-frozen"); return; - case TumorSpecimenType.FreshTissue: + case TumorSpecimenCodingCode.FreshTissue: serializer.Serialize(writer, "fresh-tissue"); return; - case TumorSpecimenType.LiquidBiopsy: + case TumorSpecimenCodingCode.LiquidBiopsy: serializer.Serialize(writer, "liquid-biopsy"); return; - case TumorSpecimenType.Unknown: + case TumorSpecimenCodingCode.Unknown: serializer.Serialize(writer, "unknown"); return; } - throw new Exception("Cannot marshal type TumorSpecimenType"); + throw new Exception("Cannot marshal type TumorSpecimenCodingCode"); } - public static readonly TumorSpecimenTypeConverter Singleton = new TumorSpecimenTypeConverter(); + public static readonly TumorSpecimenCodingCodeConverter Singleton = new TumorSpecimenCodingCodeConverter(); } }