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
. Page versions: R5 R4B R4 R3
| Patient Care  Work Group | Maturity Level: N/A | Ballot Status: Informative | Compartments: Patient, Practitioner, RelatedPerson | 
R2 : R3 Conversion maps for CarePlan.
Functional status for this map: 10 tests that all execute ok. 8 fail round-trip testing and 10 r3 resources are invalid (33 errors). (see documentation)
map "http://hl7.org/fhir/StructureMap/CarePlan2to3" = "R2 to R3 Conversions for CarePlan"
uses "http://hl7.org/fhir/DSTU2/StructureDefinition/CarePlan" alias CarePlanR2 as source
uses "http://hl7.org/fhir/StructureDefinition/CarePlan" alias CarePlan as target
imports "http://hl7.org/fhir/StructureMap/*2to3"
group for type+types  CarePlan extends DomainResource
  input src : CarePlanR2 as source
  input tgt : CarePlan as target
  "CarePlan-identifier" : for src.identifier make tgt.identifier
  "CarePlan-subject" : for src.subject make tgt.subject
  "CarePlan-status" : for src.status make tgt.status
  "CarePlan-context" : for src.context make tgt.context
  "CarePlan-period" : for src.period make tgt.period
  "CarePlan-author" : for src.author make tgt.author
  "CarePlan-modified" : for src.modified as v make tgt.extension as t, t.url = 'http://hl7.org/fhir/CarePlan-r2-modified', t.value = v
  "CarePlan-category" : for src.category make tgt.category
  "CarePlan-description" : for src.description make tgt.description
  "CarePlan-addresses" : for src.addresses make tgt.addresses
  "CarePlan-support" : for src.support make tgt.supportingInfo
  // "CarePlan-relatedPlan1" : for src.relatedPlan as vs0 where vs0.code = 'includes' make tgt.basedOn = (vs0.plan) this relationship is inverted to partOf, and that's beyond the scope of the transforms to do
  "CarePlan-relatedPlan2" : for src.relatedPlan as vs0 where vs0.code = 'replaces' make tgt.basedOn = (vs0.plan)
  "CarePlan-relatedPlan3" : for src.relatedPlan as vs0 where vs0.code = 'fulfills' make tgt.replaces = (vs0.plan)
  "CarePlan-participant" : for src where src.participant.exists() make create("CareTeam") as vt0 then plnParticipant(src, vt0, tgt)
  "CarePlan-goal" : for src.goal make tgt.goal
  "CarePlan-activity" : for src.activity as vs0 make tgt.activity as vt0 then plnActivity(vs0, vt0)
  "CarePlan-note" : for src.note make tgt.note
endgroup
group plnRelated extends BackboneElement
  input src as source
  input tgt as target
  "CarePlan.relatedPlan-code" : for src.code make tgt.code
  "CarePlan.relatedPlan-plan" : for src.plan make tgt.plan
endgroup
group plnActivity extends BackboneElement
  input src as source
  input tgt as target
  "CarePlan.activity-actionResulting" : for src.actionResulting make tgt.outcomeReference
  "CarePlan.activity-progress" : for src.progress make tgt.progress
  "CarePlan.activity-reference" : for src.reference make tgt.reference
  "CarePlan.activity-detail" : for src.detail as vs0 make tgt.detail as vt0 then plnDetail(vs0, vt0)
endgroup
group plnDetail extends BackboneElement
  input src as source
  input tgt as target
  "CarePlan.activity.detail-category" : for src.category make tgt.category
  "CarePlan.activity.detail-code" : for src.code make tgt.code
  "CarePlan.activity.detail-reasonCode" : for src.reasonCode make tgt.reasonCode
  "CarePlan.activity.detail-reasonReference" : for src.reasonReference make tgt.reasonReference
  "CarePlan.activity.detail-goal" : for src.goal make tgt.goal
  "CarePlan.activity.detail-status" : for src.status make tgt.status
  "CarePlan.activity.detail-statusReason" : for src.statusReason make tgt.statusReason
  "CarePlan.activity.detail-prohibited" : for src.prohibited make tgt.prohibited
  "CarePlan.activity.detail-scheduled" : for src.scheduled make tgt.scheduled
  "CarePlan.activity.detail-location" : for src.location make tgt.location
  "CarePlan.activity.detail-performer" : for src.performer make tgt.performer
  "CarePlan.activity.detail-product" : for src.product make tgt.product
  "CarePlan.activity.detail-dailyAmount" : for src.dailyAmount make tgt.dailyAmount
  "CarePlan.activity.detail-quantity" : for src.quantity make tgt.quantity
  "CarePlan.activity.detail-description" : for src.description make tgt.description 
endgroup
group plnParticipant
  input src as source
  input tgt as target
  input tgtE as target
  "CarePlan.participant-link" : for src make tgtE.careTeam = reference(tgt)
  "CarePlan.participant-member" : for src.participant as vs make tgt.participant as vt then plnParticipantMember(vs, vt)
endgroup
group plnParticipantMember extends BackboneElement
  input src as source
  input tgt as target
  "CarePlan.participant-role" : for src.role make tgt.role
  "CarePlan.participant-member" : for src.member make tgt.member
endgroup
map "http://hl7.org/fhir/StructureMap/CarePlan3to2" = "R3 to R2 Conversion for CarePlan" uses "http://hl7.org/fhir/StructureDefinition/CarePlan" alias CarePlan as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/CarePlan" alias CarePlanR2 as target imports "http://hl7.org/fhir/StructureMap/*3to2" group for type+types CarePlan extends DomainResource input src : CarePlan as source input tgt : CarePlanR2 as target "CarePlan-identifier" : for src.identifier make tgt.identifier "CarePlan-subject" : for src.subject make tgt.subject "CarePlan-status" : for src.status make tgt.status "CarePlan-context" : for src.context make tgt.context "CarePlan-period" : for src.period make tgt.period "CarePlan-author" : for src.author make tgt.author "CarePlan-modified" : for src.extension as e where e.url = 'http://hl7.org/fhir/CarePlan-r2-modified' make tgt.modified = (e.value) "CarePlan-category" : for src.category make tgt.category "CarePlan-description" : for src.description make tgt.description "CarePlan-addresses" : for src.addresses make tgt.addresses "CarePlan-support" : for src.supportingInfo make tgt.support "CarePlan-relatedPlan2" : for src.basedOn as vs0 make tgt.relatedPlan as rp, rp.code = 'fulfills', rp.plan = v "CarePlan-relatedPlan3" : for src.replaces as vs0 make tgt.relatedPlan as rp, rp.code = 'replaces', rp.plan = v "CarePlan-participant" : for src.careTeam as vs where reference.resolve().exists() make (src.careTeam.reference.resolve()) as ct then plnParticipant(ct, tgt) "CarePlan-goal" : for src.goal make tgt.goal "CarePlan-activity" : for src.activity as vs0 make tgt.activity as vt0 then plnActivity(vs0, vt0) "CarePlan-note" : for src.note make tgt.note endgroup group plnActivity extends BackboneElement input src as source input tgt as target "CarePlan.activity-actionResulting" : for src.outcomeReference make tgt.actionResulting "CarePlan.activity-progress" : for src.progress make tgt.progress "CarePlan.activity-reference" : for src.reference make tgt.reference "CarePlan.activity-detail" : for src.detail as vs0 make tgt.detail as vt0 then plnDetail(vs0, vt0) endgroup group plnDetail extends BackboneElement input src as source input tgt as target "CarePlan.activity.detail-category" : for src.category make tgt.category "CarePlan.activity.detail-code" : for src.code make tgt.code "CarePlan.activity.detail-reasonCode" : for src.reasonCode make tgt.reasonCode "CarePlan.activity.detail-reasonReference" : for src.reasonReference make tgt.reasonReference "CarePlan.activity.detail-goal" : for src.goal make tgt.goal "CarePlan.activity.detail-status" : for src.status make tgt.status "CarePlan.activity.detail-statusReason" : for src.statusReason make tgt.statusReason "CarePlan.activity.detail-prohibited" : for src.prohibited make tgt.prohibited "CarePlan.activity.detail-scheduled" : for src.scheduled make tgt.scheduled "CarePlan.activity.detail-location" : for src.location make tgt.location "CarePlan.activity.detail-performer" : for src.performer make tgt.performer "CarePlan.activity.detail-product" : for src.product make tgt.product "CarePlan.activity.detail-dailyAmount" : for src.dailyAmount make tgt.dailyAmount "CarePlan.activity.detail-quantity" : for src.quantity make tgt.quantity "CarePlan.activity.detail-description" : for src.description make tgt.description endgroup group plnParticipant input src as source input tgt as target "CarePlan.participant-unlink" : for src.participant as vs make tgt.participant as vt then plnParticipantMember(vs, vt) endgroup group plnParticipantMember extends BackboneElement input src as source input tgt as target "CarePlan.participant-role" : for src.role make tgt.role "CarePlan.participant-member" : for src.member make tgt.member endgroup
| example | 
 | 
| gpvisit | 
 | 
| f001 | 
 | 
| f002 | 
 | 
| f003 | 
 | 
| f201 | 
 | 
| f202 | 
 | 
| f203 | 
 | 
| integrate | 
 | 
| preg | 
 |