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
Official URL: http://hl7.org/fhir/StructureMap/MeasureReport5to4B | Version: 5.1.0 | |||
Standards status: Trial-use | Maturity Level: 1 | Computable Name: MeasureReport5to4B |
FMLConversionforMeasureReportR5toR4B
/// url = 'http://hl7.org/fhir/StructureMap/MeasureReport5to4B' /// name = 'MeasureReport5to4B' /// title = 'FML Conversion for MeasureReport: R5 to R4B' /// status = 'active' conceptmap "MeasureReportStatus" { prefix s = "http://hl7.org/fhir/measure-report-status" prefix t = "http://hl7.org/fhir/4.3/measure-report-status" s:complete - t:complete s:pending - t:pending s:error - t:error } conceptmap "MeasureReportType" { prefix s = "http://hl7.org/fhir/measure-report-type" prefix t = "http://hl7.org/fhir/4.3/measure-report-type" s:individual - t:individual s:"subject-list" - t:"subject-list" s:summary - t:summary s:"data-exchange" - t:"data-collection" } uses "http://hl7.org/fhir/StructureDefinition/MeasureReport" alias MeasureReportR5 as source uses "http://hl7.org/fhir/4.3/StructureDefinition/MeasureReport" alias MeasureReportR4B as target imports "http://hl7.org/fhir/StructureMap/*5to4B" group MeasureReport(source src : MeasureReportR5, target tgt : MeasureReportR4B) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.status as v -> tgt.status = translate(v, '#MeasureReportStatus', 'code'); src.type as v -> tgt.type = translate(v, '#MeasureReportType', 'code'); src.measure -> tgt.measure; // src.dataUpdateType as v -> tgt.dataUpdateType = translate(v, '#SubmitDataUpdateType', 'code'); src.subject -> tgt.subject; src.date -> tgt.date; src.reporter -> tgt.reporter; src.period -> tgt.period; // src.reportingVendor -> tgt.reportingVendor; src.improvementNotation -> tgt.improvementNotation; // src.inputParameters -> tgt.inputParameters; src.group as s -> tgt.group as t then MeasureReportGroup(s, t); src.evaluatedResource -> tgt.evaluatedResource; // src.supplementalData -> tgt.supplementalData; } group MeasureReportGroup(source src, target tgt) extends BackboneElement { src.code -> tgt.code; // src.linkId -> tgt.linkId; src.population as s -> tgt.population as t then MeasureReportGroupPopulation(s, t); // src.subject -> tgt.subject; src.measureScore : Quantity -> tgt.measureScore; src.stratifier as s -> tgt.stratifier as t then MeasureReportGroupStratifier(s, t); // src.measureScore : dateTime -> tgt.measureScore; } group MeasureReportGroupPopulation(source src, target tgt) extends BackboneElement { src.code -> tgt.code; // src.linkId -> tgt.linkId; src.count -> tgt.count; src.subjectResults -> tgt.subjectResults; } group MeasureReportGroupStratifier(source src, target tgt) extends BackboneElement { src.code -> tgt.code; // src.linkId -> tgt.linkId; src.stratum as s -> tgt.stratum as t then MeasureReportGroupStratifierStratum(s, t); } group MeasureReportGroupStratifierStratum(source src, target tgt) extends BackboneElement { src.value : CodeableConcept -> tgt.value; src.component as s -> tgt.component as t then MeasureReportGroupStratifierStratumComponent(s, t); // src.value : boolean -> tgt.value; src.population as s -> tgt.population as t then MeasureReportGroupStratifierStratumPopulation(s, t); src.measureScore : Quantity -> tgt.measureScore; } group MeasureReportGroupStratifierStratumComponent(source src, target tgt) extends BackboneElement { src.code -> tgt.code; // src.linkId -> tgt.linkId; src.value : CodeableConcept -> tgt.value; } group MeasureReportGroupStratifierStratumPopulation(source src, target tgt) extends BackboneElement { src.code -> tgt.code; // src.linkId -> tgt.linkId; src.count -> tgt.count; src.subjectResults -> tgt.subjectResults; }