cda2fhirDataTypes
type: StructureMap
node role: treeRoot
id:
  v: cda2fhirDataTypes
text:
  status:
    v: generated
  div: map "http://hl7.it/fhir/cda2fhir/StructureMap/cda2fhirDataTypes" = "cda2fhirDataTypes" conceptmap "addressUse" { prefix s = "http://terminology.hl7.org/ValueSet/v3-AddressUse" prefix t = "http://hl7.org/fhir/address-use" s:H == t:home s:HP == t:home s:HV == t:home s:WP == t:work s:DIR == t:work s:PUB == t:work s:TMP == t:temp s:OLD == t:old s:BAD == t:old } conceptmap "OBSstatus" { prefix s = "http://terminology.hl7.org/ValueSet/v3-statusCode" prefix t = "http://hl7.org/fhir/event-status" s:completed == t:final s:active == t:registered s:aborted == t:cancelled } conceptmap "EventStatus" { prefix s = "http://terminology.hl7.org/ValueSet/v3-statusCode" prefix t = "http://hl7.org/fhir/ValueSet/fm-status" s:completed == t:completed s:active == t:"in-progress" s:aborted == t:stopped s:suspended == t:"on-hold" } conceptmap "FinancialStatus" { prefix s = "http://terminology.hl7.org/ValueSet/v3-statusCode" prefix t = "http://hl7.org/fhir/ValueSet/fm-status" s:active == t:active s:aborted == t:cancelled s:suspended == t:draft } conceptmap "MedicationStatusMap" { prefix s = "http://terminology.hl7.org/ValueSet/v3-statusCode" prefix t = "http://hl7.org/fhir/ValueSet/medicationrequest-status" s:completed == t:completed s:active == t:active s:aborted == t:cancelled s:suspended == t:"on-hold" } conceptmap "cm-v3-administrative-gender" { prefix s = "http://terminology.hl7.org/ValueSet/v3-AdministrativeGender" prefix t = "http://hl7.org/fhir/ValueSet/administrative-gender" s:M == t:male s:F == t:female } conceptmap "AllergyTypeMap" { prefix s = "http://terminology.hl7.org/ValueSet/v3-type" prefix t = "http://hl7.org/fhir/ValueSet/allergyintolerance-clinical" s:OINT == t:intolerance s:ALG == t:allergy s:DALG == t:allergy s:EALG == t:allergy s:FALG == t:allergy s:NAINT == t:intolerance s:FNAINT == t:intolerance s:DNAINT == t:intolerance s:ENAINT == t:intolerance s:FINT == t:intolerance s:DINT == t:intolerance s:EINT == t:intolerance } conceptmap "AllergyCategoryMap" { prefix s = "htt…
contained: ConceptMap
  id:
    v: addressUse
  status:
    v: draft
  group:
    source:
      v: http://terminology.hl7.org/ValueSet/v3-AddressUse
    target:
      v: http://hl7.org/fhir/address-use
    element:
      code:
        v: H
    element:
      code:
        v: HP
    element:
      code:
        v: HV
    element:
      code:
        v: WP
    element:
      code:
        v: DIR
    element:
      code:
        v: PUB
    element:
      code:
        v: TMP
    element:
      code:
        v: OLD
    element:
      code:
        v: BAD
contained: ConceptMap
  id:
    v: OBSstatus
  status:
    v: draft
  group:
    source:
      v: http://terminology.hl7.org/ValueSet/v3-statusCode
    target:
      v: http://hl7.org/fhir/event-status
    element:
      code:
        v: completed
    element:
      code:
        v: active
    element:
      code:
        v: aborted
contained: ConceptMap
  id:
    v: EventStatus
  status:
    v: draft
  group:
    source:
      v: http://terminology.hl7.org/ValueSet/v3-statusCode
    target:
      v: http://hl7.org/fhir/ValueSet/fm-status
    element:
      code:
        v: completed
    element:
      code:
        v: active
    element:
      code:
        v: aborted
    element:
      code:
        v: suspended
contained: ConceptMap
  id:
    v: FinancialStatus
  status:
    v: draft
  group:
    source:
      v: http://terminology.hl7.org/ValueSet/v3-statusCode
    target:
      v: http://hl7.org/fhir/ValueSet/fm-status
    element:
      code:
        v: active
    element:
      code:
        v: aborted
    element:
      code:
        v: suspended
contained: ConceptMap
  id:
    v: MedicationStatusMap
  status:
    v: draft
  group:
    source:
      v: http://terminology.hl7.org/ValueSet/v3-statusCode
    target:
      v: http://hl7.org/fhir/ValueSet/medicationrequest-status
    element:
      code:
        v: completed
    element:
      code:
        v: active
    element:
      code:
        v: aborted
    element:
      code:
        v: suspended
contained: ConceptMap
  id:
    v: cm-v3-administrative-gender
  status:
    v: draft
  group:
    source:
      v: http://terminology.hl7.org/ValueSet/v3-AdministrativeGender
    target:
      v: http://hl7.org/fhir/ValueSet/administrative-gender
    element:
      code:
        v: M
    element:
      code:
        v: F
contained: ConceptMap
  id:
    v: AllergyTypeMap
  status:
    v: draft
  group:
    source:
      v: http://terminology.hl7.org/ValueSet/v3-type
    target:
      v: http://hl7.org/fhir/ValueSet/allergyintolerance-clinical
    element:
      code:
        v: OINT
    element:
      code:
        v: ALG
    element:
      code:
        v: DALG
    element:
      code:
        v: EALG
    element:
      code:
        v: FALG
    element:
      code:
        v: NAINT
    element:
      code:
        v: FNAINT
    element:
      code:
        v: DNAINT
    element:
      code:
        v: ENAINT
    element:
      code:
        v: FINT
    element:
      code:
        v: DINT
    element:
      code:
        v: EINT
contained: ConceptMap
  id:
    v: AllergyCategoryMap
  status:
    v: draft
  group:
    source:
      v: http://terminology.hl7.org/ValueSet/v3-type
    target:
      v: http://hl7.org/fhir/ValueSet/allergyintolerance-clinical
    element:
      code:
        v: DALG

v: home

v: equivalent

v: home

v: equivalent

v: home

v: equivalent

v: work

v: equivalent

v: work

v: equivalent

v: work

v: equivalent

v: temp

v: equivalent

v: old

v: equivalent

v: old

v: equivalent

v: final

v: equivalent

v: registered

v: equivalent

v: cancelled

v: equivalent

v: completed

v: equivalent

v: in-progress

v: equivalent

v: stopped

v: equivalent

v: on-hold

v: equivalent

v: active

v: equivalent

v: cancelled

v: equivalent

v: draft

v: equivalent

v: completed

v: equivalent

v: active

v: equivalent

v: cancelled

v: equivalent

v: on-hold

v: equivalent

v: male

v: equivalent

v: female

v: equivalent

v: intolerance

v: equivalent

v: allergy

v: equivalent

v: allergy

v: equivalent

v: allergy

v: equivalent

v: allergy

v: equivalent

v: intolerance

v: equivalent

v: intolerance

v: equivalent

v: intolerance

v: equivalent

v: intolerance

v: equivalent

v: intolerance

v: equivalent

v: intolerance

v: equivalent

v: intolerance

v: equivalent

v: medication

v: equivalent

code:
  v: EALG
target:
  code:
    v: enviroment
  equivalence:
    v: equivalent

code:
  v: FALG
target:
  code:
    v: food
  equivalence:
    v: equivalent

code:
  v: FNAINT
target:
  code:
    v: intolerance
  equivalence:
    v: equivalent

code:
  v: DNAINT
target:
  code:
    v: medication
  equivalence:
    v: equivalent

code:
  v: ENAINT
target:
  code:
    v: enviroment
  equivalence:
    v: equivalent

code:
  v: FINT
target:
  code:
    v: food
  equivalence:
    v: equivalent

code:
  v: DINT
target:
  code:
    v: medication
  equivalence:
    v: equivalent

code:
  v: EINT
target:
  code:
    v: enviroment
  equivalence:
    v: equivalent

ConceptMap
id:
  v: CricalityMap
status:
  v: draft
group:
  source:
    v: http://terminology.hl7.org/CodeSystem/v3-ObservationValue
  target:
    v: http://hl7.org/fhir/ValueSet/allergy-intolerance-criticality
  element:
    code:
      v: M
    target:
      code:
        v: low
      equivalence:
        v: equivalent
  element:
    code:
      v: H
    target:
      code:
        v: high
      equivalence:
        v: equivalent
  element:
    code:
      v: L
    target:
      code:
        v: low
      equivalence:
        v: equivalent

ConceptMap
id:
  v: ClinicalStatusMap
status:
  v: draft
group:
  source:
    v: https://loinc.org/99493-9/
  target:
    v: http://hl7.org/fhir/ValueSet/condition-clinical
  element:
    code:
      v: LA16666-2
    target:
      code:
        v: active
      equivalence:
        v: equivalent
  element:
    code:
      v: LA18632-2
    target:
      code:
        v: inactive
      equivalence:
        v: equivalent
  element:
    code:
      v: LA9041-0
    target:
      code:
        v: resolved
      equivalence:
        v: equivalent

ConceptMap
id:
  v: priority
status:
  v: draft
group:
  source:
    v: http://terminology.hl7.org/ValueSet/v3-ActPriority
  target:
    v: http://hl7.org/fhir/ValueSet/request-priority
  element:
    code:
      v: R
    target:
      code:
        v: routine
      equivalence:
        v: equivalent
  element:
    code:
      v: P
    target:
      code:
        v: asap
      equivalence:
        v: equivalent
  element:
    code:
      v: UR
    target:
      code:
        v: urgent
      equivalence:
        v: equivalent
  element:
    code:
      v: EM
    target:
      code:
        v: stat
      equivalence:
        v: equivalent
  element:
    code:
      v: S
    target:
      code:
        v: stat
      equivalence:
        v: equivalent
  element:
    code:
      v: A
    target:
      code:
        v: asap
      equivalence:
        v: equivalent
  element:
    code:
      v: CR
    target:
      code:
        v: routine
      equivalence:
        v: equivalent
  element:
    code:
      v: EL
    target:
      code:
        v: routine
      equivalence:
        v: equivalent
  element:
    code:
      v: p
    target:
      code:
        v: stat
      equivalence:
        v: equivalent
  element:
    code:
      v: PRN
    target:
      code:
        v: routine
      equivalence:
        v: equivalent
  element:
    code:
      v: RR
    target:
      code:
        v: asap
      equivalence:
        v: equivalent
  element:
    code:
      v: T
    target:
      code:
        v: urgent
      equivalence:
        v: equivalent
  element:
    code:
      v: UD
    target:
      code:
        v: routine
      equivalence:
        v: equivalent

ConceptMap
id:
  v: AllergyCriticality
status:
  v: draft
group:
  source:
    v: https://art-decor.org/art-decor/decor-valuesets--hl7it-
  target:
    v: http://hl7.org/fhir/ValueSet/allergy-intolerance-criticality
  element:
    code:
      v: L
    target:
      code:
        v: low
      equivalence:
        v: equivalent
  element:
    code:
      v: H
    target:
      code:
        v: high
      equivalence:
        v: equivalent
  element:
    code:
      v: M
    target:
      code:
        v: unable_to_assess
      equivalence:
        v: equivalent

v: 0.1.0

v: cda2fhirDataTypes

v: draft

v: 2025-10-01T07:14:02+00:00

v: HL7 Italy

name:
  v: HL7 Italy
telecom:
  system:
    v: url
  value:
    v: http://hl7.it

coding:
  system:
    v: urn:iso:std:iso:3166
  code:
    v: IT
  display:
    v: Italy

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/ED
  link: http://hl7.org/fhir/cda/StructureDefinition/ED
mode:
  v: source
alias:
  v: ED

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/INT
  link: http://hl7.org/fhir/cda/StructureDefinition/INT
mode:
  v: source
alias:
  v: INT

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/II
  link: http://hl7.org/fhir/cda/StructureDefinition/II
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/Identifier
  link: http://hl7.org/fhir/StructureDefinition/Identifier
mode:
  v: target

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/TS
  link: http://hl7.org/fhir/cda/StructureDefinition/TS
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/instant
  link: http://hl7.org/fhir/StructureDefinition/instant
mode:
  v: target

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/CS
  link: http://hl7.org/fhir/cda/StructureDefinition/CS
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/code
  link: http://hl7.org/fhir/StructureDefinition/code
mode:
  v: target

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/CE
  link: http://hl7.org/fhir/cda/StructureDefinition/CE
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/CodeableConcept
  link: http://hl7.org/fhir/StructureDefinition/CodeableConcept
mode:
  v: target

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/ST
  link: http://hl7.org/fhir/cda/StructureDefinition/ST
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/string
  link: http://hl7.org/fhir/StructureDefinition/string
mode:
  v: target

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/EN
  link: http://hl7.org/fhir/cda/StructureDefinition/EN
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/HumanName
  link: http://hl7.org/fhir/StructureDefinition/HumanName
mode:
  v: target

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/AD
  link: http://hl7.org/fhir/cda/StructureDefinition/AD
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/Address
  link: http://hl7.org/fhir/StructureDefinition/Address
mode:
  v: target

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/TEL
  link: http://hl7.org/fhir/cda/StructureDefinition/TEL
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/ContactPoint
  link: http://hl7.org/fhir/StructureDefinition/ContactPoint
mode:
  v: target

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/BL
  link: http://hl7.org/fhir/cda/StructureDefinition/BL
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/boolean
  link: http://hl7.org/fhir/StructureDefinition/boolean
mode:
  v: target

url:
  v: http://hl7.org/fhir/cda/StructureDefinition/IVL-TS
  link: http://hl7.org/fhir/cda/StructureDefinition/IVL-TS
mode:
  v: source

url:
  v: http://hl7.org/fhir/StructureDefinition/Period
  link: http://hl7.org/fhir/StructureDefinition/Period
mode:
  v: target

name:
  v: Any
type mode:
  v: none
input:
  name:
    v: src
  mode:
    v: source
input:
  name:
    v: tgt
  mode:
    v: target
rule:
  name:
    v: simple
  source:
    context:
      v: src
  target:
    context type:
      v: variable
    transform:
      v: copy
    parameter:
      value: id
        v: tgt

name:
  v: II
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: II
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: Identifier
  mode:
    v: target
rule:
  name:
    v: root1
  source:
    context:
      v: src
    element:
      v: root
    variable:
      v: r
    condition:
      v: src.extension.exists()
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: system
    transform:
      v: translate
    parameter:
      value: id
        v: r
    parameter:
      value: string
        v: http://hl7.org/fhir/ConceptMap/special-oid2uri
    parameter:
      value: string
        v: uri
rule:
  name:
    v: rootuuid
  source:
    context:
      v: src
    element:
      v: root
    variable:
      v: r
    condition:
      v: src.extension.empty() and src.root.matches('[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}')
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: urn:ietf:rfc:3986
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: evaluate
    parameter:
      value: string
        v: 'urn:uuid:' + r.lower()
rule:
  name:
    v: rootoid
  source:
    context:
      v: src
    element:
      v: root
    variable:
      v: r
    condition:
      v: src.extension.empty() and src.root.contains('.')
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: urn:ietf:rfc:3986
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: append
    parameter:
      value: string
        v: urn:oid:
    parameter:
      value: id
        v: r
rule:
  name:
    v: extension
  source:
    context:
      v: src
    element:
      v: extension
    variable:
      v: e
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: copy
    parameter:
      value: id
        v: e
rule:
  name:
    v: assigningAuthorityName
  source:
    context:
      v: src
    element:
      v: assigningAuthorityName
    variable:
      v: s
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: assigner
    variable:
      v: a
  target:
    context:
      v: a
    context type:
      v: variable
    element:
      v: display
    transform:
      v: copy
    parameter:
      value: id
        v: s

name:
  v: INT
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: INT
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: integer
  mode:
    v: target
rule:
  name:
    v: value
  source:
    context:
      v: src
    element:
      v: value
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: v
    parameter:
      value: string
        v: string

name:
  v: TemplateID
type mode:
  v: none
input:
  name:
    v: template
  type:
    v: II
  mode:
    v: source
input:
  name:
    v: tgt
  mode:
    v: target
rule:
  name:
    v: templateId
  source:
    context:
      v: template
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: extension
    variable:
      v: ext
  rule:
    name:
      v: url
    source:
      context:
        v: template
    target:
      context:
        v: ext
      context type:
        v: variable
      element:
        v: url
      transform:
        v: copy
      parameter:
        value: string
  rule:
    name:
      v: value
    source:
      context:
        v: template
    target:
      context:
        v: ext
      context type:
        v: variable
      element:
        v: value
      variable:
        v: value
      transform:
        v: create
      parameter:
        value: string
    dependent:
      name:
        v: II
      variable:
        v: template
      variable:
        v: value

string
v: Identifier

name:
  v: Negation
type mode:
  v: none
input:
  name:
    v: negation
  type:
    v: BL
  mode:
    v: source
input:
  name:
    v: tgt
  mode:
    v: target
rule:
  name:
    v: negation
  source:
    context:
      v: negation
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: modifierExtension
    variable:
      v: ext
  rule:
    name:
      v: url
    source:
      context:
        v: negation
    target:
      context:
        v: ext
      context type:
        v: variable
      element:
        v: url
      transform:
        v: copy
      parameter:
        value: string
  rule:
    name:
      v: value
    source:
      context:
        v: negation
      variable:
        v: neg
    target:
      context:
        v: ext
      context type:
        v: variable
      element:
        v: value
      transform:
        v: create
      parameter:
        value: string
    target:
      context:
        v: ext
      context type:
        v: variable
      element:
        v: value
      transform:
        v: copy
      parameter:
        value: id

string
v: boolean

id
v: neg

name:
  v: TSInstant
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: TS
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: instant
  mode:
    v: target
rule:
  name:
    v: value
  source:
    context:
      v: src
    element:
      v: value
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: v
    parameter:
      value: string
        v: string

name:
  v: TSDateTime
extends:
  v: TSInstant
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: TS
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: dateTime
  mode:
    v: target
rule:
  name:
    v: eff
  source:
    context:
      v: src
    condition:
      v: (value.contains('+'))
  rule:
    name:
      v: value
    source:
      context:
        v: src
      element:
        v: value
      variable:
        v: v
    target:
      context:
        v: tgt
      context type:
        v: variable
      element:
        v: value
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
rule:
  name:
    v: eff
  source:
    context:
      v: src
    condition:
      v: (value.contains('-'))
  rule:
    name:
      v: value
    source:
      context:
        v: src
      element:
        v: value
      variable:
        v: v
    target:
      context:
        v: tgt
      context type:
        v: variable
      element:
        v: value
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
rule:
  name:
    v: eff
  source:
    context:
      v: src
    element:
      v: value
    condition:
      v: (value.matches('^\\d{4}(\\-\\d{2}){2}T\\d{2}(:\\d{2}){2}$'))
  rule:
    name:
      v: date
    source:
      context:
        v: src
      element:
        v: value
      variable:
        v: v
    target:
      context:
        v: tgt
      context type:
        v: variable
      element:
        v: value
      transform:
        v: append
      parameter:
        value: id
      parameter:
        value: string

id
v: v

string
v: string

id
v: v

string
v: string

id
v: v

string
v: Z

name:
  v: TSDate
extends:
  v: TSInstant
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: TS
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: date
  mode:
    v: target
rule:
  name:
    v: date
  source:
    context:
      v: src
    element:
      v: value
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: v
    parameter:
      value: string
        v: string

name:
  v: IVLTSPeriod
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: IVL_TS
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: Period
  mode:
    v: target
rule:
  name:
    v: low
  source:
    context:
      v: src
    element:
      v: low
    variable:
      v: l
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: start
    variable:
      v: start
    transform:
      v: create
    parameter:
      value: string
        v: dateTime
  dependent:
    name:
      v: TSDateTime
    variable:
      v: l
    variable:
      v: start
rule:
  name:
    v: high
  source:
    context:
      v: src
    element:
      v: high
    variable:
      v: h
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: end
    variable:
      v: end
    transform:
      v: create
    parameter:
      value: string
        v: dateTime
  dependent:
    name:
      v: TSDateTime
    variable:
      v: h
    variable:
      v: end

name:
  v: IVLTSDateTime
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: IVL_TS
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: dateTime
  mode:
    v: target
rule:
  name:
    v: low
  source:
    context:
      v: src
    element:
      v: low
    variable:
      v: s
  dependent:
    name:
      v: TSDateTime
    variable:
      v: s
    variable:
      v: tgt

name:
  v: STstring
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: ST
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: string
  mode:
    v: target
rule:
  name:
    v: value
  source:
    context:
      v: src
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: v
    parameter:
      value: string
        v: string

name:
  v: EDstring
extends:
  v: STstring
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: ED
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: string
  mode:
    v: target
rule:
  name:
    v: value
  source:
    context:
      v: src
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: v
    parameter:
      value: string
        v: string

name:
  v: INTstring
extends:
  v: STstring
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: INT
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: string
  mode:
    v: target
rule:
  name:
    v: value
  source:
    context:
      v: src
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: v
    parameter:
      value: string
        v: string

name:
  v: ONstring
extends:
  v: STstring
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: ON
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: string
  mode:
    v: target
rule:
  name:
    v: value
  source:
    context:
      v: src
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: v
    parameter:
      value: string
        v: string

name:
  v: CSCode
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: CS
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: code
  mode:
    v: target
rule:
  name:
    v: code
  source:
    context:
      v: src
    element:
      v: code
    variable:
      v: c
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: c
    parameter:
      value: string
        v: string

name:
  v: CECode
extends:
  v: CSCode
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: CE
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: code
  mode:
    v: target
rule:
  name:
    v: code
  source:
    context:
      v: src
    element:
      v: code
    variable:
      v: c
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: c
    parameter:
      value: string
        v: string

name:
  v: CDCode
extends:
  v: CSCode
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: CD
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: code
  mode:
    v: target
rule:
  name:
    v: code
  source:
    context:
      v: src
    element:
      v: code
    variable:
      v: c
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: cast
    parameter:
      value: id
        v: c
    parameter:
      value: string
        v: string

name:
  v: CECodeableConcept
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: CE
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: CodeableConcept
  mode:
    v: target
rule:
  name:
    v: originltext
  source:
    context:
      v: src
    element:
      v: originalText
    variable:
      v: originalText
  rule:
    name:
      v: reference
    source:
      context:
        v: originalText
      element:
        v: reference
      variable:
        v: reference
    target:
      context:
        v: tgt
      context type:
        v: variable
      element:
        v: text
      transform:
        v: evaluate
      parameter:
        value: string
rule:
  name:
    v: code
  source:
    context:
      v: src
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: src
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystem
    source:
      context:
        v: src
      element:
        v: codeSystem
      variable:
        v: system
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system
      transform:
        v: translate
      parameter:
        value: id
      parameter:
        value: string
      parameter:
        value: string
  rule:
    name:
      v: displayName
    source:
      context:
        v: src
      element:
        v: displayName
      variable:
        v: display
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: display
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystemVersion
    source:
      context:
        v: src
      element:
        v: codeSystemVersion
      variable:
        v: version
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: version
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
rule:
  name:
    v: translation
  source:
    context:
      v: src
    element:
      v: translation
    variable:
      v: translation
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: translation
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string

string
v: reference.value

id
v: code

string
v: string

id
v: system

string
v: uri

id
v: display

string
v: string

id
v: version

string
v: string

id
v: code

string
v: string

name:
  v: codeSystem
source:
  context:
    v: translation
  element:
    v: codeSystem
  variable:
    v: system
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: system
  transform:
    v: translate
  parameter:
    value: id
      v: system
  parameter:
    value: string
      v: http://hl7.org/fhir/ConceptMap/special-oid2uri
  parameter:
    value: string
      v: uri

name:
  v: displayName
source:
  context:
    v: translation
  element:
    v: displayName
  variable:
    v: display
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: display
  transform:
    v: cast
  parameter:
    value: id
      v: display
  parameter:
    value: string
      v: string

name:
  v: codeSystemVersion
source:
  context:
    v: translation
  element:
    v: codeSystemVersion
  variable:
    v: version
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: version
  transform:
    v: cast
  parameter:
    value: id
      v: version
  parameter:
    value: string
      v: string

name:
  v: qualifier
source:
  context:
    v: translation
  element:
    v: qualifier
  variable:
    v: qualifier
rule:
  name:
    v: name
  source:
    context:
      v: qualifier
    element:
      v: name
    variable:
      v: name
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: name
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystem
    source:
      context:
        v: name
      element:
        v: codeSystem
      variable:
        v: system
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system
      transform:
        v: translate
      parameter:
        value: id
      parameter:
        value: string
      parameter:
        value: string
  rule:
    name:
      v: displayName
    source:
      context:
        v: name
      element:
        v: displayName
      variable:
        v: display
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: display
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystemVersion
    source:
      context:
        v: name
      element:
        v: codeSystemVersion
      variable:
        v: version
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: version
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
rule:
  name:
    v: value
  source:
    context:
      v: qualifier
    element:
      v: value
    variable:
      v: value
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: value
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystem
    source:
      context:
        v: value
      element:
        v: codeSystem
      variable:
        v: system
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system
      transform:
        v: translate
      parameter:
        value: id
      parameter:
        value: string
      parameter:
        value: string
  rule:
    name:
      v: displayName
    source:
      context:
        v: value
      element:
        v: displayName
      variable:
        v: display
    target:
      context:
        v: coding
      context type:
        v: variable

id
v: code

string
v: string

id
v: system

string
v: uri

id
v: display

string
v: string

id
v: version

string
v: string

id
v: code

string
v: string

id
v: system

string
v: uri

v: display

v: cast

value: id
  v: display

value: string
  v: string

name:
  v: codeSystemVersion
source:
  context:
    v: value
  element:
    v: codeSystemVersion
  variable:
    v: version
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: version
  transform:
    v: cast
  parameter:
    value: id
      v: version
  parameter:
    value: string
      v: string

name:
  v: CSCodeableConcept
extends:
  v: CECodeableConcept
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: CS
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: CodeableConcept
  mode:
    v: target
rule:
  name:
    v: originltext
  source:
    context:
      v: src
    element:
      v: originalText
    variable:
      v: originalText
  rule:
    name:
      v: reference
    source:
      context:
        v: originalText
      element:
        v: reference
      variable:
        v: reference
    target:
      context:
        v: tgt
      context type:
        v: variable
      element:
        v: text
      transform:
        v: evaluate
      parameter:
        value: string
rule:
  name:
    v: code
  source:
    context:
      v: src
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: src
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystem
    source:
      context:
        v: src
      element:
        v: codeSystem
      variable:
        v: system
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system
      transform:
        v: translate
      parameter:
        value: id
      parameter:
        value: string
      parameter:
        value: string
  rule:
    name:
      v: displayName
    source:
      context:
        v: src
      element:
        v: displayName
      variable:
        v: display
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: display
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystemVersion
    source:
      context:
        v: src
      element:
        v: codeSystemVersion
      variable:
        v: version
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: version
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
rule:
  name:
    v: translation
  source:
    context:
      v: src
    element:
      v: translation
    variable:
      v: translation
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: translation
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string

string
v: reference.value

id
v: code

string
v: string

id
v: system

string
v: uri

id
v: display

string
v: string

id
v: version

string
v: string

id
v: code

string
v: string

name:
  v: codeSystem
source:
  context:
    v: translation
  element:
    v: codeSystem
  variable:
    v: system
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: system
  transform:
    v: translate
  parameter:
    value: id
      v: system
  parameter:
    value: string
      v: http://hl7.org/fhir/ConceptMap/special-oid2uri
  parameter:
    value: string
      v: uri

name:
  v: displayName
source:
  context:
    v: translation
  element:
    v: displayName
  variable:
    v: display
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: display
  transform:
    v: cast
  parameter:
    value: id
      v: display
  parameter:
    value: string
      v: string

name:
  v: codeSystemVersion
source:
  context:
    v: translation
  element:
    v: codeSystemVersion
  variable:
    v: version
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: version
  transform:
    v: cast
  parameter:
    value: id
      v: version
  parameter:
    value: string
      v: string

name:
  v: qualifier
source:
  context:
    v: translation
  element:
    v: qualifier
  variable:
    v: qualifier
rule:
  name:
    v: name
  source:
    context:
      v: qualifier
    element:
      v: name
    variable:
      v: name
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: name
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystem
    source:
      context:
        v: name
      element:
        v: codeSystem
      variable:
        v: system
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system
      transform:
        v: translate
      parameter:
        value: id
      parameter:
        value: string
      parameter:
        value: string
  rule:
    name:
      v: displayName
    source:
      context:
        v: name
      element:
        v: displayName
      variable:
        v: display
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: display
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystemVersion
    source:
      context:
        v: name
      element:
        v: codeSystemVersion
      variable:
        v: version
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: version
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
rule:
  name:
    v: value
  source:
    context:
      v: qualifier
    element:
      v: value
    variable:
      v: value
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: value
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystem
    source:
      context:
        v: value
      element:
        v: codeSystem
      variable:
        v: system
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system
      transform:
        v: translate
      parameter:
        value: id
      parameter:
        value: string
      parameter:
        value: string
  rule:
    name:
      v: displayName
    source:
      context:
        v: value
      element:
        v: displayName
      variable:
        v: display
    target:
      context:
        v: coding
      context type:
        v: variable

id
v: code

string
v: string

id
v: system

string
v: uri

id
v: display

string
v: string

id
v: version

string
v: string

id
v: code

string
v: string

id
v: system

string
v: uri

v: display

v: cast

value: id
  v: display

value: string
  v: string

name:
  v: codeSystemVersion
source:
  context:
    v: value
  element:
    v: codeSystemVersion
  variable:
    v: version
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: version
  transform:
    v: cast
  parameter:
    value: id
      v: version
  parameter:
    value: string
      v: string

name:
  v: CDCodeableConcept
extends:
  v: CECodeableConcept
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: CD
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: CodeableConcept
  mode:
    v: target
rule:
  name:
    v: originltext
  source:
    context:
      v: src
    element:
      v: originalText
    variable:
      v: originalText
  rule:
    name:
      v: reference
    source:
      context:
        v: originalText
      element:
        v: reference
      variable:
        v: reference
    target:
      context:
        v: tgt
      context type:
        v: variable
      element:
        v: text
      transform:
        v: evaluate
      parameter:
        value: string
rule:
  name:
    v: code
  source:
    context:
      v: src
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: src
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystem
    source:
      context:
        v: src
      element:
        v: codeSystem
      variable:
        v: system
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system
      transform:
        v: translate
      parameter:
        value: id
      parameter:
        value: string
      parameter:
        value: string
  rule:
    name:
      v: displayName
    source:
      context:
        v: src
      element:
        v: displayName
      variable:
        v: display
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: display
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystemVersion
    source:
      context:
        v: src
      element:
        v: codeSystemVersion
      variable:
        v: version
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: version
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
rule:
  name:
    v: translation
  source:
    context:
      v: src
    element:
      v: translation
    variable:
      v: translation
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: translation
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string

string
v: reference.value

id
v: code

string
v: string

id
v: system

string
v: uri

id
v: display

string
v: string

id
v: version

string
v: string

id
v: code

string
v: string

name:
  v: codeSystem
source:
  context:
    v: translation
  element:
    v: codeSystem
  variable:
    v: system
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: system
  transform:
    v: translate
  parameter:
    value: id
      v: system
  parameter:
    value: string
      v: http://hl7.org/fhir/ConceptMap/special-oid2uri
  parameter:
    value: string
      v: uri

name:
  v: displayName
source:
  context:
    v: translation
  element:
    v: displayName
  variable:
    v: display
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: display
  transform:
    v: cast
  parameter:
    value: id
      v: display
  parameter:
    value: string
      v: string

name:
  v: codeSystemVersion
source:
  context:
    v: translation
  element:
    v: codeSystemVersion
  variable:
    v: version
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: version
  transform:
    v: cast
  parameter:
    value: id
      v: version
  parameter:
    value: string
      v: string

name:
  v: qualifier
source:
  context:
    v: translation
  element:
    v: qualifier
  variable:
    v: qualifier
rule:
  name:
    v: name
  source:
    context:
      v: qualifier
    element:
      v: name
    variable:
      v: name
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: name
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystem
    source:
      context:
        v: name
      element:
        v: codeSystem
      variable:
        v: system
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system
      transform:
        v: translate
      parameter:
        value: id
      parameter:
        value: string
      parameter:
        value: string
  rule:
    name:
      v: displayName
    source:
      context:
        v: name
      element:
        v: displayName
      variable:
        v: display
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: display
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystemVersion
    source:
      context:
        v: name
      element:
        v: codeSystemVersion
      variable:
        v: version
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: version
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
rule:
  name:
    v: value
  source:
    context:
      v: qualifier
    element:
      v: value
    variable:
      v: value
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: code
    source:
      context:
        v: value
      element:
        v: code
      variable:
        v: code
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: cast
      parameter:
        value: id
      parameter:
        value: string
  rule:
    name:
      v: codeSystem
    source:
      context:
        v: value
      element:
        v: codeSystem
      variable:
        v: system
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system
      transform:
        v: translate
      parameter:
        value: id
      parameter:
        value: string
      parameter:
        value: string
  rule:
    name:
      v: displayName
    source:
      context:
        v: value
      element:
        v: displayName
      variable:
        v: display
    target:
      context:
        v: coding
      context type:
        v: variable

id
v: code

string
v: string

id
v: system

string
v: uri

id
v: display

string
v: string

id
v: version

string
v: string

id
v: code

string
v: string

id
v: system

string
v: uri

v: display

v: cast

value: id
  v: display

value: string
  v: string

name:
  v: codeSystemVersion
source:
  context:
    v: value
  element:
    v: codeSystemVersion
  variable:
    v: version
target:
  context:
    v: coding
  context type:
    v: variable
  element:
    v: version
  transform:
    v: cast
  parameter:
    value: id
      v: version
  parameter:
    value: string
      v: string

name:
  v: ENHumanName
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: EN
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: HumanName
  mode:
    v: target
rule:
  name:
    v: family
  source:
    context:
      v: src
    element:
      v: family
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: family
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: given
  source:
    context:
      v: src
    element:
      v: given
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: given
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: prefix
  source:
    context:
      v: src
    element:
      v: prefix
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: prefix
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: suffix
  source:
    context:
      v: src
    element:
      v: suffix
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: suffix
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: validTime
  source:
    context:
      v: src
    element:
      v: validTime
    variable:
      v: vvv
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: period
    variable:
      v: vvv
    transform:
      v: create
  documentation:
    v: src.use as c -> tgt.use = translate(c, 'http://hl7.org/fhir/ConceptMap/cm-name-use-v3', 'code');

name:
  v: ADAddress
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: AD
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: Address
  mode:
    v: target
rule:
  name:
    v: country
  source:
    context:
      v: src
    element:
      v: country
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: country
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: state
  source:
    context:
      v: src
    element:
      v: state
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: state
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: county
  source:
    context:
      v: src
    element:
      v: county
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: district
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: city
  source:
    context:
      v: src
    element:
      v: city
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: city
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: postalCode
  source:
    context:
      v: src
    element:
      v: postalCode
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: postalCode
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: streetAddressLine
  source:
    context:
      v: src
    element:
      v: streetAddressLine
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: line
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
rule:
  name:
    v: CensusTract
  source:
    context:
      v: src
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: line
    variable:
      v: line
  rule:
    name:
      v: sfgfdsg
    source:
      context:
        v: src
      condition:
        v: src.censusTract.exists()
    rule:
      name:
        v: line
rule:
  name:
    v: streetName
  source:
    context:
      v: src
    element:
      v: streetName
    variable:
      v: v
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: line
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.dataString
  documentation:
    v: share firstline "streetAddress";

v: src

v: censusTract

v: v

v: line

v: variable

v: extension

v: ext1

v: CensusTract

v: v

v: ext1

name:
  v: houseNumber
source:
  context:
    v: src
  element:
    v: houseNumber
  variable:
    v: v
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: line
  transform:
    v: evaluate
  parameter:
    value: string
      v: v.dataString

name:
  v: addressUse
source:
  context:
    v: src
  element:
    v: use
  variable:
    v: c
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: use
  transform:
    v: translate
  parameter:
    value: id
      v: c
  parameter:
    value: string
      v: #addressUse
  parameter:
    value: string
      v: code

name:
  v: useablePeriod
source:
  context:
    v: src
  element:
    v: useablePeriod
  variable:
    v: vvv
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: period
  variable:
    v: vvv
  transform:
    v: create

name:
  v: TELContactPoint
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: TEL
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: ContactPoint
  mode:
    v: target
rule:
  name:
    v: valuetel
  source:
    context:
      v: src
    element:
      v: value
    variable:
      v: v
    condition:
      v: (src.value.startsWith('tel:'))
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.substring(4)
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: phone
rule:
  name:
    v: valuefax
  source:
    context:
      v: src
    element:
      v: value
    variable:
      v: v
    condition:
      v: (src.value.startsWith('fax:'))
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.substring(4)
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: fax
rule:
  name:
    v: valuemail
  source:
    context:
      v: src
    element:
      v: value
    variable:
      v: v
    condition:
      v: (src.value.startsWith('mailto:'))
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.substring(7)
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: email
rule:
  name:
    v: valuehttp
  source:
    context:
      v: src
    element:
      v: value
    variable:
      v: v
    condition:
      v: (src.value.startsWith('http:'))
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: evaluate
    parameter:
      value: string
        v: v.substring(5)
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: url
rule:
  name:
    v: usehome
  source:
    context:
      v: src
    element:
      v: use
    condition:
      v: (src.use.startsWith('H'))
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: use
    transform:
      v: copy
    parameter:
      value: string
        v: home
rule:
  name:
    v: usework
  source:
    context:
      v: src
    element:
      v: use
    condition:
      v: ((src.use = 'WP') or (src.use = 'DIR') or (src.use = 'PUB'))
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: use

v: copy

value: string
  v: work

name:
  v: usebad
source:
  context:
    v: src
  element:
    v: use
  condition:
    v: (src.use = 'BAD')
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: use
  transform:
    v: copy
  parameter:
    value: string
      v: old

name:
  v: usetmp
source:
  context:
    v: src
  element:
    v: use
  condition:
    v: (src.use = 'TMP')
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: use
  transform:
    v: copy
  parameter:
    value: string
      v: temp

name:
  v: usemobile
source:
  context:
    v: src
  element:
    v: use
  condition:
    v: (src.use = 'MC')
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: use
  transform:
    v: copy
  parameter:
    value: string
      v: mobile

name:
  v: useablePeriod
source:
  context:
    v: src
  element:
    v: useablePeriod
  variable:
    v: vvv
target:
  context:
    v: tgt
  context type:
    v: variable
  element:
    v: period
  variable:
    v: vvv
  transform:
    v: create

name:
  v: PQQuantity
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: PQ
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: Quantity
  mode:
    v: target
rule:
  name:
    v: unit
  source:
    context:
      v: src
    element:
      v: unit
    variable:
      v: unit
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: unit
    transform:
      v: copy
    parameter:
      value: id
        v: unit
  documentation:
    v: src.unit as unit -> tgt.code = unit;
rule:
  name:
    v: value
  source:
    context:
      v: src
    element:
      v: value
    variable:
      v: value
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: value
    transform:
      v: copy
    parameter:
      value: id
        v: value

name:
  v: RTOPQPQRatio
extends:
  v: Any
type mode:
  v: types
input:
  name:
    v: src
  type:
    v: RTO_PQ_PQ
  mode:
    v: source
input:
  name:
    v: tgt
  type:
    v: Ratio
  mode:
    v: target
rule:
  name:
    v: numerator
  source:
    context:
      v: src
    element:
      v: numerator
    variable:
      v: numerator
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: numerator
    variable:
      v: targetNumerator
  dependent:
    name:
      v: PQQuantity
    variable:
      v: numerator
    variable:
      v: targetNumerator
rule:
  name:
    v: denominator
  source:
    context:
      v: src
    element:
      v: denominator
    variable:
      v: denominator
  target:
    context:
      v: tgt
    context type:
      v: variable
    element:
      v: denominator
    variable:
      v: targetDenominator
  dependent:
    name:
      v: PQQuantity
    variable:
      v: denominator
    variable:
      v: targetDenominator

name:
  v: CensusTract
type mode:
  v: none
input:
  name:
    v: src
  type:
    v: ST
  mode:
    v: source
input:
  name:
    v: ext
  type:
    v: Extension
  mode:
    v: target
rule:
  name:
    v: url
  source:
    context:
      v: src
  target:
    context:
      v: ext
    context type:
      v: variable
    element:
      v: url
    transform:
      v: copy
    parameter:
      value: string
        v: http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-censusTract
rule:
  name:
    v: value
  source:
    context:
      v: src
  target:
    context:
      v: ext
    context type:
      v: variable
    element:
      v: value
    transform:
      v: create
    parameter:
      value: string
        v: string
  target:
    context:
      v: ext
    context type:
      v: variable
    element:
      v: value
    transform:
      v: evaluate
    parameter:
      value: string
        v: src.dataString