R4 Ballot #1 #2 (Mixed Normative/Trial use)

This page is part of the FHIR Specification (v3.3.0: (v3.5.0: R4 Ballot 2). #2). 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 Group Maturity Level : N/A Ballot Status : Informative Compartments : Not linked to any defined compartments

R2 : R3 : R4 Conversion maps for SearchParameter.

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

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

map "http://hl7.org/fhir/StructureMap/SearchParameter3to4" = "R3 to R4 Conversions for SearchParameter"


uses "http://hl7.org/fhir/DSTU2/StructureDefinition/SearchParameter" alias SearchParameterR2 as source


uses "http://hl7.org/fhir/3.0/StructureDefinition/SearchParameter" alias SearchParameterR3 as source

uses "http://hl7.org/fhir/StructureDefinition/SearchParameter" alias SearchParameter 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/*3to4"


group for type+types  SearchParameter extends DomainResource
  input src : SearchParameterR2 as source
  input tgt : SearchParameter as target


  "SearchParameter-url" : for src.url make tgt.url
  "SearchParameter-name" : for src.name make tgt.name
  "SearchParameter-status" : for src.status default "draft" make tgt.status
  "SearchParameter-experimental" : for src.experimental make tgt.experimental
  "SearchParameter-date" : for src.date make tgt.date
  "SearchParameter-publisher" : for src.publisher make tgt.publisher
  "SearchParameter-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
  }


  "SearchParameter-purpose" : for src.requirements make tgt.purpose
  "SearchParameter-code" : for src.code make tgt.code
  "SearchParameter-base" : for src.base make tgt.base
  "SearchParameter-type" : for src.type make tgt.type
  "SearchParameter-description" : for src.description make tgt.description
  "SearchParameter-xpath" : for src.xpath make tgt.xpath
  "SearchParameter-xpathUsage" : for src.xpathUsage make tgt.xpathUsage
  "SearchParameter-target" : for src.target make tgt.target

group SearchParameter extends DomainResource
  input src : SearchParameterR3 as source
  input tgt : SearchParameter as target


  "SearchParameter.url" : for src.url as vs make tgt.url as vt
  "SearchParameter.version" : for src.version as vs make tgt.version as vt
  "SearchParameter.name" : for src.name as vs make tgt.name as vt
  "SearchParameter.status" : for src.status as vs make tgt.status as vt
  "SearchParameter.experimental" : for src.experimental as vs make tgt.experimental as vt
  "SearchParameter.date" : for src.date as vs make tgt.date as vt
  "SearchParameter.publisher" : for src.publisher as vs make tgt.publisher as vt
  "SearchParameter.contact" : for src.contact as vs make tgt.contact as vt
  "SearchParameter.useContext" : for src.useContext as vs make tgt.useContext as vt
  "SearchParameter.jurisdiction" : for src.jurisdiction as vs make tgt.jurisdiction as vt
  "SearchParameter.purpose" : for src.purpose as vs make tgt.purpose as vt
  "SearchParameter.code" : for src.code as vs make tgt.code as vt
  "SearchParameter.base" : for src.base as vs make tgt.base as vt
  "SearchParameter.type" : for src.type as vs make tgt.type as vt
  "SearchParameter.description" : for src.description as vs make tgt.description as vt
  "SearchParameter.expression" : for src.expression as vs make tgt.expression as vt
  "SearchParameter.xpath" : for src.xpath as vs make tgt.xpath as vt
  "SearchParameter.xpathUsage" : for src.xpathUsage as vs make tgt.xpathUsage as vt
  "SearchParameter.target" : for src.target as vs make tgt.target as vt
  "SearchParameter.chain" : for src.chain as vs make tgt.chain as vt
  "SearchParameter.component" : for src.component as vs0 make tgt.component as vt0 then {
    "SearchParameter.component.expression" : for vs0.expression as vs make vt0.expression as vt
  }

endgroup



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

map "http://hl7.org/fhir/StructureMap/SearchParameter4to3" = "R4 to R3 Conversion for SearchParameter"



uses "http://hl7.org/fhir/StructureDefinition/SearchParameter" alias SearchParameter as source
uses "http://hl7.org/fhir/DSTU2/StructureDefinition/SearchParameter" alias SearchParameterR2 as target

uses "http://hl7.org/fhir/3.0/StructureDefinition/SearchParameter" alias SearchParameterR3 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/*4to3"


group for type+types  SearchParameter extends DomainResource
  input src : SearchParameter as source
  input tgt : SearchParameterR2 as target


  "SearchParameter-url" : for src.url make tgt.url
  "SearchParameter-name" : for src.name make tgt.name
  "SearchParameter-status" : for src.status make tgt.status
  "SearchParameter-experimental" : for src.experimental make tgt.experimental
  "SearchParameter-publisher" : for src.publisher make tgt.publisher
  "SearchParameter-contact" : for src.contact as vs0 make tgt.contact as vt0 then {
    "SearchParameter.contact-name" : for vs0.name make vt0.name
    "SearchParameter.contact-telecom" : for vs0.telecom make vt0.telecom
  }


  "SearchParameter-date" : for src.date make tgt.date
  "SearchParameter-requirements" : for src.purpose make tgt.requirements
  "SearchParameter-code" : for src.code make tgt.code
  "SearchParameter-base" : for src.base only_one make tgt.base
  "SearchParameter-type" : for src.type make tgt.type
  "SearchParameter-description" : for src.description make tgt.description
  "SearchParameter-xpath" : for src.xpath make tgt.xpath
  "SearchParameter-xpathUsage" : for src.xpathUsage make tgt.xpathUsage
  "SearchParameter-target" : for src.target make tgt.target

group SearchParameter extends DomainResource
  input src : SearchParameter as source
  input tgt : SearchParameterR3 as target


  "SearchParameter.url" : for src.url as vs make tgt.url as vt
  "SearchParameter.version" : for src.version as vs make tgt.version as vt
  "SearchParameter.name" : for src.name as vs make tgt.name as vt
  "SearchParameter.status" : for src.status as vs make tgt.status as vt
  "SearchParameter.experimental" : for src.experimental as vs make tgt.experimental as vt
  "SearchParameter.date" : for src.date as vs make tgt.date as vt
  "SearchParameter.publisher" : for src.publisher as vs make tgt.publisher as vt
  "SearchParameter.contact" : for src.contact as vs make tgt.contact as vt
  "SearchParameter.useContext" : for src.useContext as vs make tgt.useContext as vt
  "SearchParameter.jurisdiction" : for src.jurisdiction as vs make tgt.jurisdiction as vt
  "SearchParameter.purpose" : for src.purpose as vs make tgt.purpose as vt
  "SearchParameter.code" : for src.code as vs make tgt.code as vt
  "SearchParameter.base" : for src.base as vs make tgt.base as vt
  "SearchParameter.type" : for src.type as vs make tgt.type as vt
  "SearchParameter.description" : for src.description as vs make tgt.description as vt
  "SearchParameter.expression" : for src.expression as vs make tgt.expression as vt
  "SearchParameter.xpath" : for src.xpath as vs make tgt.xpath as vt
  "SearchParameter.xpathUsage" : for src.xpathUsage as vs make tgt.xpathUsage as vt
  "SearchParameter.target" : for src.target as vs make tgt.target as vt
  "SearchParameter.chain" : for src.chain as vs make tgt.chain as vt
  "SearchParameter.component" : for src.component as vs0 make tgt.component as vt0 then {
    "SearchParameter.component.expression" : for vs0.expression as vs make vt0.expression as vt
  }

endgroup