R4 Draft for Comment

This page is part of the FHIR Specification (v3.2.0: R4 Ballot 1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3

FHIR Infrastructure Work GroupMaturity Level: N/ABallot Status: Informative Compartments: Not linked to any defined compartments

R2 : R3 Conversion maps for NamingSystem.

Functional status for this map: 3 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid. (see documentation)

map "http://hl7.org/fhir/StructureMap/NamingSystem2to3" = "R2 to R3 Conversions for NamingSystem"

uses "http://hl7.org/fhir/DSTU2/StructureDefinition/NamingSystem" alias NamingSystemR2 as source
uses "http://hl7.org/fhir/StructureDefinition/NamingSystem" alias NamingSystem as target

imports "http://hl7.org/fhir/StructureMap/primitives2to3"
imports "http://hl7.org/fhir/StructureMap/DomainResource2to3"
imports "http://hl7.org/fhir/StructureMap/ContactPoint2to3"
imports "http://hl7.org/fhir/StructureMap/Reference2to3"
imports "http://hl7.org/fhir/StructureMap/Period2to3"
imports "http://hl7.org/fhir/StructureMap/CodeableConcept2to3"

group for type+types  NamingSystem extends DomainResource
  input src : NamingSystemR2 as source
  input tgt : NamingSystem as target

  "NamingSystem-name" : for src.name make tgt.name
  "NamingSystem-status" : for src.status make tgt.status
  "NamingSystem-kind" : for src.kind make tgt.kind
  "NamingSystem-date" : for src.date make tgt.date
  "NamingSystem-publisher" : for src.publisher make tgt.publisher
  "NamingSystem-contact" : for src.contact as vs0 make tgt.contact as vt0 then {
    "ContactDetail-name" : for vs0.name make vt0.name
    "ContactDetail-telecom" : for vs0.telecom make vt0.telecom
  }

  "NamingSystem-responsible" : for src.responsible make tgt.responsible
  "NamingSystem-type" : for src.type make tgt.type
  "NamingSystem-description" : for src.description make tgt.description
  "NamingSystem-usage" : for src.usage make tgt.usage
  "NamingSystem-uniqueId" : for src.uniqueId as vs0 make tgt.uniqueId as vt0 then {
    "NamingSystem.uniqueId-type" : for vs0.type make vt0.type
    "NamingSystem.uniqueId-value" : for vs0.value make vt0.value
    "NamingSystem.uniqueId-preferred" : for vs0.preferred make vt0.preferred
    "NamingSystem.uniqueId-period" : for vs0.period make vt0.period
  }

  "NamingSystem-replacedBy" : for src.replacedBy make tgt.replacedBy
  "NamingSystem-jurisdiction" : for src.useContext where coding.system = 'urn:iso:std:iso:3166' make tgt.jurisdiction

endgroup

map "http://hl7.org/fhir/StructureMap/NamingSystem3to2" = "R3 to R2 Conversion for NamingSystem"

uses "http://hl7.org/fhir/StructureDefinition/NamingSystem" alias NamingSystem as source
uses "http://hl7.org/fhir/DSTU2/StructureDefinition/NamingSystem" alias NamingSystemR2 as target

imports "http://hl7.org/fhir/StructureMap/primitives3to2"
imports "http://hl7.org/fhir/StructureMap/DomainResource3to2"
imports "http://hl7.org/fhir/StructureMap/ContactPoint3to2"
imports "http://hl7.org/fhir/StructureMap/Reference3to2"
imports "http://hl7.org/fhir/StructureMap/Period3to2"
imports "http://hl7.org/fhir/StructureMap/CodeableConcept3to2"

group for type+types  NamingSystem extends DomainResource
  input src : NamingSystem as source
  input tgt : NamingSystemR2 as target

  "NamingSystem-name" : for src.name make tgt.name
  "NamingSystem-status" : for src.status make tgt.status
  "NamingSystem-kind" : for src.kind make tgt.kind
  "NamingSystem-publisher" : for src.publisher make tgt.publisher
  "NamingSystem-contact" : for src.contact as vs0 make tgt.contact as vt0 then {
    "NamingSystem.contact-name" : for vs0.name make vt0.name
    "NamingSystem.contact-telecom" : for vs0.telecom make vt0.telecom
  }

  "NamingSystem-responsible" : for src.responsible make tgt.responsible
  "NamingSystem-date" : for src.date make tgt.date
  "NamingSystem-type" : for src.type make tgt.type
  "NamingSystem-description" : for src.description make tgt.description
  "NamingSystem-useContext" : for src.jurisdiction make tgt.useContext
  "NamingSystem-usage" : for src.usage make tgt.usage
  "NamingSystem-uniqueId" : for src.uniqueId as vs0 make tgt.uniqueId as vt0 then {
    "NamingSystem.uniqueId-type" : for vs0.type make vt0.type
    "NamingSystem.uniqueId-value" : for vs0.value make vt0.value
    "NamingSystem.uniqueId-preferred" : for vs0.preferred make vt0.preferred
    "NamingSystem.uniqueId-period" : for vs0.period make vt0.period
  }

  "NamingSystem-replacedBy" : for src.replacedBy make tgt.replacedBy

endgroup