This page is part of the FHIR Core Extensions Registry (v5.1.0: Release 5.1) based on FHIR (HL7® FHIR® Standard) v5.0.0. This is the current published version. For a full list of available versions, see the Directory of published versions
Orders and Observations 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/ObservationDefinition5to4' /// name = 'ObservationDefinition5to4' /// title = 'FML Conversion for ObservationDefinition: R5 to R4' /// status = 'active' conceptmap "AdministrativeGender" { prefix s = "http://hl7.org/fhir/administrative-gender" prefix t = "http://hl7.org/fhir/4.0/administrative-gender" s:male - t:male s:female - t:female s:other - t:other s:unknown - t:unknown } conceptmap "ObservationDataType" { prefix s = "http://hl7.org/fhir/permitted-data-type" prefix t = "http://hl7.org/fhir/4.0/permitted-data-type" s:Quantity - t:Quantity s:CodeableConcept - t:CodeableConcept s:string - t:string s:boolean - t:boolean s:integer - t:integer s:Range - t:Range s:Ratio - t:Ratio s:SampledData - t:SampledData s:time - t:time s:dateTime - t:dateTime s:Period - t:Period } conceptmap "ObservationRangeCategory" { prefix s = "http://hl7.org/fhir/observation-range-category" prefix t = "http://hl7.org/fhir/4.0/observation-range-category" s:reference - t:reference s:critical - t:critical s:absolute - t:absolute } conceptmap "PublicationStatus" { prefix s = "http://hl7.org/fhir/publication-status" prefix t = "http://hl7.org/fhir/4.0/publication-status" s:draft - t:draft s:active - t:active s:retired - t:retired s:unknown - t:unknown } uses "http://hl7.org/fhir/StructureDefinition/ObservationDefinition" alias ObservationDefinitionR5 as source uses "http://hl7.org/fhir/4.0/StructureDefinition/ObservationDefinition" alias ObservationDefinitionR4 as target imports "http://hl7.org/fhir/StructureMap/*5to4" group ObservationDefinition(source src : ObservationDefinitionR5, target tgt : ObservationDefinitionR4) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; // src.url -> tgt.url; src.category -> tgt.category; // src.version -> tgt.version; src.code -> tgt.code; src.permittedDataType as v -> tgt.permittedDataType = translate(v, '#ObservationDataType', 'code'); src.multipleResultsAllowed -> tgt.multipleResultsAllowed; src.method -> tgt.method; // src.bodySite -> tgt.bodySite; src.preferredReportName -> tgt.preferredReportName; // src.specimen -> tgt.specimen; src.permittedUnit as s -> tgt.quantitativeDetails as t, t.customaryUnit as t1, t1.coding = s; src.qualifiedValue as s -> tgt.qualifiedInterval as t then ObservationDefinitionQualifiedValue(s, t); src.qualifiedValue as s -> tgt.validCodedValueSet = t.validCodedValueSet; src.qualifiedValue as s -> tgt.normalCodedValueSet = t.normalCodedValueSet; src.qualifiedValue as s -> tgt.abnormalCodedValueSet = t.abnormalCodedValueSet; src.qualifiedValue as s -> tgt.criticalCodedValueSet = t.criticalCodedValueSet; } group ObservationDefinitionQualifiedValue(source src, target tgt) extends BackboneElement { src.context -> tgt.context; src.appliesTo -> tgt.appliesTo; src.gender as v -> tgt.gender = translate(v, '#AdministrativeGender', 'code'); src.age -> tgt.age; src.gestationalAge -> tgt.gestationalAge; src.condition -> tgt.condition; src.rangeCategory as v -> tgt.category = translate(v, '#ObservationRangeCategory', 'code'); src.range -> tgt.range; }
/// url = 'http://hl7.org/fhir/StructureMap/ObservationDefinition5to4B' /// name = 'ObservationDefinition5to4B' /// title = 'FML Conversion for ObservationDefinition: R5 to R4B' /// status = 'active' conceptmap "AdministrativeGender" { prefix s = "http://hl7.org/fhir/administrative-gender" prefix t = "http://hl7.org/fhir/4.3/administrative-gender" s:male - t:male s:female - t:female s:other - t:other s:unknown - t:unknown } conceptmap "ObservationDataType" { prefix s = "http://hl7.org/fhir/permitted-data-type" prefix t = "http://hl7.org/fhir/4.3/permitted-data-type" s:Quantity - t:Quantity s:CodeableConcept - t:CodeableConcept s:string - t:string s:boolean - t:boolean s:integer - t:integer s:Range - t:Range s:Ratio - t:Ratio s:SampledData - t:SampledData s:time - t:time s:dateTime - t:dateTime s:Period - t:Period } conceptmap "ObservationRangeCategory" { prefix s = "http://hl7.org/fhir/observation-range-category" prefix t = "http://hl7.org/fhir/4.3/observation-range-category" s:reference - t:reference s:critical - t:critical s:absolute - t:absolute } conceptmap "PublicationStatus" { prefix s = "http://hl7.org/fhir/publication-status" prefix t = "http://hl7.org/fhir/4.3/publication-status" s:draft - t:draft s:active - t:active s:retired - t:retired s:unknown - t:unknown } uses "http://hl7.org/fhir/StructureDefinition/ObservationDefinition" alias ObservationDefinitionR5 as source uses "http://hl7.org/fhir/4.3/StructureDefinition/ObservationDefinition" alias ObservationDefinitionR4B as target imports "http://hl7.org/fhir/StructureMap/*5to4B" group ObservationDefinition(source src : ObservationDefinitionR5, target tgt : ObservationDefinitionR4B) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; // src.url -> tgt.url; src.category -> tgt.category; // src.version -> tgt.version; src.code -> tgt.code; src.permittedDataType as v -> tgt.permittedDataType = translate(v, '#ObservationDataType', 'code'); src.multipleResultsAllowed -> tgt.multipleResultsAllowed; src.method -> tgt.method; // src.bodySite -> tgt.bodySite; src.preferredReportName -> tgt.preferredReportName; // src.specimen -> tgt.specimen; src.permittedUnit as s -> tgt.quantitativeDetails as t, t.customaryUnit as t1, t1.coding = s; src.qualifiedValue as s -> tgt.qualifiedInterval as t then ObservationDefinitionQualifiedValue(s, t); src.qualifiedValue as s -> tgt.validCodedValueSet = t.validCodedValueSet; src.qualifiedValue as s -> tgt.normalCodedValueSet = t.normalCodedValueSet; src.qualifiedValue as s -> tgt.abnormalCodedValueSet = t.abnormalCodedValueSet; src.qualifiedValue as s -> tgt.criticalCodedValueSet = t.criticalCodedValueSet; } group ObservationDefinitionQualifiedValue(source src, target tgt) extends BackboneElement { src.context -> tgt.context; src.appliesTo -> tgt.appliesTo; src.gender as v -> tgt.gender = translate(v, '#AdministrativeGender', 'code'); src.age -> tgt.age; src.gestationalAge -> tgt.gestationalAge; src.condition -> tgt.condition; src.rangeCategory as v -> tgt.category = translate(v, '#ObservationRangeCategory', 'code'); src.range -> tgt.range; }
/// url = 'http://hl7.org/fhir/StructureMap/ObservationDefinition4Bto5' /// name = 'ObservationDefinition4Bto5' /// title = 'FML Conversion for ObservationDefinition: R4B to R5' /// status = 'active' conceptmap "AdministrativeGender" { prefix s = "http://hl7.org/fhir/4.3/administrative-gender" prefix t = "http://hl7.org/fhir/administrative-gender" s:male - t:male s:female - t:female s:other - t:other s:unknown - t:unknown } conceptmap "ObservationDataType" { prefix s = "http://hl7.org/fhir/4.3/permitted-data-type" prefix t = "http://hl7.org/fhir/permitted-data-type" s:Quantity - t:Quantity s:CodeableConcept - t:CodeableConcept s:string - t:string s:boolean - t:boolean s:integer - t:integer s:Range - t:Range s:Ratio - t:Ratio s:SampledData - t:SampledData s:time - t:time s:dateTime - t:dateTime s:Period - t:Period } conceptmap "ObservationRangeCategory" { prefix s = "http://hl7.org/fhir/4.3/observation-range-category" prefix t = "http://hl7.org/fhir/observation-range-category" s:reference - t:reference s:critical - t:critical s:absolute - t:absolute } conceptmap "PublicationStatus" { prefix s = "http://hl7.org/fhir/4.3/publication-status" prefix t = "http://hl7.org/fhir/publication-status" s:draft - t:draft s:active - t:active s:retired - t:retired s:unknown - t:unknown } uses "http://hl7.org/fhir/4.3/StructureDefinition/ObservationDefinition" alias ObservationDefinitionR4B as source uses "http://hl7.org/fhir/StructureDefinition/ObservationDefinition" alias ObservationDefinitionR5 as target imports "http://hl7.org/fhir/StructureMap/*4Bto5" group ObservationDefinition(source src : ObservationDefinitionR4B, target tgt : ObservationDefinitionR5) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; // src.url -> tgt.url; src.category -> tgt.category; // src.version -> tgt.version; src.code -> tgt.code; src.permittedDataType as v -> tgt.permittedDataType = translate(v, '#ObservationDataType', 'code'); src.multipleResultsAllowed -> tgt.multipleResultsAllowed; src.method -> tgt.method; // src.bodySite -> tgt.bodySite; src.preferredReportName -> tgt.preferredReportName; // src.specimen -> tgt.specimen; src.quantitativeDetails as s -> tgt then ObservationDefinitionQuantitativeDetails(s, tgt); src.qualifiedInterval as s -> tgt.qualifiedValue as t then ObservationDefinitionQualifiedValue(s, t); src.validCodedValueSet as s -> tgt.qualifiedValue as t, t.validCodedValueSet = s; src.normalCodedValueSet as s -> tgt.qualifiedValue as t, t.normalCodedValueSet = s; src.abnormalCodedValueSet as s -> tgt.qualifiedValue as t, t.abnormalCodedValueSet = s; src.criticalCodedValueSet as s -> tgt.qualifiedValue as t, t.criticalCodedValueSet = s; } group ObservationDefinitionQuantitativeDetails(source src, target tgt) extends BackboneElement { src.customaryUnit as s -> tgt then { s.coding -> tgt.permittedUnit; }; src.unit as s -> tgt then { s.coding -> tgt.permittedUnit; }; } group ObservationDefinitionQualifiedValue(source src, target tgt) extends BackboneElement { src.context -> tgt.context; src.appliesTo -> tgt.appliesTo; src.gender as v -> tgt.gender = translate(v, '#AdministrativeGender', 'code'); src.age -> tgt.age; src.gestationalAge -> tgt.gestationalAge; src.condition -> tgt.condition; src.category as v -> tgt.rangeCategory = translate(v, '#ObservationRangeCategory', 'code'); src.range -> tgt.range; }
/// url = 'http://hl7.org/fhir/StructureMap/ObservationDefinition4to5' /// name = 'ObservationDefinition4to5' /// title = 'FML Conversion for ObservationDefinition: R4 to R5' /// status = 'active' conceptmap "AdministrativeGender" { prefix s = "http://hl7.org/fhir/4.0/administrative-gender" prefix t = "http://hl7.org/fhir/administrative-gender" s:male - t:male s:female - t:female s:other - t:other s:unknown - t:unknown } conceptmap "ObservationDataType" { prefix s = "http://hl7.org/fhir/4.0/permitted-data-type" prefix t = "http://hl7.org/fhir/permitted-data-type" s:Quantity - t:Quantity s:CodeableConcept - t:CodeableConcept s:string - t:string s:boolean - t:boolean s:integer - t:integer s:Range - t:Range s:Ratio - t:Ratio s:SampledData - t:SampledData s:time - t:time s:dateTime - t:dateTime s:Period - t:Period } conceptmap "ObservationRangeCategory" { prefix s = "http://hl7.org/fhir/4.0/observation-range-category" prefix t = "http://hl7.org/fhir/observation-range-category" s:reference - t:reference s:critical - t:critical s:absolute - t:absolute } conceptmap "PublicationStatus" { prefix s = "http://hl7.org/fhir/4.0/publication-status" prefix t = "http://hl7.org/fhir/publication-status" s:draft - t:draft s:active - t:active s:retired - t:retired s:unknown - t:unknown } uses "http://hl7.org/fhir/4.0/StructureDefinition/ObservationDefinition" alias ObservationDefinitionR4 as source uses "http://hl7.org/fhir/StructureDefinition/ObservationDefinition" alias ObservationDefinitionR5 as target imports "http://hl7.org/fhir/StructureMap/*4to5" group ObservationDefinition(source src : ObservationDefinitionR4, target tgt : ObservationDefinitionR5) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; // src.url -> tgt.url; src.category -> tgt.category; // src.version -> tgt.version; src.code -> tgt.code; src.permittedDataType as v -> tgt.permittedDataType = translate(v, '#ObservationDataType', 'code'); src.multipleResultsAllowed -> tgt.multipleResultsAllowed; src.method -> tgt.method; // src.bodySite -> tgt.bodySite; src.preferredReportName -> tgt.preferredReportName; // src.specimen -> tgt.specimen; src.quantitativeDetails as s -> tgt then ObservationDefinitionQuantitativeDetails(s, tgt); src.qualifiedInterval as s -> tgt.qualifiedValue as t then ObservationDefinitionQualifiedValue(s, t); src.validCodedValueSet as s -> tgt.qualifiedValue as t, t.validCodedValueSet = s; src.normalCodedValueSet as s -> tgt.qualifiedValue as t, t.normalCodedValueSet = s; src.abnormalCodedValueSet as s -> tgt.qualifiedValue as t, t.abnormalCodedValueSet = s; src.criticalCodedValueSet as s -> tgt.qualifiedValue as t, t.criticalCodedValueSet = s; } group ObservationDefinitionQuantitativeDetails(source src, target tgt) extends BackboneElement { src.customaryUnit as s -> tgt then { s.coding -> tgt.permittedUnit; }; src.unit as s -> tgt then { s.coding -> tgt.permittedUnit; }; } group ObservationDefinitionQualifiedValue(source src, target tgt) extends BackboneElement { src.context -> tgt.context; src.appliesTo -> tgt.appliesTo; src.gender as v -> tgt.gender = translate(v, '#AdministrativeGender', 'code'); src.age -> tgt.age; src.gestationalAge -> tgt.gestationalAge; src.condition -> tgt.condition; src.category as v -> tgt.rangeCategory = translate(v, '#ObservationRangeCategory', 'code'); src.range -> tgt.range; }