National Directory of Healthcare Providers & Services (NDH) Implementation Guide, published by HL7 International / Patient Administration. This guide is not an authorized publication; it is the continuous build for version 2.0.0-current built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-us-ndh/ and changes regularly. See the Directory of published versions
| Official URL: http://hl7.org/fhir/us/ndh/StructureMap/PlanNetToNdhOrganizationSM | Version: 2.0.0-current | ||||
| Standards status: Trial-use | Maturity Level: 4 | Computable Name: PlanNetToNdhOrganizationSM | |||
| Other Identifiers: OID:2.999.1.2.3.4.43.7 | |||||
This StructureMap defines the mapping from Plan-Net Organization to NDH Organization.
Language: en
map "http://hl7.org/fhir/us/ndh/StructureMap/PlanNetToNdhOrganizationSM" = "PlanNetToNdhOrganizationSM" // This StructureMap defines the mapping from Plan-Net Organization to NDH Organization. uses "http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/plannet-Organization" alias OrganizationPN as source uses "http://hl7.org/fhir/us/ndh/StructureDefinition/ndh-Organization" alias OrganizationNDH as target group PlanNetToNdhOrganization(source src : OrganizationPN, target tgt : OrganizationNDH) { src.extension as vDroppedOrgDescription where (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/org-description') "dropPlanNetOrganizationDescription"; // intentionally not mapped as there is no equivalent NDH element. src.language as vLanguage -> tgt.language = vLanguage; src.text as vText -> tgt.text = vText; src.extension as vExtension where (url != 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/org-description') -> tgt.extension = vExtension; src.identifier as vIdentifier -> tgt.identifier = vIdentifier; src.active as vActive -> tgt.active = true; src.type as vTypeSrc -> tgt.type as vTypeTgt then { vTypeSrc.text as vTypeText -> vTypeTgt.text = vTypeText "copyTypeText"; vTypeSrc.coding as vTypeCodingSrc where (system = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/OrgTypeCS') -> vTypeTgt.coding = translate(vTypeCodingSrc, 'http://hl7.org/fhir/us/ndh/ConceptMap/plannet-to-ndh-org-type', 'Coding') "translateTypeCoding"; vTypeSrc.coding as vTypeOtherCodingSrc where (system != 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/OrgTypeCS') -> vTypeTgt.coding = vTypeOtherCodingSrc "copyTypeOtherCoding"; } "copyType"; src.name as vName -> tgt.name = vName; src.alias as vAlias -> tgt.alias = vAlias; src.telecom as vTelecomSrc -> tgt.telecom as vTelecomTgt then { vTelecomSrc.system as vTelecomSystem -> vTelecomTgt.system = vTelecomSystem "copyTelecomSystem"; vTelecomSrc.value as vTelecomValue -> vTelecomTgt.value = vTelecomValue "copyTelecomValue"; vTelecomSrc.use as vTelecomUse -> vTelecomTgt.use = vTelecomUse "copyTelecomUse"; vTelecomSrc.rank as vTelecomRank -> vTelecomTgt.rank = vTelecomRank "copyTelecomRank"; vTelecomSrc.period as vTelecomPeriod -> vTelecomTgt.period = vTelecomPeriod "copyTelecomPeriod"; vTelecomSrc.extension as vDroppedContactpointAvailabletimeSrc where (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/contactpoint-availabletime') "dropPlanNetContactpointAvailabletime"; // intentionally not mapped because ContactPointAvailableTime was removed from NDH. vTelecomSrc.extension as vDroppedViaIntermediarySrc where (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/via-intermediary') "dropPlanNetViaIntermediary"; // intentionally not mapped because ViaIntermediary was removed from NDH. } "copyTelecom"; src.address as vAddress -> tgt.address = vAddress; src.partOf as vPartOf -> tgt.partOf = vPartOf; src.contact as vContactSrc -> tgt.contact as vContactTgt then { vContactSrc.name as vContactName -> vContactTgt.name = vContactName "copyContactName"; vContactSrc.telecom as vContactTelecomSrc -> vContactTgt.telecom as vContactTelecomTgt then { vContactTelecomSrc.system as vContactTelecomSystem -> vContactTelecomTgt.system = vContactTelecomSystem "copyContactTelecomSystem"; vContactTelecomSrc.value as vContactTelecomValue -> vContactTelecomTgt.value = vContactTelecomValue "copyContactTelecomValue"; vContactTelecomSrc.use as vContactTelecomUse -> vContactTelecomTgt.use = vContactTelecomUse "copyContactTelecomUse"; vContactTelecomSrc.rank as vContactTelecomRank -> vContactTelecomTgt.rank = vContactTelecomRank "copyContactTelecomRank"; vContactTelecomSrc.period as vContactTelecomPeriod -> vContactTelecomTgt.period = vContactTelecomPeriod "copyContactTelecomPeriod"; vContactTelecomSrc.extension as vDroppedContactpointAvailabletimeSrc where (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/contactpoint-availabletime') "dropPlanNetContactpointAvailabletimeInContact"; // intentionally not mapped because ContactPointAvailableTime was removed from NDH. vContactTelecomSrc.extension as vDroppedViaIntermediarySrc where (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/via-intermediary') "dropPlanNetViaIntermediaryInContact"; // intentionally not mapped because ViaIntermediary was removed from NDH. } "copyContactTelecom"; } "copyContact"; src.endpoint as vEndpoint -> tgt.endpoint = vEndpoint; src.meta as vMetaSrc -> tgt.meta as vMetaTgt then { vMetaSrc.lastUpdated as vLastUpdated -> vMetaTgt.lastUpdated = vLastUpdated "copyMetaLastUpdated"; vMetaSrc as vMetaProfileSrc -> vMetaTgt.profile = 'http://hl7.org/fhir/us/ndh/StructureDefinition/ndh-Organization' "setTargetProfile"; } "copyMeta"; }