National Directory of Healthcare Providers & Services (NDH) Implementation Guide
2.0.0-current - ci-build US

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

StructureMap: This StructureMap defines the mapping from Plan-Net Endpoint to NDH Endpoint.

Official URL: http://hl7.org/fhir/us/ndh/StructureMap/PlanNetToNdhEndpointSM Version: 2.0.0-current
Standards status: Trial-use Maturity Level: 4 Computable Name: PlanNetToNdhEndpointSM

This StructureMap defines the mapping from Plan-Net Endpoint to NDH Endpoint.

Language: en

map "http://hl7.org/fhir/us/ndh/StructureMap/PlanNetToNdhEndpointSM" = "PlanNetToNdhEndpointSM"

// This StructureMap defines the mapping from Plan-Net Endpoint to NDH Endpoint.

uses "http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/plannet-Endpoint" alias Source as source
uses "http://hl7.org/fhir/us/ndh/StructureDefinition/ndh-Endpoint" alias Target as target

group PlanNetToNdhEndpoint(source src : Endpoint, target tgt : Endpoint) {
  src.extension where (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/plannet-endpoint-usecase') "dropPlanNetEndpointUsecases"; // intentionally not mapped as there is no equivalent in NDH.
  src.managingOrganization as vManagingOrg -> tgt.managingOrganization = vManagingOrg;
  src.contact as vContactSrc -> tgt.contact as vContactTgt then {
    vContactSrc.value as vContactValue -> vContactTgt.value = vContactValue "copyContactValue";
    vContactSrc.system as vContactSystem -> vContactTgt.system = vContactSystem "copyContactSystem";
  } "copyContact";
  src.identifier as vIdentifierSrc -> tgt.identifier as vIdentifierTgt then {
    vIdentifierSrc as vIdentifierValue -> vIdentifierTgt = vIdentifierValue "copyIdentifierValue";
    vIdentifierSrc.assigner as vIdentifierAssigner -> vIdentifierTgt.assigner = vIdentifierAssigner "copyIdentifierAssigner";
  } "copyIdentifier";
  src.status as vStatus -> tgt.status = vStatus;
  src.connectionType as vConnectionType -> tgt.connectionType = vConnectionType;
  src.name as vName -> tgt.name = vName;
  src.payloadType as vPayloadType -> tgt.payloadType = vPayloadType;
  src.payloadMimeType as vPayloadMimeType -> tgt.payloadMimeType = vPayloadMimeType;
  src.address as vAddress -> tgt.address = vAddress;
  src.header as vHeader -> tgt.header = vHeader;
  src.period as vPeriod -> tgt.period = vPeriod;
  src.meta as vMetaSrc -> tgt.meta as vMetaTgt then {
    vMetaSrc.lastUpdated as vLastUpdated -> vMetaTgt.lastUpdated = vLastUpdated "copyMetaLastUpdated";
  } "copyMeta";
}