PlanNetToNdhHealthcareServiceSM
type: StructureMap
node role: treeRoot
id:
  v: PlanNetToNdhHealthcareServiceSM
language:
  v: en
text:
  status:
    v: generated
  div:
    v: Generated Narrative: StructureMap PlanNetToNdhHealthcareServiceSM #xD; map "http://hl7.org/fhir/us/ndh/StructureMap/PlanNetToNdhHealthcareServiceSM" = "PlanNetToNdhHealthcareServiceSM"#xD; #xD; // This StructureMap defines the mapping from Plan-Net HealthcareService to NDH HealthcareService.#xD; #xD; uses "http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/plannet-HealthcareService" alias HealthcareServicePN as source#xD; uses "http://hl7.org/fhir/us/ndh/StructureDefinition/ndh-HealthcareService" alias HealthcareServiceNDH as target#xD; #xD; group PlanNetToNdhHealthcareService(source src : HealthcareServicePN, target tgt : HealthcareServiceNDH) {#xD; src.language as vLanguage -> tgt.language = vLanguage;#xD; src.text as vText -> tgt.text = vText;#xD; src.extension as vNewPatientsSrc where (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/newpatients') -> tgt.extension as vNewPatientsTgt then {#xD; vNewPatientsSrc as vNewPatientsForUrl -> vNewPatientsTgt.url = 'http://hl7.org/fhir/us/ndh/StructureDefinition/base-ext-newpatients' "setNewPatientsUrl";#xD; vNewPatientsSrc.extension as vFromNetworkSrc where (url = 'fromNetwork') -> vNewPatientsTgt.extension = vFromNetworkSrc "copyNewPatientsFromNetwork";#xD; vNewPatientsSrc.extension as vCharacteristicsSrc where (url = 'characteristics') -> vNewPatientsTgt.extension = vCharacteristicsSrc "copyNewPatientsCharacteristics";#xD; vNewPatientsSrc.extension as vAcceptingPatientsSrc where (url = 'acceptingPatients') -> vNewPatientsTgt.extension as vAcceptingPatientsTgt then {#xD; vAcceptingPatientsSrc.url as vAcceptingPatientsUrl -> vAcceptingPatientsTgt.url = vAcceptingPatientsUrl "copyAcceptingPatientsUrl";#xD; vAcceptingPatientsSrc.value as vAcceptingPatientsValueSrc where (coding.exists()) -> vAcceptingPatientsTgt.value = create('CodeableConcept') as vAcceptingPatientsValueTgt then {#xD; vAcceptingPatientsValueSrc.coding as vAcceptingPatientsCodingSrc where (system = 'http://hl7.org/fhir/…
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-wg
    l: structuredefinition-wg
  value: Code
    v: pa
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm
    l: structuredefinition-fmm
  value: Integer
    v: 4
    extension:
      url:
        v: http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom
        l: structuredefinition-conformance-derivedFrom
      value: Canonical
        v: http://hl7.org/fhir/us/ndh/ImplementationGuide/hl7.fhir.us.ndh
        l: hl7.fhir.us.ndh
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status
    l: structuredefinition-standards-status
  value: Code
    v: trial-use
    extension:
      url:
        v: http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom
        l: structuredefinition-conformance-derivedFrom
      value: Canonical
        v: http://hl7.org/fhir/us/ndh/ImplementationGuide/hl7.fhir.us.ndh
        l: hl7.fhir.us.ndh
url:
  v: http://hl7.org/fhir/us/ndh/StructureMap/PlanNetToNdhHealthcareServiceSM
  l: PlanNetToNdhHealthcareServiceSM
version:
  v: 2.0.0-current
name:
  v: PlanNetToNdhHealthcareServiceSM
title:
  v: This StructureMap defines the mapping from Plan-Net HealthcareService to NDH HealthcareService.
status:
  v: active
date:
  v: 2026-06-10T18:29:48+00:00
publisher:
  v: HL7 International / Patient Administration
contact:
  name:
    v: HL7 International / Patient Administration
  telecom:
    system:
      v: url
    value:
      v: http://www.hl7.org/Special/committees/pafm
  telecom:
    system:
      v: email
description:
  v: This StructureMap defines the mapping from Plan-Net HealthcareService to NDH HealthcareService.
jurisdiction:
  coding:
    system:
      v: urn:iso:std:iso:3166
      l: 3166
    code:
      v: US
    display:
      v: United States of America
structure:
  url:
    v: http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/plannet-HealthcareService
    l: plannet-HealthcareService
  mode:
    v: source
  alias:
    v: HealthcareServicePN
structure:
  url:
    v: http://hl7.org/fhir/us/ndh/StructureDefinition/ndh-HealthcareService
    l: ndh-HealthcareService
  mode:
    v: target
  alias:
    v: HealthcareServiceNDH
group:
  name:
    v: PlanNetToNdhHealthcareService
  type mode:
    v: none
  input:
    name:
      v: src
    type:
      v: HealthcareServicePN
    mode:
      v: source
  input:
    name:
      v: tgt
    type:
      v: HealthcareServiceNDH
    mode:
      v: target
  rule:
    name:
      v: language
    source:
      context:
        v: src
      element:
        v: language
      variable:
        v: vLanguage
    target:
      context:
        v: tgt
      context type:
        v: variable
      element:
        v: language
      transform:
        v: copy
      parameter:
        value: Id
  rule:
    name:
      v: text
    source:
      context:
        v: src
      element:
        v: text
      variable:
        v: vText
    target:
      context:
        v: tgt
      context type:
        v: variable
      element:
        v: text
      transform:
        v: copy
      parameter:
        value: Id
  rule:
    name:
      v: copyNewPatientsExtension
    source:
      context:
        v: src
      element:
        v: extension
      variable:
        v: vNewPatientsSrc
      condition:
        v: (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/newpatients')
    target:
      context:
        v: tgt
      context type:
        v: variable
      element:
        v: extension
      variable:
        v: vNewPatientsTgt
    rule:
      name:
        v: setNewPatientsUrl
    rule:
      name:
        v: copyNewPatientsFromNetwork
    rule:
      name:
        v: copyNewPatientsCharacteristics
    rule:
      name:
        v: copyNewPatientsAcceptingPatients
  rule:
    name:
      v: copyDeliveryMethodExtension
    source:
      context:
        v: src
      element:
        v: extension
      variable:
        v: vDeliveryMethod
      condition:
        v: (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/delivery-method')

Id
v: vLanguage

Id
v: vText

v: vNewPatientsSrc

v: vNewPatientsForUrl

v: vNewPatientsTgt

v: variable

v: url

v: copy

v: vNewPatientsSrc

v: extension

v: vFromNetworkSrc

v: (url = 'fromNetwork')

v: vNewPatientsTgt

v: variable

v: extension

v: copy

value: Id
  v: vFromNetworkSrc

v: vNewPatientsSrc

v: extension

v: vCharacteristicsSrc

v: (url = 'characteristics')

v: vNewPatientsTgt

v: variable

v: extension

v: copy

value: Id
  v: vCharacteristicsSrc

v: vNewPatientsSrc

v: extension

v: vAcceptingPatientsSrc

v: (url = 'acceptingPatients')

v: vNewPatientsTgt

v: variable

v: extension

v: vAcceptingPatientsTgt

v: copyAcceptingPatientsUrl

context:
  v: vAcceptingPatientsSrc
element:
  v: url
variable:
  v: vAcceptingPatientsUrl

context:
  v: vAcceptingPatientsTgt
context type:
  v: variable
element:
  v: url
transform:
  v: copy
parameter:
  value: Id
    v: vAcceptingPatientsUrl

v: copyAcceptingPatientsValue

context:
  v: vAcceptingPatientsSrc
element:
  v: value
variable:
  v: vAcceptingPatientsValueSrc
condition:
  v: (coding.exists())

context:
  v: vAcceptingPatientsTgt
context type:
  v: variable
element:
  v: value
variable:
  v: vAcceptingPatientsValueTgt
transform:
  v: create
parameter:
  value: String
    v: CodeableConcept

name:
  v: translateAcceptingPatientsCoding
source:
  context:
    v: vAcceptingPatientsValueSrc
  element:
    v: coding
  variable:
    v: vAcceptingPatientsCodingSrc
  condition:
    v: (system = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/AcceptingPatientsCS')
target:
  context:
    v: vAcceptingPatientsValueTgt
  context type:
    v: variable
  element:
    v: coding
  transform:
    v: translate
  parameter:
    value: Id
      v: vAcceptingPatientsCodingSrc
  parameter:
    value: String
      v: http://hl7.org/fhir/us/ndh/ConceptMap/plannet-to-ndh-accepting-patients
  parameter:
    value: String
      v: Coding

name:
  v: copyAcceptingPatientsOtherCoding
source:
  context:
    v: vAcceptingPatientsValueSrc
  element:
    v: coding
  variable:
    v: vAcceptingPatientsOtherCodingSrc
  condition:
    v: (system != 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/AcceptingPatientsCS')
target:
  context:
    v: vAcceptingPatientsValueTgt
  context type:
    v: variable
  element:
    v: coding
  transform:
    v: copy
  parameter:
    value: Id
      v: vAcceptingPatientsOtherCodingSrc

context:
  v: tgt
context type:
  v: variable
element:
  v: extension
variable:
  v: vDeliveryMethodTgt

name:
  v: setDeliveryMethodUrl
source:
  context:
    v: vDeliveryMethod
  variable:
    v: vDeliveryMethodForUrl
target:
  context:
    v: vDeliveryMethodTgt
  context type:
    v: variable
  element:
    v: url
  transform:
    v: copy
  parameter:
    value: String
      v: http://hl7.org/fhir/us/ndh/StructureDefinition/base-ext-delivery-method

name:
  v: copyDeliveryMethodTypeSubExt
source:
  context:
    v: vDeliveryMethod
  element:
    v: extension
  variable:
    v: vDeliveryMethodTypeSrc
  condition:
    v: (url = 'type')
target:
  context:
    v: vDeliveryMethodTgt
  context type:
    v: variable
  element:
    v: extension
  variable:
    v: vDeliveryMethodTypeTgt
rule:
  name:
    v: setDeliveryMethodTypeUrl
  source:
    context:
      v: vDeliveryMethodTypeSrc
    variable:
      v: vDeliveryMethodTypeForUrl
  target:
    context:
      v: vDeliveryMethodTypeTgt
    context type:
      v: variable
    element:
      v: url
    transform:
      v: copy
    parameter:
      value: String
        v: deliveryMethodtype
rule:
  name:
    v: copyDeliveryMethodTypeValue
  source:
    context:
      v: vDeliveryMethodTypeSrc
    element:
      v: value
    variable:
      v: vDeliveryMethodTypeValueSrc
    condition:
      v: (coding.exists() and ($this is CodeableConcept))
  target:
    context:
      v: vDeliveryMethodTypeTgt
    context type:
      v: variable
    element:
      v: value
    variable:
      v: vDeliveryMethodTypeValueTgt
    transform:
      v: create
    parameter:
      value: String
        v: CodeableConcept
  rule:
    name:
      v: translateDeliveryMethodTypeCoding
    source:
      context:
        v: vDeliveryMethodTypeValueSrc
      element:
        v: coding
      variable:
        v: vDeliveryMethodTypeCodingSrc
      condition:
        v: (system = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/DeliveryMethodCS')
    target:
      context:
        v: vDeliveryMethodTypeValueTgt
      context type:
        v: variable
      element:
        v: coding
      transform:
        v: translate
      parameter:
        value: Id
      parameter:
        value: String
      parameter:
        value: String
  rule:
    name:
      v: copyDeliveryMethodTypeOtherCoding
    source:
      context:
        v: vDeliveryMethodTypeValueSrc
      element:
        v: coding
      variable:
        v: vDeliveryMethodTypeOtherCodingSrc
      condition:
        v: (system != 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/DeliveryMethodCS')
    target:
      context:
        v: vDeliveryMethodTypeValueTgt
      context type:
        v: variable
      element:
        v: coding
      transform:
        v: copy
      parameter:
        value: Id

Id
v: vDeliveryMethodTypeCodingSrc

String
v: Coding

Id
v: vDeliveryMethodTypeOtherCodingSrc

name:
  v: copyVirtualModalitiesSubExt
source:
  context:
    v: vDeliveryMethod
  element:
    v: extension
  variable:
    v: vVirtualModalitiesSrc
  condition:
    v: (url = 'virtualModalities')
target:
  context:
    v: vDeliveryMethodTgt
  context type:
    v: variable
  element:
    v: extension
  variable:
    v: vVirtualModalitiesTgt
rule:
  name:
    v: copyVirtualModalitiesUrl
  source:
    context:
      v: vVirtualModalitiesSrc
    element:
      v: url
    variable:
      v: vVirtualModalitiesUrl
  target:
    context:
      v: vVirtualModalitiesTgt
    context type:
      v: variable
    element:
      v: url
    transform:
      v: copy
    parameter:
      value: Id
        v: vVirtualModalitiesUrl
rule:
  name:
    v: copyVirtualModalitiesValue
  source:
    context:
      v: vVirtualModalitiesSrc
    element:
      v: value
    variable:
      v: vVirtualModalitiesValueSrc
    condition:
      v: (coding.exists() and ($this is CodeableConcept))
  target:
    context:
      v: vVirtualModalitiesTgt
    context type:
      v: variable
    element:
      v: value
    variable:
      v: vVirtualModalitiesValueTgt
    transform:
      v: create
    parameter:
      value: String
        v: CodeableConcept
  rule:
    name:
      v: translateVirtualModalitiesCoding
    source:
      context:
        v: vVirtualModalitiesValueSrc
      element:
        v: coding
      variable:
        v: vVirtualModalitiesCodingSrc
      condition:
        v: (system = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/VirtualModalitiesCS')
    target:
      context:
        v: vVirtualModalitiesValueTgt
      context type:
        v: variable
      element:
        v: coding
      transform:
        v: translate
      parameter:
        value: Id
      parameter:
        value: String
      parameter:
        value: String
  rule:
    name:
      v: copyVirtualModalitiesOtherCoding
    source:
      context:
        v: vVirtualModalitiesValueSrc
      element:
        v: coding
      variable:
        v: vVirtualModalitiesOtherCodingSrc
      condition:
        v: (system != 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/VirtualModalitiesCS')
    target:
      context:
        v: vVirtualModalitiesValueTgt
      context type:
        v: variable
      element:
        v: coding
      transform:
        v: copy
      parameter:
        value: Id

Id
v: vVirtualModalitiesCodingSrc

String
v: Coding

Id
v: vVirtualModalitiesOtherCodingSrc

name:
  v: copyDeliveryMethodOtherSubExt
source:
  context:
    v: vDeliveryMethod
  element:
    v: extension
  variable:
    v: vDeliveryMethodOtherSubExt
  condition:
    v: ((url != 'type') and (url != 'virtualModalities'))
target:
  context:
    v: vDeliveryMethodTgt
  context type:
    v: variable
  element:
    v: extension
  transform:
    v: copy
  parameter:
    value: Id
      v: vDeliveryMethodOtherSubExt

name:
  v: identifier
source:
  context:
    v: src
  element:
    v: identifier
  variable:
    v: vIdentifier
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: identifier
  transform:
    v: copy
  parameter:
    value: Id
      v: vIdentifier

name:
  v: location
source:
  context:
    v: src
  element:
    v: location
  variable:
    v: vLocation
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: location
  transform:
    v: copy
  parameter:
    value: Id
      v: vLocation

name:
  v: name
source:
  context:
    v: src
  element:
    v: name
  variable:
    v: vName
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: name
  transform:
    v: copy
  parameter:
    value: Id
      v: vName

name:
  v: copyTelecom
source:
  context:
    v: src
  element:
    v: telecom
  variable:
    v: vTelecomSrc
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: telecom
  variable:
    v: vTelecomTgt
rule:
  name:
    v: copyTelecomSystem
  source:
    context:
      v: vTelecomSrc
    element:
      v: system
    variable:
      v: vTelecomSystem
  target:
    context:
      v: vTelecomTgt
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: Id
        v: vTelecomSystem
rule:
  name:
    v: copyTelecomValue
  source:
    context:
      v: vTelecomSrc
    element:
      v: value
    variable:
      v: vTelecomValue
  target:
    context:
      v: vTelecomTgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: copy
    parameter:
      value: Id
        v: vTelecomValue
rule:
  name:
    v: copyTelecomUse
  source:
    context:
      v: vTelecomSrc
    element:
      v: use
    variable:
      v: vTelecomUse
  target:
    context:
      v: vTelecomTgt
    context type:
      v: variable
    element:
      v: use
    transform:
      v: copy
    parameter:
      value: Id
        v: vTelecomUse
rule:
  name:
    v: copyTelecomRank
  source:
    context:
      v: vTelecomSrc
    element:
      v: rank
    variable:
      v: vTelecomRank
  target:
    context:
      v: vTelecomTgt
    context type:
      v: variable
    element:
      v: rank
    transform:
      v: copy
    parameter:
      value: Id
        v: vTelecomRank
rule:
  name:
    v: copyTelecomPeriod
  source:
    context:
      v: vTelecomSrc
    element:
      v: period
    variable:
      v: vTelecomPeriod
  target:
    context:
      v: vTelecomTgt
    context type:
      v: variable
    element:
      v: period
    transform:
      v: copy
    parameter:
      value: Id
        v: vTelecomPeriod
rule:
  name:
    v: copyTelecomContactpointAvailabletime
  source:
    context:
      v: vTelecomSrc
    element:
      v: extension
    variable:
      v: vContactpointAvailabletimeSrc
    condition:
      v: (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/contactpoint-availabletime')
  target:
    context:
      v: vTelecomTgt
    context type:
      v: variable
    element:
      v: extension
    variable:
      v: vContactpointAvailabletimeTgt
  rule:
    name:
      v: setContactpointAvailabletimeUrl
    source:
      context:
        v: vContactpointAvailabletimeSrc
      variable:
        v: vContactpointAvailabletimeForUrl
    target:
      context:
        v: vContactpointAvailabletimeTgt
      context type:
        v: variable
      element:
        v: url
      transform:
        v: copy
      parameter:
        value: String
  rule:
    name:
      v: copyContactpointAvailabletimeSubExt
    source:
      context:
        v: vContactpointAvailabletimeSrc
      element:
        v: extension
      variable:
        v: vContactpointAvailabletimeSubExt
    target:
      context:
        v: vContactpointAvailabletimeTgt
      context type:
        v: variable
      element:
        v: extension
      transform:
        v: copy
      parameter:
        value: Id
  rule:
    name:
      v: copyContactpointAvailabletimeValue
    source:
      context:
        v: vContactpointAvailabletimeSrc
      element:
        v: value
      variable:
        v: vContactpointAvailabletimeValue
    target:
      context:
        v: vContactpointAvailabletimeTgt
      context type:
        v: variable

Id
v: vContactpointAvailabletimeSubExt

v: value

v: copy

value: Id
  v: vContactpointAvailabletimeValue

name:
  v: copyTelecomViaIntermediary
source:
  context:
    v: vTelecomSrc
  element:
    v: extension
  variable:
    v: vViaIntermediarySrc
  condition:
    v: (url = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/StructureDefinition/via-intermediary')
target:
  context:
    v: vTelecomTgt
  context type:
    v: variable
  element:
    v: extension
  variable:
    v: vViaIntermediaryTgt
rule:
  name:
    v: setViaIntermediaryUrl
  source:
    context:
      v: vViaIntermediarySrc
    variable:
      v: vViaIntermediaryForUrl
  target:
    context:
      v: vViaIntermediaryTgt
    context type:
      v: variable
    element:
      v: url
    transform:
      v: copy
    parameter:
      value: String
        v: http://hl7.org/fhir/us/ndh/StructureDefinition/base-ext-via-intermediary
rule:
  name:
    v: copyViaIntermediarySubExt
  source:
    context:
      v: vViaIntermediarySrc
    element:
      v: extension
    variable:
      v: vViaIntermediarySubExt
  target:
    context:
      v: vViaIntermediaryTgt
    context type:
      v: variable
    element:
      v: extension
    transform:
      v: copy
    parameter:
      value: Id
        v: vViaIntermediarySubExt
rule:
  name:
    v: copyViaIntermediaryValue
  source:
    context:
      v: vViaIntermediarySrc
    element:
      v: value
    variable:
      v: vViaIntermediaryValue
  target:
    context:
      v: vViaIntermediaryTgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: copy
    parameter:
      value: Id
        v: vViaIntermediaryValue

name:
  v: program
source:
  context:
    v: src
  element:
    v: program
  variable:
    v: vProgram
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: program
  transform:
    v: copy
  parameter:
    value: Id
      v: vProgram

name:
  v: endpoint
source:
  context:
    v: src
  element:
    v: endpoint
  variable:
    v: vEndpoint
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: endpoint
  transform:
    v: copy
  parameter:
    value: Id
      v: vEndpoint

name:
  v: active
source:
  context:
    v: src
  element:
    v: active
  variable:
    v: vActive
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: active
  transform:
    v: copy
  parameter:
    value: Id
      v: vActive

name:
  v: providedBy
source:
  context:
    v: src
  element:
    v: providedBy
  variable:
    v: vProvidedBy
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: providedBy
  transform:
    v: copy
  parameter:
    value: Id
      v: vProvidedBy

name:
  v: coverageArea
source:
  context:
    v: src
  element:
    v: coverageArea
  variable:
    v: vCoverageArea
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: coverageArea
  transform:
    v: copy
  parameter:
    value: Id
      v: vCoverageArea

name:
  v: copyCategory
source:
  context:
    v: src
  element:
    v: category
  variable:
    v: vCategorySrc
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: category
  variable:
    v: vCategoryTgt
rule:
  name:
    v: copyCategoryText
  source:
    context:
      v: vCategorySrc
    element:
      v: text
    variable:
      v: vCategoryText
  target:
    context:
      v: vCategoryTgt
    context type:
      v: variable
    element:
      v: text
    transform:
      v: copy
    parameter:
      value: Id
        v: vCategoryText
rule:
  name:
    v: translateCategoryCoding
  source:
    context:
      v: vCategorySrc
    element:
      v: coding
    variable:
      v: vCategoryCodingSrc
    condition:
      v: (system = 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/HealthcareServiceCategoryCS')
  target:
    context:
      v: vCategoryTgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: vCategoryCodingTgt
  rule:
    name:
      v: setCategoryCodingSystem
    source:
      context:
        v: vCategoryCodingSrc
      variable:
        v: vCategoryCodingForSystem
    target:
      context:
        v: vCategoryCodingTgt
      context type:
        v: variable
      element:
        v: system
      transform:
        v: copy
      parameter:
        value: String
  rule:
    name:
      v: translateCategoryCode
    source:
      context:
        v: vCategoryCodingSrc
      element:
        v: code
      variable:
        v: vCategoryCodeSrc
    target:
      context:
        v: vCategoryCodingTgt
      context type:
        v: variable
      element:
        v: code
      transform:
        v: translate
      parameter:
        value: Id
      parameter:
        value: String
      parameter:
        value: String
  rule:
    name:
      v: copyCategoryDisplay
    source:
      context:
        v: vCategoryCodingSrc
      element:
        v: display
      variable:
        v: vCategoryDisplay
    target:
      context:
        v: vCategoryCodingTgt
      context type:
        v: variable
      element:
        v: display
      transform:
        v: copy
      parameter:
        value: Id
rule:
  name:
    v: copyCategoryCodingOther
  source:
    context:
      v: vCategorySrc
    element:
      v: coding
    variable:
      v: vCategoryCodingOtherSrc
    condition:
      v: (system != 'http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/HealthcareServiceCategoryCS')
  target:
    context:
      v: vCategoryTgt
    context type:
      v: variable
    element:
      v: coding
    transform:
      v: copy
    parameter:
      value: Id
        v: vCategoryCodingOtherSrc

Id
v: vCategoryCodeSrc

String
v: code

Id
v: vCategoryDisplay

name:
  v: type
source:
  context:
    v: src
  element:
    v: type
  variable:
    v: vType
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: type
  transform:
    v: copy
  parameter:
    value: Id
      v: vType

name:
  v: specialty
source:
  context:
    v: src
  element:
    v: specialty
  variable:
    v: vSpecialty
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: specialty
  transform:
    v: copy
  parameter:
    value: Id
      v: vSpecialty

name:
  v: appointmentRequired
source:
  context:
    v: src
  element:
    v: appointmentRequired
  variable:
    v: vAppointmentRequired
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: appointmentRequired
  transform:
    v: copy
  parameter:
    value: Id
      v: vAppointmentRequired

name:
  v: availableTime
source:
  context:
    v: src
  element:
    v: availableTime
  variable:
    v: vAvailableTime
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: availableTime
  transform:
    v: copy
  parameter:
    value: Id
      v: vAvailableTime

name:
  v: notAvailable
source:
  context:
    v: src
  element:
    v: notAvailable
  variable:
    v: vNotAvailable
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: notAvailable
  transform:
    v: copy
  parameter:
    value: Id
      v: vNotAvailable

name:
  v: availabilityExceptions
source:
  context:
    v: src
  element:
    v: availabilityExceptions
  variable:
    v: vAvailabilityExceptions
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: availabilityExceptions
  transform:
    v: copy
  parameter:
    value: Id
      v: vAvailabilityExceptions

name:
  v: eligibility
source:
  context:
    v: src
  element:
    v: eligibility
  variable:
    v: vEligibility
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: eligibility
  transform:
    v: copy
  parameter:
    value: Id
      v: vEligibility

name:
  v: serviceProvisionCode
source:
  context:
    v: src
  element:
    v: serviceProvisionCode
  variable:
    v: vServiceProvisionCode
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: serviceProvisionCode
  transform:
    v: copy
  parameter:
    value: Id
      v: vServiceProvisionCode

name:
  v: comment
source:
  context:
    v: src
  element:
    v: comment
  variable:
    v: vComment
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: comment
  transform:
    v: copy
  parameter:
    value: Id
      v: vComment

name:
  v: extraDetails
source:
  context:
    v: src
  element:
    v: extraDetails
  variable:
    v: vExtraDetails
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: extraDetails
  transform:
    v: copy
  parameter:
    value: Id
      v: vExtraDetails

name:
  v: photo
source:
  context:
    v: src
  element:
    v: photo
  variable:
    v: vPhoto
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: photo
  transform:
    v: copy
  parameter:
    value: Id
      v: vPhoto

name:
  v: characteristic
source:
  context:
    v: src
  element:
    v: characteristic
  variable:
    v: vCharacteristic
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: characteristic
  transform:
    v: copy
  parameter:
    value: Id
      v: vCharacteristic

name:
  v: communication
source:
  context:
    v: src
  element:
    v: communication
  variable:
    v: vCommunication
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: communication
  transform:
    v: copy
  parameter:
    value: Id
      v: vCommunication

name:
  v: referralMethod
source:
  context:
    v: src
  element:
    v: referralMethod
  variable:
    v: vReferralMethod
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: referralMethod
  transform:
    v: copy
  parameter:
    value: Id
      v: vReferralMethod

name:
  v: copyMeta
source:
  context:
    v: src
  element:
    v: meta
  variable:
    v: vMetaSrc
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: meta
  variable:
    v: vMetaTgt
rule:
  name:
    v: copyMetaLastUpdated
  source:
    context:
      v: vMetaSrc
    element:
      v: lastUpdated
    variable:
      v: vLastUpdated
  target:
    context:
      v: vMetaTgt
    context type:
      v: variable
    element:
      v: lastUpdated
    transform:
      v: copy
    parameter:
      value: Id
        v: vLastUpdated
rule:
  name:
    v: setTargetProfile
  source:
    context:
      v: vMetaSrc
    variable:
      v: vMetaProfileSrc
  target:
    context:
      v: vMetaTgt
    context type:
      v: variable
    element:
      v: profile
    transform:
      v: copy
    parameter:
      value: String
        v: http://hl7.org/fhir/us/ndh/StructureDefinition/ndh-HealthcareService