FHIR Release 3 (STU) R4 Ballot #1 (Mixed Normative/Trial use)

This page is part of the FHIR Specification (v3.0.2: STU 3). (v3.3.0: R4 Ballot 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

Orders and Observations Work Group Maturity Level : N/A Ballot Status : Informative Compartments : Not linked to any defined compartments

R2 : R3 Converson Conversion maps for Substance.

Functional status for this map: 6 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/Substance2to3" = "R2 to R3 Conversions for Substance"

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


uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Substance" alias SubstanceR2 as source
uses "http://hl7.org/fhir/StructureDefinition/Substance" alias Substance as target

uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Substance" alias SubstanceR2 as source
uses "http://hl7.org/fhir/StructureDefinition/Substance" alias Substance as target


imports "http://hl7.org/fhir/StructureMap/*2to3"

imports "http://hl7.org/fhir/StructureMap/*2to3"


group for type+types  Substance extends DomainResource
  input src : SubstanceR2 as source
  input tgt : Substance as target

  "Substance-identifier" : for src.identifier make tgt.identifier
  "Substance-category" : for src.category make tgt.category
  "Substance-code" : for src.code make tgt.code
  "Substance-description" : for src.description make tgt.description
  "Substance-instance" : for src.instance as vs0 make tgt.instance as vt0 then sbsInstance(vs0, vt0)
  "Substance-ingredient" : for src.ingredient as vs0 make tgt.ingredient as vt0 then sbsIngredient(vs0, vt0) 

  "Substance-identifier" : for src.identifier make tgt.identifier
  "Substance-category" : for src.category make tgt.category
  "Substance-code" : for src.code make tgt.code
  "Substance-description" : for src.description make tgt.description
  "Substance-instance" : for src.instance as vs0 make tgt.instance as vt0 then sbsInstance(vs0, vt0)
  "Substance-ingredient" : for src.ingredient as vs0 make tgt.ingredient as vt0 then sbsIngredient(vs0, vt0) 

endgroup


group sbsInstance extends BackboneElement
  input src : Substance as source
  input tgt : SubstanceR2 as target

  "Substance.instance-identifier" : for src.identifier make tgt.identifier
  "Substance.instance-expiry" : for src.expiry make tgt.expiry
  "Substance.instance-quantity" : for src.quantity make tgt.quantity

  "Substance.instance-identifier" : for src.identifier make tgt.identifier
  "Substance.instance-expiry" : for src.expiry make tgt.expiry
  "Substance.instance-quantity" : for src.quantity make tgt.quantity

endgroup

group sbsIngredient extends BackboneElement
  input src : Substance as source
  input tgt : SubstanceR2 as target

  "Substance.ingredient-quantity" : for src.quantity make tgt.quantity
  "Substance.ingredient-substance" : for src.substance make tgt.substance

  "Substance.ingredient-quantity" : for src.quantity make tgt.quantity
  "Substance.ingredient-substance" : for src.substance make tgt.substance

endgroup



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

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


uses "http://hl7.org/fhir/StructureDefinition/Substance" alias Substance as source
uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Substance" alias SubstanceR2 as target

uses "http://hl7.org/fhir/StructureDefinition/Substance" alias Substance as source
uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Substance" alias SubstanceR2 as target


imports "http://hl7.org/fhir/StructureMap/*3to2"

imports "http://hl7.org/fhir/StructureMap/*3to2"


group for type+types  Substance extends DomainResource
  input src : Substance as source
  input tgt : SubstanceR2 as target

  "Substance-identifier" : for src.identifier make tgt.identifier
  "Substance-category" : for src.category make tgt.category
  "Substance-code" : for src.code make tgt.code
  "Substance-description" : for src.description make tgt.description
  "Substance-instance" : for src.instance as vs0 make tgt.instance as vt0 then sbsInstance(vs0, vt0)
  "Substance-ingredient" : for src.ingredient as vs0 make tgt.ingredient as vt0 then sbsIngredient(vs0, vt0) 

  "Substance-identifier" : for src.identifier make tgt.identifier
  "Substance-category" : for src.category make tgt.category
  "Substance-code" : for src.code make tgt.code
  "Substance-description" : for src.description make tgt.description
  "Substance-instance" : for src.instance as vs0 make tgt.instance as vt0 then sbsInstance(vs0, vt0)
  "Substance-ingredient" : for src.ingredient as vs0 make tgt.ingredient as vt0 then sbsIngredient(vs0, vt0) 

endgroup


group sbsInstance extends BackboneElement
  input src : Substance as source
  input tgt : SubstanceR2 as target

  "Substance.instance-identifier" : for src.identifier make tgt.identifier
  "Substance.instance-expiry" : for src.expiry make tgt.expiry
  "Substance.instance-quantity" : for src.quantity make tgt.quantity

  "Substance.instance-identifier" : for src.identifier make tgt.identifier
  "Substance.instance-expiry" : for src.expiry make tgt.expiry
  "Substance.instance-quantity" : for src.quantity make tgt.quantity

endgroup

group sbsIngredient extends BackboneElement
  input src : Substance as source
  input tgt : SubstanceR2 as target

  "Substance.ingredient-quantity" : for src.quantity make tgt.quantity
  "Substance.ingredient-substance" : for src.substance where $this is "Reference" make tgt.substance

  "Substance.ingredient-quantity" : for src.quantity make tgt.quantity
  "Substance.ingredient-substance" : for src.substance where $this is "Reference" make tgt.substance

endgroup