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/InsurancePlan5to4B | Version: 5.1.0 | |||
Standards status: Trial-use | Maturity Level: 1 | Computable Name: InsurancePlan5to4B |
FMLConversionforInsurancePlanR5toR4B
/// url = 'http://hl7.org/fhir/StructureMap/InsurancePlan5to4B' /// name = 'InsurancePlan5to4B' /// title = 'FML Conversion for InsurancePlan: R5 to R4B' /// status = 'active' 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/InsurancePlan" alias InsurancePlanR5 as source uses "http://hl7.org/fhir/4.3/StructureDefinition/InsurancePlan" alias InsurancePlanR4B as target imports "http://hl7.org/fhir/StructureMap/*5to4B" group InsurancePlan(source src : InsurancePlanR5, target tgt : InsurancePlanR4B) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.status as v -> tgt.status = translate(v, '#PublicationStatus', 'code'); src.type -> tgt.type; src.name -> tgt.name; src.alias -> tgt.alias; src.period -> tgt.period; src.ownedBy -> tgt.ownedBy; src.administeredBy -> tgt.administeredBy; src.coverageArea -> tgt.coverageArea; src.contact as s -> tgt.contact as t then { s.purpose -> t.purpose; s.name -> t.name; s.telecom -> t.telecom; s.address -> t.address; }; src.endpoint -> tgt.endpoint; src.network -> tgt.network; src.coverage as s -> tgt.coverage as t then InsurancePlanCoverage(s, t); src.plan as s -> tgt.plan as t then InsurancePlanPlan(s, t); } group InsurancePlanCoverage(source src, target tgt) extends BackboneElement { src.type -> tgt.type; src.network -> tgt.network; src.benefit as s -> tgt.benefit as t then InsurancePlanCoverageBenefit(s, t); } group InsurancePlanCoverageBenefit(source src, target tgt) extends BackboneElement { src.type -> tgt.type; src.requirement -> tgt.requirement; src.limit as s -> tgt.limit as t then InsurancePlanCoverageBenefitLimit(s, t); } group InsurancePlanCoverageBenefitLimit(source src, target tgt) extends BackboneElement { src.value -> tgt.value; src.code -> tgt.code; } group InsurancePlanPlan(source src, target tgt) extends BackboneElement { src.identifier -> tgt.identifier; src.type -> tgt.type; src.coverageArea -> tgt.coverageArea; src.network -> tgt.network; src.generalCost as s -> tgt.generalCost as t then InsurancePlanPlanGeneralCost(s, t); src.specificCost as s -> tgt.specificCost as t then InsurancePlanPlanSpecificCost(s, t); } group InsurancePlanPlanGeneralCost(source src, target tgt) extends BackboneElement { src.type -> tgt.type; src.groupSize -> tgt.groupSize; src.cost -> tgt.cost; src.comment -> tgt.comment; } group InsurancePlanPlanSpecificCost(source src, target tgt) extends BackboneElement { src.category -> tgt.category; src.benefit as s -> tgt.benefit as t then InsurancePlanPlanSpecificCostBenefit(s, t); } group InsurancePlanPlanSpecificCostBenefit(source src, target tgt) extends BackboneElement { src.type -> tgt.type; src.cost as s -> tgt.cost as t then InsurancePlanPlanSpecificCostBenefitCost(s, t); } group InsurancePlanPlanSpecificCostBenefitCost(source src, target tgt) extends BackboneElement { src.type -> tgt.type; src.applicability -> tgt.applicability; src.qualifiers -> tgt.qualifiers; src.value -> tgt.value; }