Current Build
Patient Care Work GroupMaturity Level: N/ABallot Status: Informative Compartments: Encounter, Patient, Practitioner, RelatedPerson

R3 : R4 Conversion maps for Condition.

Functional status for this map: 12 tests of which 12 fail to execute. (see documentation)

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


uses "http://hl7.org/fhir/3.0/StructureDefinition/Condition" alias ConditionR3 as source
uses "http://hl7.org/fhir/StructureDefinition/Condition" alias Condition as target

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



group Condition extends DomainResource
  input src : ConditionR3 as source
  input tgt : Condition as target

  "Condition.identifier" : for src.identifier as vs make tgt.identifier as vt
  "Condition.clinicalStatus" : for src.clinicalStatus as vs make tgt.clinicalStatus as vt
  "Condition.verificationStatus" : for src.verificationStatus as vs make tgt.verificationStatus as vt
  "Condition.category" : for src.category as vs make tgt.category as vt
  "Condition.severity" : for src.severity as vs make tgt.severity as vt
  "Condition.code" : for src.code as vs make tgt.code as vt
  "Condition.bodySite" : for src.bodySite as vs make tgt.bodySite as vt
  "Condition.subject" : for src.subject as vs make tgt.subject as vt
  "Condition.context" : for src.context as vs make tgt.context as vt
  "Condition.onset-dateTime" : for src.onset  : dateTime as vs make tgt.onset = create("dateTime") as vt then dateTime(vs,vt)
  "Condition.onset-Age" : for src.onset  : Age as vs make tgt.onset = create("Age") as vt then Age(vs,vt)
  "Condition.onset-Period" : for src.onset  : Period as vs make tgt.onset = create("Period") as vt then Period(vs,vt)
  "Condition.onset-Range" : for src.onset  : Range as vs make tgt.onset = create("Range") as vt then Range(vs,vt)
  "Condition.onset-string" : for src.onset  : string as vs make tgt.onset = create("string") as vt then string(vs,vt)
  "Condition.abatement-dateTime" : for src.abatement  : dateTime as vs make tgt.abatement = create("dateTime") as vt then dateTime(vs,vt)
  "Condition.abatement-Age" : for src.abatement  : Age as vs make tgt.abatement = create("Age") as vt then Age(vs,vt)
  "Condition.abatement-Period" : for src.abatement  : Period as vs make tgt.abatement = create("Period") as vt then Period(vs,vt)
  "Condition.abatement-Range" : for src.abatement  : Range as vs make tgt.abatement = create("Range") as vt then Range(vs,vt)
  "Condition.abatement-string" : for src.abatement  : string as vs make tgt.abatement = create("string") as vt then string(vs,vt)
  "Condition.recordedDate" : for src.assertedDate as vs make tgt.recordedDate as vt
  "Condition.asserter" : for src.asserter as vs make tgt.asserter as vt
  "Condition.stage" : for src.stage as vs0 make tgt.stage as vt0 then {
    "Condition.stage.summary" : for vs0.summary as vs make vt0.summary as vt
    "Condition.stage.assessment" : for vs0.assessment as vs make vt0.assessment as vt
  }
  "Condition.evidence" : for src.evidence as vs0 make tgt.evidence as vt0 then {
    "Condition.evidence.code" : for vs0.code as vs make vt0.code as vt
    "Condition.evidence.detail" : for vs0.detail as vs make vt0.detail as vt
  }
  "Condition.note" : for src.note as vs make tgt.note as vt
endgroup


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


uses "http://hl7.org/fhir/StructureDefinition/Condition" alias Condition as source
uses "http://hl7.org/fhir/3.0/StructureDefinition/Condition" alias ConditionR3 as target

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



group Condition extends DomainResource
  input src : ConditionR3 as source
  input tgt : Condition as target

  "Condition.identifier": for src.identifier make tgt.identifier
  "Condition.clinicalStatus": for src.clinicalStatus make tgt.clinicalStatus
  "Condition.verificationStatus": for src.verificationStatus make tgt.verificationStatus
  "Condition.category": for src.category make tgt.category
  "Condition.severity": for src.severity make tgt.severity
  "Condition.code": for src.code make tgt.code
  "Condition.bodySite": for src.bodySite make tgt.bodySite
  "Condition.subject": for src.subject make tgt.subject
  "Condition.context": for src.context make tgt.context
  "Condition.onset": for src.onset make tgt.onset
  "Condition.abatement": for src.abatement make tgt.abatement
  "Condition.recordedDate": for src.recordedDate make tgt.recordedDate
  "Condition.recorder": for src.recorder make tgt.recorder
  "Condition.asserter": for src.asserter make tgt.asserter
  "Condition.stage": for src.stage as s make tgt.stage as t then ConditionStage(s,t)
  "Condition.evidence": for src.evidence as s make tgt.evidence as t then ConditionEvidence(s,t)
  "Condition.note": for src.note make tgt.note
endgroup

group ConditionStage extends BackboneElement
  input src : ConditionR3 as source
  input tgt : Condition as target

  "Condition.stage.summary": for src.summary make tgt.summary
  "Condition.stage.assessment": for src.assessment make tgt.assessment
  "Condition.stage.type": for src.type make tgt.type
endgroup

group ConditionEvidence extends BackboneElement
  input src : ConditionR3 as source
  input tgt : Condition as target

  "Condition.evidence.code": for src.code make tgt.code
  "Condition.evidence.detail": for src.detail make tgt.detail
endgroup