This page is part of the FHIR Core Extensions Registry (v1.0.0: Releases) based on FHIR v5.0.0. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Clinical Genomics Work Group | Maturity Level: N/A | Standards Status: Informative | Security Category: N/A | Compartments: N/A |
Following are maps for converting between the equivalent R4B resource and this R5 resource.
/// url = 'http://hl7.org/fhir/StructureMap/MolecularSequence5to4' /// name = 'MolecularSequence5to4' /// title = 'FML Conversion for MolecularSequence: R5 to R4' /// status = 'active' conceptmap "orientationType" { prefix s = "http://hl7.org/fhir/orientation-type" prefix t = "http://hl7.org/fhir/4.0/orientation-type" s:sense - t:sense s:antisense - t:antisense } conceptmap "sequenceType" { prefix s = "http://hl7.org/fhir/sequence-type" prefix t = "http://hl7.org/fhir/4.0/sequence-type" s:aa - t:aa s:dna - t:dna s:rna - t:rna } conceptmap "strandType" { prefix s = "http://hl7.org/fhir/strand-type" prefix t = "http://hl7.org/fhir/4.0/strand-type" s:watson - t:watson s:crick - t:crick } uses "http://hl7.org/fhir/StructureDefinition/MolecularSequence" alias MolecularSequenceR5 as source uses "http://hl7.org/fhir/4.0/StructureDefinition/MolecularSequence" alias MolecularSequenceR4 as target imports "http://hl7.org/fhir/StructureMap/*5to4" group MolecularSequence(source src : MolecularSequenceR5, target tgt : MolecularSequenceR4) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.type as v -> tgt.type = translate(v, '#sequenceType', 'code'); src.subject -> tgt.patient; src.specimen -> tgt.specimen; // src.focus -> tgt.focus; src.device -> tgt.device; src.performer -> tgt.performer; src.relative as s -> tgt.referenceSeq as t then MolecularSequenceReferenceSeq(s, t); // src.literal -> tgt.literal; src.relative as s -> tgt.variant as t then MolecularSequenceVariant(s, t); } group MolecularSequenceReferenceSeq(source src, target tgt) extends BackboneElement { src.startingSequence as s -> tgt then { s.chromosome as s where code = 'LA21254-0' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '1', tcc.display = 'chromosome 1'; s.chromosome as s where code = 'LA21255-7' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '2', tcc.display = 'chromosome 2'; s.chromosome as s where code = 'LA21256-5' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '3', tcc.display = 'chromosome 3'; s.chromosome as s where code = 'LA21257-3' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '4', tcc.display = 'chromosome 4'; s.chromosome as s where code = 'LA21258-1' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '5', tcc.display = 'chromosome 5'; s.chromosome as s where code = 'LA21259-9' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '6', tcc.display = 'chromosome 6'; s.chromosome as s where code = 'LA21260-7' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '7', tcc.display = 'chromosome 7'; s.chromosome as s where code = 'LA21261-5' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '8', tcc.display = 'chromosome 8'; s.chromosome as s where code = 'LA21262-3' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '9', tcc.display = 'chromosome 9'; s.chromosome as s where code = 'LA21263-1' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '10', tcc.display = 'chromosome 10'; s.chromosome as s where code = 'LA21264-9' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '11', tcc.display = 'chromosome 11'; s.chromosome as s where code = 'LA21265-6' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '12', tcc.display = 'chromosome 12'; s.chromosome as s where code = 'LA21266-4' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '13', tcc.display = 'chromosome 13'; s.chromosome as s where code = 'LA21267-2' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '14', tcc.display = 'chromosome 14'; s.chromosome as s where code = 'LA21268-0' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '15', tcc.display = 'chromosome 15'; s.chromosome as s where code = 'LA21269-8' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '16', tcc.display = 'chromosome 16'; s.chromosome as s where code = 'LA21270-6' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '17', tcc.display = 'chromosome 17'; s.chromosome as s where code = 'LA21271-4' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '18', tcc.display = 'chromosome 18'; s.chromosome as s where code = 'LA21272-2' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '19', tcc.display = 'chromosome 19'; s.chromosome as s where code = 'LA21273-0' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '20', tcc.display = 'chromosome 20'; s.chromosome as s where code = 'LA21274-8' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '21', tcc.display = 'chromosome 21'; s.chromosome as s where code = 'LA21275-5' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '22', tcc.display = 'chromosome 22'; s.chromosome as s where code = 'LA21276-3' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = 'X', tcc.display = 'chromosome X'; s.chromosome as s where code = 'LA21277-1' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = 'Y', tcc.display = 'chromosome Y'; s.sequence : CodeableConcept -> tgt.referenceSeqId; s.sequence : Reference -> tgt.referenceSeqPointer; s.sequence : string -> tgt.referenceSeqString; s.windowStart -> tgt.windowStart; s.windowEnd -> tgt.windowEnd; s.orientation as v -> tgt.orientation = translate(v, '#orientationType', 'code'); s.strand as v -> tgt.strand = translate(v, '#strandType', 'code'); }; } group MolecularSequenceVariant(source src, target tgt) extends BackboneElement { src.edit as s -> tgt then { s.start -> tgt.start; s.end -> tgt.end; s.replacementSequence -> tgt.observedAllele; s.replacedSequence -> tgt.referenceAllele; }; }
/// url = 'http://hl7.org/fhir/StructureMap/MolecularSequence5to4B' /// name = 'MolecularSequence5to4B' /// title = 'FML Conversion for MolecularSequence: R5 to R4B' /// status = 'active' conceptmap "orientationType" { prefix s = "http://hl7.org/fhir/orientation-type" prefix t = "http://hl7.org/fhir/4.3/orientation-type" s:sense - t:sense s:antisense - t:antisense } conceptmap "sequenceType" { prefix s = "http://hl7.org/fhir/sequence-type" prefix t = "http://hl7.org/fhir/4.3/sequence-type" s:aa - t:aa s:dna - t:dna s:rna - t:rna } conceptmap "strandType" { prefix s = "http://hl7.org/fhir/strand-type" prefix t = "http://hl7.org/fhir/4.3/strand-type" s:watson - t:watson s:crick - t:crick } uses "http://hl7.org/fhir/StructureDefinition/MolecularSequence" alias MolecularSequenceR5 as source uses "http://hl7.org/fhir/4.3/StructureDefinition/MolecularSequence" alias MolecularSequenceR4B as target imports "http://hl7.org/fhir/StructureMap/*5to4B" group MolecularSequence(source src : MolecularSequenceR5, target tgt : MolecularSequenceR4B) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.type as v -> tgt.type = translate(v, '#sequenceType', 'code'); src.subject -> tgt.patient; src.specimen -> tgt.specimen; // src.focus -> tgt.focus; src.device -> tgt.device; src.performer -> tgt.performer; src.relative as s -> tgt.referenceSeq as t then MolecularSequenceReferenceSeq(s, t); // src.literal -> tgt.literal; src.relative as s -> tgt.variant as t then MolecularSequenceVariant(s, t); } group MolecularSequenceReferenceSeq(source src, target tgt) extends BackboneElement { src.startingSequence as s -> tgt then { s.chromosome as s where code = 'LA21254-0' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '1', tcc.display = 'chromosome 1'; s.chromosome as s where code = 'LA21255-7' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '2', tcc.display = 'chromosome 2'; s.chromosome as s where code = 'LA21256-5' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '3', tcc.display = 'chromosome 3'; s.chromosome as s where code = 'LA21257-3' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '4', tcc.display = 'chromosome 4'; s.chromosome as s where code = 'LA21258-1' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '5', tcc.display = 'chromosome 5'; s.chromosome as s where code = 'LA21259-9' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '6', tcc.display = 'chromosome 6'; s.chromosome as s where code = 'LA21260-7' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '7', tcc.display = 'chromosome 7'; s.chromosome as s where code = 'LA21261-5' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '8', tcc.display = 'chromosome 8'; s.chromosome as s where code = 'LA21262-3' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '9', tcc.display = 'chromosome 9'; s.chromosome as s where code = 'LA21263-1' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '10', tcc.display = 'chromosome 10'; s.chromosome as s where code = 'LA21264-9' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '11', tcc.display = 'chromosome 11'; s.chromosome as s where code = 'LA21265-6' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '12', tcc.display = 'chromosome 12'; s.chromosome as s where code = 'LA21266-4' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '13', tcc.display = 'chromosome 13'; s.chromosome as s where code = 'LA21267-2' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '14', tcc.display = 'chromosome 14'; s.chromosome as s where code = 'LA21268-0' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '15', tcc.display = 'chromosome 15'; s.chromosome as s where code = 'LA21269-8' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '16', tcc.display = 'chromosome 16'; s.chromosome as s where code = 'LA21270-6' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '17', tcc.display = 'chromosome 17'; s.chromosome as s where code = 'LA21271-4' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '18', tcc.display = 'chromosome 18'; s.chromosome as s where code = 'LA21272-2' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '19', tcc.display = 'chromosome 19'; s.chromosome as s where code = 'LA21273-0' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '20', tcc.display = 'chromosome 20'; s.chromosome as s where code = 'LA21274-8' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '21', tcc.display = 'chromosome 21'; s.chromosome as s where code = 'LA21275-5' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = '22', tcc.display = 'chromosome 22'; s.chromosome as s where code = 'LA21276-3' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = 'X', tcc.display = 'chromosome X'; s.chromosome as s where code = 'LA21277-1' -> tgt.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://terminology.hl7.org/CodeSystem/chromosome-human', tcc.code = 'Y', tcc.display = 'chromosome Y'; s.sequence : CodeableConcept -> tgt.referenceSeqId; s.sequence : Reference -> tgt.referenceSeqPointer; s.sequence : string -> tgt.referenceSeqString; s.windowStart -> tgt.windowStart; s.windowEnd -> tgt.windowEnd; s.orientation as v -> tgt.orientation = translate(v, '#orientationType', 'code'); s.strand as v -> tgt.strand = translate(v, '#strandType', 'code'); }; } group MolecularSequenceVariant(source src, target tgt) extends BackboneElement { src.edit as s -> tgt then { s.start -> tgt.start; s.end -> tgt.end; s.replacementSequence -> tgt.observedAllele; s.replacedSequence -> tgt.referenceAllele; }; }
/// url = 'http://hl7.org/fhir/StructureMap/MolecularSequence4Bto5' /// name = 'MolecularSequence4Bto5' /// title = 'FML Conversion for MolecularSequence: R4B to R5' /// status = 'active' conceptmap "orientationType" { prefix s = "http://hl7.org/fhir/4.3/orientation-type" prefix t = "http://hl7.org/fhir/orientation-type" s:sense - t:sense s:antisense - t:antisense } conceptmap "sequenceType" { prefix s = "http://hl7.org/fhir/4.3/sequence-type" prefix t = "http://hl7.org/fhir/sequence-type" s:aa - t:aa s:dna - t:dna s:rna - t:rna } conceptmap "strandType" { prefix s = "http://hl7.org/fhir/4.3/strand-type" prefix t = "http://hl7.org/fhir/strand-type" s:watson - t:watson s:crick - t:crick } uses "http://hl7.org/fhir/4.3/StructureDefinition/MolecularSequence" alias MolecularSequenceR4B as source uses "http://hl7.org/fhir/StructureDefinition/MolecularSequence" alias MolecularSequenceR5 as target imports "http://hl7.org/fhir/StructureMap/*4Bto5" group MolecularSequence(source src : MolecularSequenceR4B, target tgt : MolecularSequenceR5) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.type as v -> tgt.type = translate(v, '#sequenceType', 'code'); src.patient -> tgt.subject; src.specimen -> tgt.specimen; // src.focus -> tgt.focus; src.device -> tgt.device; src.performer -> tgt.performer; src.referenceSeq as s -> tgt.relative as t then MolecularSequenceReferenceSeq(s, t); // src.literal as s -> tgt.literal as t, t.observedSeq = s; src.variant as s -> tgt.relative as t then MolecularSequenceVariant(s, t); } group MolecularSequenceReferenceSeq(source src, target tgt) extends BackboneElement { src.chromosome as s where code = '1' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21254-0', tcc.display = 'Chromosome 1'; src.chromosome as s where code = '2' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21255-7', tcc.display = 'Chromosome 2'; src.chromosome as s where code = '3' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21256-5', tcc.display = 'Chromosome 3'; src.chromosome as s where code = '4' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21257-3', tcc.display = 'Chromosome 4'; src.chromosome as s where code = '5' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21258-1', tcc.display = 'Chromosome 5'; src.chromosome as s where code = '6' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21259-9', tcc.display = 'Chromosome 6'; src.chromosome as s where code = '7' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21260-7', tcc.display = 'Chromosome 7'; src.chromosome as s where code = '8' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21261-5', tcc.display = 'Chromosome 8'; src.chromosome as s where code = '9' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21262-3', tcc.display = 'Chromosome 9'; src.chromosome as s where code = '10' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21263-1', tcc.display = 'Chromosome 10'; src.chromosome as s where code = '11' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21264-9', tcc.display = 'Chromosome 11'; src.chromosome as s where code = '12' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21265-6', tcc.display = 'Chromosome 12'; src.chromosome as s where code = '13' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21266-4', tcc.display = 'Chromosome 13'; src.chromosome as s where code = '14' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21267-2', tcc.display = 'Chromosome 14'; src.chromosome as s where code = '15' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21268-0', tcc.display = 'Chromosome 15'; src.chromosome as s where code = '16' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21269-8', tcc.display = 'Chromosome 16'; src.chromosome as s where code = '17' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21270-6', tcc.display = 'Chromosome 17'; src.chromosome as s where code = '18' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21271-4', tcc.display = 'Chromosome 18'; src.chromosome as s where code = '19' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21272-2', tcc.display = 'Chromosome 19'; src.chromosome as s where code = '20' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21273-0', tcc.display = 'Chromosome 20'; src.chromosome as s where code = '21' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21274-8', tcc.display = 'Chromosome 21'; src.chromosome as s where code = '22' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21275-5', tcc.display = 'Chromosome 22'; src.chromosome as s where code = 'X' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21276-3', tcc.display = 'Chromosome X'; src.chromosome as s where code = 'Y' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21277-1', tcc.display = 'Chromosome Y'; src.referenceSeqId : CodeableConcept as s -> tgt.startingSequence as t, t.sequence = s; src.referenceSeqPointer : Reference as s -> tgt.startingSequence as t, t.sequence = s; src.referenceSeqString : string as s -> tgt.startingSequence as t, t.sequence = s; src.windowStart : integer as s -> tgt.startingSequence as t, t.windowStart = s; src.windowEnd : integer as s -> tgt.startingSequence as t, t.windowEnd = s; src.orientation as v -> tgt.startingSequence as t, t.orientation = translate(v, '#orientationType', 'code'); src.strand as v -> tgt.startingSequence as t, t.strand = translate(v, '#strandType', 'code'); } group MolecularSequenceVariant(source src, target tgt) extends BackboneElement { src.start : integer as s -> tgt.edit as t, t.start = s; src.end : integer as s -> tgt.edit as t, t.end = s; src.observedAllele as s -> tgt.edit as t, t.replacementSequence = s; src.referenceAllele as s -> tgt.edit as t, t.replacedSequence = s; }
/// url = 'http://hl7.org/fhir/StructureMap/MolecularSequence4to5' /// name = 'MolecularSequence4to5' /// title = 'FML Conversion for MolecularSequence: R4 to R5' /// status = 'active' conceptmap "orientationType" { prefix s = "http://hl7.org/fhir/4.0/orientation-type" prefix t = "http://hl7.org/fhir/orientation-type" s:sense - t:sense s:antisense - t:antisense } conceptmap "sequenceType" { prefix s = "http://hl7.org/fhir/4.0/sequence-type" prefix t = "http://hl7.org/fhir/sequence-type" s:aa - t:aa s:dna - t:dna s:rna - t:rna } conceptmap "strandType" { prefix s = "http://hl7.org/fhir/4.0/strand-type" prefix t = "http://hl7.org/fhir/strand-type" s:watson - t:watson s:crick - t:crick } uses "http://hl7.org/fhir/4.0/StructureDefinition/MolecularSequence" alias MolecularSequenceR4 as source uses "http://hl7.org/fhir/StructureDefinition/MolecularSequence" alias MolecularSequenceR5 as target imports "http://hl7.org/fhir/StructureMap/*4to5" group MolecularSequence(source src : MolecularSequenceR4, target tgt : MolecularSequenceR5) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.type as v -> tgt.type = translate(v, '#sequenceType', 'code'); src.patient -> tgt.subject; src.specimen -> tgt.specimen; // src.focus -> tgt.focus; src.device -> tgt.device; src.performer -> tgt.performer; src.referenceSeq as s -> tgt.relative as t then MolecularSequenceReferenceSeq(s, t); // src.literal as s -> tgt.literal as t, t.observedSeq = s; src.variant as s -> tgt.relative as t then MolecularSequenceVariant(s, t); } group MolecularSequenceReferenceSeq(source src, target tgt) extends BackboneElement { src.chromosome as s where code = '1' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21254-0', tcc.display = 'Chromosome 1'; src.chromosome as s where code = '2' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21255-7', tcc.display = 'Chromosome 2'; src.chromosome as s where code = '3' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21256-5', tcc.display = 'Chromosome 3'; src.chromosome as s where code = '4' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21257-3', tcc.display = 'Chromosome 4'; src.chromosome as s where code = '5' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21258-1', tcc.display = 'Chromosome 5'; src.chromosome as s where code = '6' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21259-9', tcc.display = 'Chromosome 6'; src.chromosome as s where code = '7' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21260-7', tcc.display = 'Chromosome 7'; src.chromosome as s where code = '8' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21261-5', tcc.display = 'Chromosome 8'; src.chromosome as s where code = '9' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21262-3', tcc.display = 'Chromosome 9'; src.chromosome as s where code = '10' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21263-1', tcc.display = 'Chromosome 10'; src.chromosome as s where code = '11' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21264-9', tcc.display = 'Chromosome 11'; src.chromosome as s where code = '12' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21265-6', tcc.display = 'Chromosome 12'; src.chromosome as s where code = '13' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21266-4', tcc.display = 'Chromosome 13'; src.chromosome as s where code = '14' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21267-2', tcc.display = 'Chromosome 14'; src.chromosome as s where code = '15' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21268-0', tcc.display = 'Chromosome 15'; src.chromosome as s where code = '16' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21269-8', tcc.display = 'Chromosome 16'; src.chromosome as s where code = '17' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21270-6', tcc.display = 'Chromosome 17'; src.chromosome as s where code = '18' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21271-4', tcc.display = 'Chromosome 18'; src.chromosome as s where code = '19' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21272-2', tcc.display = 'Chromosome 19'; src.chromosome as s where code = '20' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21273-0', tcc.display = 'Chromosome 20'; src.chromosome as s where code = '21' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21274-8', tcc.display = 'Chromosome 21'; src.chromosome as s where code = '22' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21275-5', tcc.display = 'Chromosome 22'; src.chromosome as s where code = 'X' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21276-3', tcc.display = 'Chromosome X'; src.chromosome as s where code = 'Y' -> tgt.startingSequence as t, t.chromosome = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://loinc.org', tcc.code = 'LA21277-1', tcc.display = 'Chromosome Y'; src.referenceSeqId : CodeableConcept as s -> tgt.startingSequence as t, t.sequence = s; src.referenceSeqPointer : Reference as s -> tgt.startingSequence as t, t.sequence = s; src.referenceSeqString : string as s -> tgt.startingSequence as t, t.sequence = s; src.windowStart : integer as s -> tgt.startingSequence as t, t.windowStart = s; src.windowEnd : integer as s -> tgt.startingSequence as t, t.windowEnd = s; src.orientation as v -> tgt.startingSequence as t, t.orientation = translate(v, '#orientationType', 'code'); src.strand as v -> tgt.startingSequence as t, t.strand = translate(v, '#strandType', 'code'); } group MolecularSequenceVariant(source src, target tgt) extends BackboneElement { src.start : integer as s -> tgt.edit as t, t.start = s; src.end : integer as s -> tgt.edit as t, t.end = s; src.observedAllele as s -> tgt.edit as t, t.replacementSequence = s; src.referenceAllele as s -> tgt.edit as t, t.replacedSequence = s; }