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 R2

9.5 Resource CarePlan - Content

Patient Care Work Group Maturity Level : 2   Trial Use Compartments : Patient , Practitioner , RelatedPerson

Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions.

CarePlan is one of the request resources in the FHIR workflow specification.

Care Plans are used in many areas of healthcare with a variety of scopes. They can be as simple as a general practitioner keeping track of when their patient is next due for a tetanus immunization through to a detailed plan for an oncology patient covering diet, chemotherapy, radiation, lab work and counseling with detailed timing relationships, pre-conditions and goals. They may be used in veterinary care or clinical research to describe the care of a herd or other collection of animals. In public health, they may describe education or immunization campaigns.

This resource takes an intermediate approach to complexity. It captures basic details about who is involved and what actions are intended without dealing in discrete data about dependencies and timing relationships. These can be supported where necessary using the extension mechanism.

The scope of care plans may vary widely. Examples include:

  • Multi-disciplinary cross-organizational care plans; e.g. An oncology plan including the oncologist, home nursing staff, pharmacy and others
  • Plans to manage specific disease/condition(s) (e.g. nutritional plan for a patient post bowel resection, neurological plan post head injury, pre-natal plan, post-partum plan, grief management plan, etc.)
  • Decision support-generated support generated plans following specific practice guidelines (e.g. stroke care plan, diabetes plan, falls prevention, etc.)
  • Self-maintained patient or care-giver authored plans identifying their goals and an integrated understanding of actions to be taken

This resource can be used to represent both proposed plans (for example, recommendations from a decision support engine or returned as part of a consult report) as well as active plans. The nature of the plan is communicated by the status. Some systems may need to filter CarePlans to ensure that only appropriate plans are exposed via a given user interface.

For simplicity simplicity's sake, CarePlan allows the in-line inline definition of activities as part of a plan using the activity.detail element. However, activities can also be defined using references to the various "request" "request" resources. These references could be to resources with a status of "planned" "planned" or to an active order. It is possible for planned activities to exist (e.g. appointments) without needing a CarePlan at all. CarePlans are used when there's a need to group activities, goals and/or participants together to provide some degree of context.

CarePlans can be tied to specific Conditions , however they can also be condition-independent and instead focused on a particular type of care (e.g. psychological, nutritional) or the care delivered by a particular practitioner or group of practitioners.

An ImmunizationRecommendation can be interpreted as a narrow type of Care Plan CarePlan dealing only with immunization events. Where such information could appear in either resource, the immunization-specific resource is preferred.

CarePlans represent a specific plan instance for a particular patient or group. It is not intended to be used to define generic plans or protocols that are independent of a specific individual or group. CarePlan represents a specific intent, not a general definition. Protocols and order sets are supported through PlanDefinition .

This resource is referenced by DiagnosticReport , GuidanceResponse , ImagingStudy , Media , MedicationRequest , MedicationStatement , Observation , Procedure , QuestionnaireResponse and ReferralRequest ServiceRequest

Structure

Name Flags Card. Type Description & Constraints doco
. . CarePlan TU DomainResource Healthcare plan for patient or group
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier Σ 0..* Identifier External Ids for this plan
. . definition . instantiates Σ 0..* Reference ( PlanDefinition | Questionnaire uri ) Protocol or definition
. . . basedOn Σ 0..* Reference ( CarePlan ) Fulfills care plan CarePlan
. . . replaces Σ 0..* Reference ( CarePlan ) CarePlan replaced by this CarePlan
. . . partOf Σ 0..* Reference ( CarePlan ) Part of referenced CarePlan
. . . status ?! Σ 1..1 code draft | active | suspended | completed | entered-in-error | cancelled | unknown
CarePlanStatus ( Required )
. . . intent ?! Σ 1..1 code proposal | plan | order | option
CarePlanIntent ( Required )
. . . category Σ 0..* CodeableConcept Type of plan
Care Plan Category ( Example )
. . . title Σ 0..1 string Human-friendly name for the CarePlan care plan
. . . description Σ 0..1 string Summary of nature of plan
. . . subject Σ 1..1 Reference ( Patient | Group ) Who the care plan is for
. . . context Σ 0..1 Reference ( Encounter | EpisodeOfCare ) Created in context of
. . . period Σ 0..1 Period Time period plan covers
. . . author Σ 0..* Reference ( Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam ) Who is responsible for contents of the plan
. . . careTeam 0..* Reference ( CareTeam ) Who's involved in plan?
. . . addresses Σ 0..* Reference ( Condition ) Health issues this plan addresses
. . . supportingInfo 0..* Reference ( Any ) Information considered as part of plan
. . . goal 0..* Reference ( Goal ) Desired outcome of plan
. . . activity I 0..* BackboneElement Action to occur as part of plan
+ Provide a reference or detail, not both
. . . . outcomeCodeableConcept 0..* CodeableConcept Results of the activity
Care Plan Activity Outcome ( Example )
. . . . outcomeReference 0..* Reference ( Any ) Appointment, Encounter, Procedure, etc.
. . . . progress 0..* Annotation Comments about the activity status/progress
. . . . reference I 0..1 Reference ( Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ProcedureRequest | ReferralRequest ServiceRequest | VisionPrescription | RequestGroup ) Activity details defined in specific resource
. . . . detail I 0..1 BackboneElement In-line definition of activity
. . . . category . kind 0..1 CodeableConcept code diet | drug | encounter | observation | procedure | supply | other Kind of resource
CarePlanActivityCategory Care Plan Activity Kind ( Example Required )
. . . . definition . instantiates 0..1 Reference ( PlanDefinition | ActivityDefinition | Questionnaire uri ) Protocol or definition
. . . . . code 0..1 CodeableConcept Detail type of activity
Care Plan Activity Procedure Codes (SNOMED CT) ( Example )
. . . . . reasonCode 0..* CodeableConcept Why activity should be done or why activity was prohibited
Activity Reason SNOMED CT Clinical Findings ( Example )
. . . . . reasonReference 0..* Reference ( Condition | Observation | DiagnosticReport | DocumentReference ) Condition triggering need for Why activity is needed
. . . . . goal 0..* Reference ( Goal ) Goals this activity relates to
. . . . . status ?! 1..1 code not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown
CarePlanActivityStatus ( Required )
. . . . . statusReason 0..1 string Reason for current status
. . . . . prohibited doNotPerform ?! 0..1 boolean Do NOT do If true, activity is prohibiting action
. . . . . scheduled[x] 0..1 When activity is to occur
. . . . . . scheduledTiming Timing
. . . . . . scheduledPeriod Period
. . . . . . scheduledString string
. . . . . location 0..1 Reference ( Location ) Where it should happen
. . . . . performer 0..* Reference ( Practitioner | PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device ) Who will be responsible?
. . . . . product[x] 0..1 What is to be administered/supplied
SNOMED CT Medication Codes ( Example )
. . . . . . productCodeableConcept CodeableConcept
. . . . . . productReference Reference ( Medication | Substance )
. . . . . dailyAmount 0..1 SimpleQuantity How to consume/day?
. . . . . quantity 0..1 SimpleQuantity How much to administer/supply/consume
. . . . . description 0..1 string Extra info describing activity to perform
. . . note 0..* Annotation Comments about the plan

doco Documentation for this format

UML Diagram ( Legend )

CarePlan ( DomainResource ) This records Business identifiers associated with assigned to this care plan that are defined by business processes and/or used to refer to it when a direct URL reference to the performer or other systems which remain constant as the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) updated and propagates from server to server identifier : Identifier [0..*] Identifies the protocol, questionnaire, guideline or other specification the care plan should be conducted in accordance with definition instantiates : Reference uri [0..*] PlanDefinition | Questionnaire A care plan that is fulfilled in whole or in part by this care plan basedOn : Reference [0..*] « CarePlan » Completed or terminated care plan whose function is taken by this new care plan replaces : Reference [0..*] « CarePlan » A larger care plan of which this particular care plan is a component or step partOf : Reference [0..*] « CarePlan » Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record (this element modifies the meaning of other elements) status : code [1..1] « Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record. (Strength=Required) CarePlanStatus ! » Indicates the level of authority/intentionality associated with the care plan and where the care plan fits into the workflow chain (this element modifies the meaning of other elements) intent : code [1..1] « Codes indicating the degree of authority/intentionality associated with a care plan (Strength=Required) CarePlanIntent ! » Identifies what "kind" "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", "wellness plan", "Home health", "psychiatric", "asthma", "disease management", "wellness plan", etc category : CodeableConcept [0..*] « Identifies what "kind" "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", "Home health", "psychiatric", "asthma", "disease management", etc. (Strength=Example) Care Plan Category ?? » Human-friendly name for the CarePlan care plan title : string [0..1] A description of the scope and nature of the plan description : string [0..1] Identifies the patient or group whose intended care is described by the plan subject : Reference [1..1] « Patient | Group » Identifies the original context in which this particular CarePlan care plan was created context : Reference [0..1] « Encounter | EpisodeOfCare » Indicates when the plan did (or is intended to) come into effect and end period : Period [0..1] Identifies the individual(s) or ogranization organization who is responsible for the content of the care plan author : Reference [0..*] « Patient | Practitioner | RelatedPerson PractitionerRole | Device | RelatedPerson | Organization | CareTeam » Identifies all people and organizations who are expected to be involved in the care envisioned by this plan careTeam : Reference [0..*] « CareTeam » Identifies the conditions/problems/concerns/diagnoses/etc. whose management and/or mitigation are handled by this plan addresses : Reference [0..*] « Condition » Identifies portions of the patient's record that specifically influenced the formation of the plan. These might include co-morbidities, comorbidities, recent procedures, limitations, recent assessments, etc supportingInfo : Reference [0..*] « Any » Describes the intended objective(s) of carrying out the care plan goal : Reference [0..*] « Goal » General notes about the care plan not covered elsewhere note : Annotation [0..*] Activity Identifies the outcome at the point when the status of the activity is assessed. For example, the outcome of an education activity could be patient understands (or not) outcomeCodeableConcept : CodeableConcept [0..*] « Identifies the results of the activity (Strength=Example) Care Plan Activity Outcome ?? » Details of the outcome or action resulting from the activity. The reference to an "event" "event" resource, such as Procedure or Encounter or Observation, is the result/outcome of the activity itself. The activity can be conveyed using CarePlan.activity.detail OR using the CarePlan.activity.reference (a reference to a request “request” resource) outcomeReference : Reference [0..*] « Any » Notes about the adherence/status/progress of the activity progress : Annotation [0..*] The details of the proposed activity represented in a specific resource reference : Reference [0..1] « Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ProcedureRequest | ReferralRequest ServiceRequest | VisionPrescription | RequestGroup » Detail High-level categorization A description of the type kind of resource the in-line definition of activity in a care plan activity is representing. The CarePlan.activity.detail is an in-line definition when a resource is not referenced using CarePlan.activity.reference. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest category kind : CodeableConcept code [0..1] « High-level categorization Resource types defined as part of the type FHIR that can be represented as in-line definitions of activity in a care plan. (Strength=Example) plan activity. (Strength=Required) CarePlanActivityCategory ?? Care Plan Activity Kind ! » Identifies the protocol, questionnaire, guideline or other specification the planned activity should be conducted in accordance with definition instantiates : Reference uri [0..1] PlanDefinition | ActivityDefinition | Questionnaire Detailed description of the type of planned activity; e.g. What what lab test, what procedure, what kind of encounter code : CodeableConcept [0..1] « Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter. (Strength=Example) Care Plan Activity Procedure Codes (SNOMED CT) ?? » Provides the rationale that drove the inclusion of this particular activity as part of the plan or the reason why the activity was prohibited reasonCode : CodeableConcept [0..*] « Identifies why a care plan activity is needed. Can include any health condition codes as well as such concepts as "general wellness", "general wellness", prophylaxis, surgical preparation, etc. (Strength=Example) Activity Reason SNOMED CT Clinical Findings ?? » Provides Indicates another resource, such as the health condition(s) that condition(s), whose existence justifies this request and drove the inclusion of this particular activity as part of the plan reasonReference : Reference [0..*] « Condition | Observation | DiagnosticReport | DocumentReference » Internal reference that identifies the goals that this activity is intended to contribute towards meeting goal : Reference [0..*] « Goal » Identifies what progress is being made for the specific activity (this element modifies the meaning of other elements) status : code [1..1] « Indicates where the activity is at in its overall life cycle. (Strength=Required) CarePlanActivityStatus ! » Provides reason why the activity isn't yet started, is on hold, was cancelled, etc statusReason : string [0..1] If true, indicates that the described activity is one that must NOT be engaged in when following the plan. If false, or missing, indicates that the described activity is one that should be engaged in when following the plan (this element modifies the meaning of other elements) prohibited doNotPerform : boolean [0..1] The period, timing or frequency upon which the described activity is to occur scheduled[x] : Type [0..1] « Timing | Period | string » Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc location : Reference [0..1] « Location » Identifies who's expected to be involved in the activity performer : Reference [0..*] « Practitioner | Organization PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device » Identifies the food, drug or other product to be consumed or supplied in the activity product[x] : Type [0..1] « CodeableConcept | Reference ( Medication | Substance ); A product supplied or administered as part of a care plan activity. (Strength=Example) SNOMED CT Medication ?? » Identifies the quantity expected to be consumed in a given day dailyAmount : Quantity ( SimpleQuantity ) [0..1] Identifies the quantity expected to be supplied, administered or consumed by the subject quantity : Quantity ( SimpleQuantity ) [0..1] This provides a textual description of constraints on the intended activity occurrence, including relation to other activities. It may also include objectives, pre-conditions and end-conditions. Finally, it may convey specifics about the activity such as body site, method, route, etc description : string [0..1] A simple summary of a planned activity suitable for a general care plan system (e.g. form driven) that doesn't know about specific resources such as procedure etc detail [0..1] Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc activity [0..*]

XML Template

<

<CarePlan xmlns="http://hl7.org/fhir"> doco

 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <</identifier>
 <</definition>
 <</basedOn>

 <identifier><!-- 0..* Identifier External Ids for this plan --></identifier>
 <instantiates value="[uri]"/><!-- 0..* Protocol or definition -->
 <basedOn><!-- 0..* Reference(CarePlan) Fulfills CarePlan --></basedOn>

 <replaces><!-- 0..* Reference(CarePlan) CarePlan replaced by this CarePlan --></replaces>
 <partOf><!-- 0..* Reference(CarePlan) Part of referenced CarePlan --></partOf>
 <
 <

 <status value="[code]"/><!-- 1..1 draft | active | suspended | completed | entered-in-error | cancelled | unknown -->
 <intent value="[code]"/><!-- 1..1 proposal | plan | order | option -->

 <category><!-- 0..* CodeableConcept Type of plan --></category>
 <
 <
 <</subject>
 <</context>

 <title value="[string]"/><!-- 0..1 Human-friendly name for the care plan -->
 <description value="[string]"/><!-- 0..1 Summary of nature of plan -->
 <subject><!-- 1..1 Reference(Patient|Group) Who the care plan is for --></subject>
 <context><!-- 0..1 Reference(Encounter|EpisodeOfCare) Created in context of --></context>

 <period><!-- 0..1 Period Time period plan covers --></period>
 <|
   </author>

 <author><!-- 0..* Reference(Patient|Practitioner|PractitionerRole|Device|
   RelatedPerson|Organization|CareTeam) Who is responsible for contents of the plan --></author>
 <careTeam><!-- 0..* Reference(CareTeam) Who's involved in plan? --></careTeam>
 <addresses><!-- 0..* Reference(Condition) Health issues this plan addresses --></addresses>
 <</supportingInfo>

 <supportingInfo><!-- 0..* Reference(Any) Information considered as part of plan --></supportingInfo>

 <goal><!-- 0..* Reference(Goal) Desired outcome of plan --></goal>
 <activity>  <!-- 0..* Action to occur as part of plan -->
  <outcomeCodeableConcept><!-- 0..* CodeableConcept Results of the activity --></outcomeCodeableConcept>
  <outcomeReference><!-- 0..* Reference(Any) Appointment, Encounter, Procedure, etc. --></outcomeReference>
  <progress><!-- 0..* Annotation Comments about the activity status/progress --></progress>
  <reference><!-- ?? 0..1 Reference(Appointment|CommunicationRequest|DeviceRequest|
    |
    </reference>

    MedicationRequest|NutritionOrder|Task|ServiceRequest|VisionPrescription|
    RequestGroup) Activity details defined in specific resource --></reference>
  <detail>  <!-- ?? 0..1 In-line definition of activity -->
   <</category>
   <|
     </definition>
   <</code>
   <</reasonCode>
   <</reasonReference>

   <kind value="[code]"/><!-- 0..1 Kind of resource -->
   <instantiates value="[uri]"/><!-- 0..1 Protocol or definition -->
   <code><!-- 0..1 CodeableConcept Detail type of activity --></code>
   <reasonCode><!-- 0..* CodeableConcept Why activity should be done or why activity was prohibited --></reasonCode>
   <reasonReference><!-- 0..* Reference(Condition|Observation|DiagnosticReport|
     DocumentReference) Why activity is needed --></reasonReference>
   <goal><!-- 0..* Reference(Goal) Goals this activity relates to --></goal>
   <
   <
   <

   <status value="[code]"/><!-- 1..1 not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown -->
   <statusReason value="[string]"/><!-- 0..1 Reason for current status -->
   <doNotPerform value="[boolean]"/><!-- 0..1 If true, activity is prohibiting action -->

   <scheduled[x]><!-- 0..1 Timing|Period|string When activity is to occur --></scheduled[x]>
   <location><!-- 0..1 Reference(Location) Where it should happen --></location>
   <|
     </performer>

   <performer><!-- 0..* Reference(Practitioner|PractitionerRole|Organization|
     RelatedPerson|Patient|CareTeam|HealthcareService|Device) Who will be responsible? --></performer>
   <product[x]><!-- 0..1 CodeableConcept|Reference(Medication|Substance) What is to be administered/supplied --></product[x]>
   <dailyAmount><!-- 0..1 Quantity(SimpleQuantity) How to consume/day? --></dailyAmount>
   <quantity><!-- 0..1 Quantity(SimpleQuantity) How much to administer/supply/consume --></quantity>
   <

   <description value="[string]"/><!-- 0..1 Extra info describing activity to perform -->

  </detail>
 </activity>
 <note><!-- 0..* Annotation Comments about the plan --></note>
</CarePlan>

JSON Template

{doco
  "resourceType" : "",

  "resourceType" : "CarePlan",

  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "|
   
  "
  "
  "
  "
  "
    "
    "
    "
    "|
    |
    
    "
      "
      "|
     
      "
      "
      "
      "
      "
      "
      "

  "identifier" : [{ Identifier }], // External Ids for this plan
  "instantiates" : ["<uri>"], // Protocol or definition
  "basedOn" : [{ Reference(CarePlan) }], // Fulfills CarePlan
  "replaces" : [{ Reference(CarePlan) }], // CarePlan replaced by this CarePlan
  "partOf" : [{ Reference(CarePlan) }], // Part of referenced CarePlan
  "status" : "<code>", // R!  draft | active | suspended | completed | entered-in-error | cancelled | unknown
  "intent" : "<code>", // R!  proposal | plan | order | option
  "category" : [{ CodeableConcept }], // Type of plan
  "title" : "<string>", // Human-friendly name for the care plan
  "description" : "<string>", // Summary of nature of plan
  "subject" : { Reference(Patient|Group) }, // R!  Who the care plan is for
  "context" : { Reference(Encounter|EpisodeOfCare) }, // Created in context of
  "period" : { Period }, // Time period plan covers
  "author" : [{ Reference(Patient|Practitioner|PractitionerRole|Device|
   RelatedPerson|Organization|CareTeam) }], // Who is responsible for contents of the plan

  "careTeam" : [{ Reference(CareTeam) }], // Who's involved in plan?
  "addresses" : [{ Reference(Condition) }], // Health issues this plan addresses
  "supportingInfo" : [{ Reference(Any) }], // Information considered as part of plan
  "goal" : [{ Reference(Goal) }], // Desired outcome of plan
  "activity" : [{ // Action to occur as part of plan
    "outcomeCodeableConcept" : [{ CodeableConcept }], // Results of the activity
    "outcomeReference" : [{ Reference(Any) }], // Appointment, Encounter, Procedure, etc.
    "progress" : [{ Annotation }], // Comments about the activity status/progress
    "reference" : { Reference(Appointment|CommunicationRequest|DeviceRequest|
    MedicationRequest|NutritionOrder|Task|ServiceRequest|VisionPrescription|
    RequestGroup) }, // C? Activity details defined in specific resource

    "detail" : { // C? In-line definition of activity
      "kind" : "<code>", // Kind of resource
      "instantiates" : "<uri>", // Protocol or definition
      "code" : { CodeableConcept }, // Detail type of activity
      "reasonCode" : [{ CodeableConcept }], // Why activity should be done or why activity was prohibited
      "reasonReference" : [{ Reference(Condition|Observation|DiagnosticReport|
     DocumentReference) }], // Why activity is needed

      "goal" : [{ Reference(Goal) }], // Goals this activity relates to
      "status" : "<code>", // R!  not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown
      "statusReason" : "<string>", // Reason for current status
      "doNotPerform" : <boolean>, // If true, activity is prohibiting action

      // scheduled[x]: When activity is to occur. One of these 3:
      " },
      " },
      ">",
      "
      "|
     

      "scheduledTiming" : { Timing },
      "scheduledPeriod" : { Period },
      "scheduledString" : "<string>",
      "location" : { Reference(Location) }, // Where it should happen
      "performer" : [{ Reference(Practitioner|PractitionerRole|Organization|
     RelatedPerson|Patient|CareTeam|HealthcareService|Device) }], // Who will be responsible?
      // product[x]: What is to be administered/supplied. One of these 2:
      " },
      " },
      "
      "
      "

      "productCodeableConcept" : { CodeableConcept },
      "productReference" : { Reference(Medication|Substance) },
      "dailyAmount" : { Quantity(SimpleQuantity) }, // How to consume/day?
      "quantity" : { Quantity(SimpleQuantity) }, // How much to administer/supply/consume
      "description" : "<string>" // Extra info describing activity to perform

    }
  }],
  "

  "note" : [{ Annotation }] // Comments about the plan

}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:CarePlan;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:
  fhir:
  fhir:

  fhir:CarePlan.identifier [ Identifier ], ... ; # 0..* External Ids for this plan
  fhir:CarePlan.instantiates [ uri ], ... ; # 0..* Protocol or definition
  fhir:CarePlan.basedOn [ Reference(CarePlan) ], ... ; # 0..* Fulfills CarePlan

  fhir:CarePlan.replaces [ Reference(CarePlan) ], ... ; # 0..* CarePlan replaced by this CarePlan
  fhir:CarePlan.partOf [ Reference(CarePlan) ], ... ; # 0..* Part of referenced CarePlan
  fhir:CarePlan.status [ code ]; # 1..1 draft | active | suspended | completed | entered-in-error | cancelled | unknown
  fhir:CarePlan.intent [ code ]; # 1..1 proposal | plan | order | option
  fhir:CarePlan.category [ CodeableConcept ], ... ; # 0..* Type of plan
  fhir:

  fhir:CarePlan.title [ string ]; # 0..1 Human-friendly name for the care plan

  fhir:CarePlan.description [ string ]; # 0..1 Summary of nature of plan
  fhir:
  fhir:

  fhir:CarePlan.subject [ Reference(Patient|Group) ]; # 1..1 Who the care plan is for
  fhir:CarePlan.context [ Reference(Encounter|EpisodeOfCare) ]; # 0..1 Created in context of

  fhir:CarePlan.period [ Period ]; # 0..1 Time period plan covers
  fhir:

  fhir:CarePlan.author [ Reference(Patient|Practitioner|PractitionerRole|Device|RelatedPerson|Organization|CareTeam) ], ... ; # 0..* Who is responsible for contents of the plan

  fhir:CarePlan.careTeam [ Reference(CareTeam) ], ... ; # 0..* Who's involved in plan?
  fhir:CarePlan.addresses [ Reference(Condition) ], ... ; # 0..* Health issues this plan addresses
  fhir:

  fhir:CarePlan.supportingInfo [ Reference(Any) ], ... ; # 0..* Information considered as part of plan

  fhir:CarePlan.goal [ Reference(Goal) ], ... ; # 0..* Desired outcome of plan
  fhir:CarePlan.activity [ # 0..* Action to occur as part of plan
    fhir:CarePlan.activity.outcomeCodeableConcept [ CodeableConcept ], ... ; # 0..* Results of the activity
    fhir:CarePlan.activity.outcomeReference [ Reference(Any) ], ... ; # 0..* Appointment, Encounter, Procedure, etc.
    fhir:CarePlan.activity.progress [ Annotation ], ... ; # 0..* Comments about the activity status/progress
    fhir:CarePlan.activity.reference [ Reference(Appointment|CommunicationRequest|DeviceRequest|MedicationRequest|NutritionOrder|
  

  Task|ServiceRequest|VisionPrescription|RequestGroup) ]; # 0..1 Activity details defined in specific resource
    fhir:CarePlan.activity.detail [ # 0..1 In-line definition of activity
      fhir:
      fhir:
      fhir:

      fhir:CarePlan.activity.detail.kind [ code ]; # 0..1 Kind of resource
      fhir:CarePlan.activity.detail.instantiates [ uri ]; # 0..1 Protocol or definition
      fhir:CarePlan.activity.detail.code [ CodeableConcept ]; # 0..1 Detail type of activity

      fhir:CarePlan.activity.detail.reasonCode [ CodeableConcept ], ... ; # 0..* Why activity should be done or why activity was prohibited
      fhir:

      fhir:CarePlan.activity.detail.reasonReference [ Reference(Condition|Observation|DiagnosticReport|DocumentReference) ], ... ; # 0..* Why activity is needed

      fhir:CarePlan.activity.detail.goal [ Reference(Goal) ], ... ; # 0..* Goals this activity relates to
      fhir:

      fhir:CarePlan.activity.detail.status [ code ]; # 1..1 not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown

      fhir:CarePlan.activity.detail.statusReason [ string ]; # 0..1 Reason for current status
      fhir:

      fhir:CarePlan.activity.detail.doNotPerform [ boolean ]; # 0..1 If true, activity is prohibiting action

      # CarePlan.activity.detail.scheduled[x] : 0..1 When activity is to occur. One of these 3
        fhir:CarePlan.activity.detail.scheduledTiming [ Timing ]
        fhir:CarePlan.activity.detail.scheduledPeriod [ Period ]
        fhir:CarePlan.activity.detail.scheduledString [ string ]
      fhir:CarePlan.activity.detail.location [ Reference(Location) ]; # 0..1 Where it should happen
      fhir:

      fhir:CarePlan.activity.detail.performer [ Reference(Practitioner|PractitionerRole|Organization|RelatedPerson|Patient|CareTeam|
  HealthcareService|Device) ], ... ; # 0..* Who will be responsible?
      # CarePlan.activity.detail.product[x] : 0..1 What is to be administered/supplied. One of these 2
        fhir:CarePlan.activity.detail.productCodeableConcept [ CodeableConcept ]
        fhir:CarePlan.activity.detail.productReference [ Reference(Medication|Substance) ]
      fhir:CarePlan.activity.detail.dailyAmount [ Quantity(SimpleQuantity) ]; # 0..1 How to consume/day?
      fhir:CarePlan.activity.detail.quantity [ Quantity(SimpleQuantity) ]; # 0..1 How much to administer/supply/consume
      fhir:CarePlan.activity.detail.description [ string ]; # 0..1 Extra info describing activity to perform
    ];
  ], ...;
  fhir:CarePlan.note [ Annotation ], ... ; # 0..* Comments about the plan
]

Changes since DSTU2 R3

CarePlan.definition CarePlan.supportingInfo Renamed from support to supportingInfo
CarePlan Added Element CarePlan.basedOn Added Element CarePlan.replaces Added Element CarePlan.partOf Added Element CarePlan.intent Added Element
CarePlan.title CarePlan.instantiates
  • Added Element
CarePlan.subject CarePlan.author
  • Min Cardinality Type changed from 0 Reference(Patient|Practitioner|RelatedPerson|Organization|CareTeam) to 1 Reference(Patient|Practitioner|PractitionerRole|Device|RelatedPerson|Organization|CareTeam)
CarePlan.author CarePlan.activity.reference
  • Add Reference(CareTeam) Type changed from Reference(Appointment|CommunicationRequest|DeviceRequest|MedicationRequest|NutritionOrder|Task|ProcedureRequest|ReferralRequest|VisionPrescription|RequestGroup) to Reference(Appointment|CommunicationRequest|DeviceRequest|MedicationRequest|NutritionOrder|Task|ServiceRequest|VisionPrescription|RequestGroup)
CarePlan.careTeam CarePlan.activity.detail.kind
  • Added Element
CarePlan.activity.outcomeCodeableConcept CarePlan.activity.detail.instantiates
  • Added Element
CarePlan.activity.outcomeReference CarePlan.activity.detail.reasonReference
  • Renamed Type changed from actionResulting Reference(Condition) to outcomeReference CarePlan.activity.reference Remove Reference(DiagnosticOrder), Remove Reference(MedicationOrder), Remove Reference(Order), Remove Reference(ProcessRequest), Remove Reference(SupplyRequest), Add Reference(MedicationRequest), Add Reference(Task), Add Reference(RequestGroup) Reference(Condition|Observation|DiagnosticReport|DocumentReference)
CarePlan.activity.detail.definition CarePlan.activity.detail.doNotPerform
  • Added Element
CarePlan.activity.detail.status Min Cardinality changed from 0 to 1 CarePlan.activity.detail.statusReason CarePlan.activity.detail.performer
  • Type changed from CodeableConcept to string CarePlan.activity.detail.prohibited Min Cardinality changed from 1 Reference(Practitioner|Organization|RelatedPerson|Patient|CareTeam) to 0 Default Value "false" added Reference(Practitioner|PractitionerRole|Organization|RelatedPerson|Patient|CareTeam|HealthcareService|Device)
CarePlan.activity.detail.performer CarePlan.activity.detail.product[x]
  • Remove Reference(Medication|Substance), Add Reference(CareTeam) Reference(Medication|Substance)
CarePlan.note CarePlan.definition
  • Max Cardinality changed from 1 to * deleted
CarePlan.modified CarePlan.activity.detail.category
  • deleted
CarePlan.relatedPlan CarePlan.activity.detail.definition
  • deleted
CarePlan.participant CarePlan.activity.detail.prohibited
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

See R2 <--> R3 Conversion Maps (status = 10 tests that all execute ok. 8 fail round-trip testing and 10 r3 resources are invalid (33 errors). ). Note: these have note yet been updated to be R3 to R4

Structure

Name Flags Card. Type Description & Constraints doco
. . CarePlan TU DomainResource Healthcare plan for patient or group
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier Σ 0..* Identifier External Ids for this plan
. . definition . instantiates Σ 0..* Reference ( PlanDefinition | Questionnaire uri ) Protocol or definition
. . . basedOn Σ 0..* Reference ( CarePlan ) Fulfills care plan CarePlan
. . . replaces Σ 0..* Reference ( CarePlan ) CarePlan replaced by this CarePlan
. . . partOf Σ 0..* Reference ( CarePlan ) Part of referenced CarePlan
. . . status ?! Σ 1..1 code draft | active | suspended | completed | entered-in-error | cancelled | unknown
CarePlanStatus ( Required )
. . . intent ?! Σ 1..1 code proposal | plan | order | option
CarePlanIntent ( Required )
. . . category Σ 0..* CodeableConcept Type of plan
Care Plan Category ( Example )
. . . title Σ 0..1 string Human-friendly name for the CarePlan care plan
. . . description Σ 0..1 string Summary of nature of plan
. . . subject Σ 1..1 Reference ( Patient | Group ) Who the care plan is for
. . . context Σ 0..1 Reference ( Encounter | EpisodeOfCare ) Created in context of
. . . period Σ 0..1 Period Time period plan covers
. . . author Σ 0..* Reference ( Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam ) Who is responsible for contents of the plan
. . . careTeam 0..* Reference ( CareTeam ) Who's involved in plan?
. . . addresses Σ 0..* Reference ( Condition ) Health issues this plan addresses
. . . supportingInfo 0..* Reference ( Any ) Information considered as part of plan
. . . goal 0..* Reference ( Goal ) Desired outcome of plan
. . . activity I 0..* BackboneElement Action to occur as part of plan
+ Provide a reference or detail, not both
. . . . outcomeCodeableConcept 0..* CodeableConcept Results of the activity
Care Plan Activity Outcome ( Example )
. . . . outcomeReference 0..* Reference ( Any ) Appointment, Encounter, Procedure, etc.
. . . . progress 0..* Annotation Comments about the activity status/progress
. . . . reference I 0..1 Reference ( Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ProcedureRequest | ReferralRequest ServiceRequest | VisionPrescription | RequestGroup ) Activity details defined in specific resource
. . . . detail I 0..1 BackboneElement In-line definition of activity
. . . . category . kind 0..1 CodeableConcept code diet | drug | encounter | observation | procedure | supply | other Kind of resource
CarePlanActivityCategory Care Plan Activity Kind ( Example Required )
. . . . definition . instantiates 0..1 Reference ( PlanDefinition | ActivityDefinition | Questionnaire uri ) Protocol or definition
. . . . . code 0..1 CodeableConcept Detail type of activity
Care Plan Activity Procedure Codes (SNOMED CT) ( Example )
. . . . . reasonCode 0..* CodeableConcept Why activity should be done or why activity was prohibited
Activity Reason SNOMED CT Clinical Findings ( Example )
. . . . . reasonReference 0..* Reference ( Condition | Observation | DiagnosticReport | DocumentReference ) Condition triggering need for Why activity is needed
. . . . . goal 0..* Reference ( Goal ) Goals this activity relates to
. . . . . status ?! 1..1 code not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown
CarePlanActivityStatus ( Required )
. . . . . statusReason 0..1 string Reason for current status
. . . . . prohibited doNotPerform ?! 0..1 boolean Do NOT do If true, activity is prohibiting action
. . . . . scheduled[x] 0..1 When activity is to occur
. . . . . . scheduledTiming Timing
. . . . . . scheduledPeriod Period
. . . . . . scheduledString string
. . . . . location 0..1 Reference ( Location ) Where it should happen
. . . . . performer 0..* Reference ( Practitioner | PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device ) Who will be responsible?
. . . . . product[x] 0..1 What is to be administered/supplied
SNOMED CT Medication Codes ( Example )
. . . . . . productCodeableConcept CodeableConcept
. . . . . . productReference Reference ( Medication | Substance )
. . . . . dailyAmount 0..1 SimpleQuantity How to consume/day?
. . . . . quantity 0..1 SimpleQuantity How much to administer/supply/consume
. . . . . description 0..1 string Extra info describing activity to perform
. . . note 0..* Annotation Comments about the plan

doco Documentation for this format

UML Diagram ( Legend )

CarePlan ( DomainResource ) This records Business identifiers associated with assigned to this care plan that are defined by business processes and/or used to refer to it when a direct URL reference to the performer or other systems which remain constant as the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) updated and propagates from server to server identifier : Identifier [0..*] Identifies the protocol, questionnaire, guideline or other specification the care plan should be conducted in accordance with definition instantiates : Reference uri [0..*] PlanDefinition | Questionnaire A care plan that is fulfilled in whole or in part by this care plan basedOn : Reference [0..*] « CarePlan » Completed or terminated care plan whose function is taken by this new care plan replaces : Reference [0..*] « CarePlan » A larger care plan of which this particular care plan is a component or step partOf : Reference [0..*] « CarePlan » Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record (this element modifies the meaning of other elements) status : code [1..1] « Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record. (Strength=Required) CarePlanStatus ! » Indicates the level of authority/intentionality associated with the care plan and where the care plan fits into the workflow chain (this element modifies the meaning of other elements) intent : code [1..1] « Codes indicating the degree of authority/intentionality associated with a care plan (Strength=Required) CarePlanIntent ! » Identifies what "kind" "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", "wellness plan", "Home health", "psychiatric", "asthma", "disease management", "wellness plan", etc category : CodeableConcept [0..*] « Identifies what "kind" "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", "Home health", "psychiatric", "asthma", "disease management", etc. (Strength=Example) Care Plan Category ?? » Human-friendly name for the CarePlan care plan title : string [0..1] A description of the scope and nature of the plan description : string [0..1] Identifies the patient or group whose intended care is described by the plan subject : Reference [1..1] « Patient | Group » Identifies the original context in which this particular CarePlan care plan was created context : Reference [0..1] « Encounter | EpisodeOfCare » Indicates when the plan did (or is intended to) come into effect and end period : Period [0..1] Identifies the individual(s) or ogranization organization who is responsible for the content of the care plan author : Reference [0..*] « Patient | Practitioner | RelatedPerson PractitionerRole | Device | RelatedPerson | Organization | CareTeam » Identifies all people and organizations who are expected to be involved in the care envisioned by this plan careTeam : Reference [0..*] « CareTeam » Identifies the conditions/problems/concerns/diagnoses/etc. whose management and/or mitigation are handled by this plan addresses : Reference [0..*] « Condition » Identifies portions of the patient's record that specifically influenced the formation of the plan. These might include co-morbidities, comorbidities, recent procedures, limitations, recent assessments, etc supportingInfo : Reference [0..*] « Any » Describes the intended objective(s) of carrying out the care plan goal : Reference [0..*] « Goal » General notes about the care plan not covered elsewhere note : Annotation [0..*] Activity Identifies the outcome at the point when the status of the activity is assessed. For example, the outcome of an education activity could be patient understands (or not) outcomeCodeableConcept : CodeableConcept [0..*] « Identifies the results of the activity (Strength=Example) Care Plan Activity Outcome ?? » Details of the outcome or action resulting from the activity. The reference to an "event" "event" resource, such as Procedure or Encounter or Observation, is the result/outcome of the activity itself. The activity can be conveyed using CarePlan.activity.detail OR using the CarePlan.activity.reference (a reference to a request “request” resource) outcomeReference : Reference [0..*] « Any » Notes about the adherence/status/progress of the activity progress : Annotation [0..*] The details of the proposed activity represented in a specific resource reference : Reference [0..1] « Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ProcedureRequest | ReferralRequest ServiceRequest | VisionPrescription | RequestGroup » Detail High-level categorization A description of the type kind of resource the in-line definition of activity in a care plan activity is representing. The CarePlan.activity.detail is an in-line definition when a resource is not referenced using CarePlan.activity.reference. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest category kind : CodeableConcept code [0..1] « High-level categorization Resource types defined as part of the type FHIR that can be represented as in-line definitions of activity in a care plan. (Strength=Example) plan activity. (Strength=Required) CarePlanActivityCategory ?? Care Plan Activity Kind ! » Identifies the protocol, questionnaire, guideline or other specification the planned activity should be conducted in accordance with definition instantiates : Reference uri [0..1] PlanDefinition | ActivityDefinition | Questionnaire Detailed description of the type of planned activity; e.g. What what lab test, what procedure, what kind of encounter code : CodeableConcept [0..1] « Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter. (Strength=Example) Care Plan Activity Procedure Codes (SNOMED CT) ?? » Provides the rationale that drove the inclusion of this particular activity as part of the plan or the reason why the activity was prohibited reasonCode : CodeableConcept [0..*] « Identifies why a care plan activity is needed. Can include any health condition codes as well as such concepts as "general wellness", "general wellness", prophylaxis, surgical preparation, etc. (Strength=Example) Activity Reason SNOMED CT Clinical Findings ?? » Provides Indicates another resource, such as the health condition(s) that condition(s), whose existence justifies this request and drove the inclusion of this particular activity as part of the plan reasonReference : Reference [0..*] « Condition | Observation | DiagnosticReport | DocumentReference » Internal reference that identifies the goals that this activity is intended to contribute towards meeting goal : Reference [0..*] « Goal » Identifies what progress is being made for the specific activity (this element modifies the meaning of other elements) status : code [1..1] « Indicates where the activity is at in its overall life cycle. (Strength=Required) CarePlanActivityStatus ! » Provides reason why the activity isn't yet started, is on hold, was cancelled, etc statusReason : string [0..1] If true, indicates that the described activity is one that must NOT be engaged in when following the plan. If false, or missing, indicates that the described activity is one that should be engaged in when following the plan (this element modifies the meaning of other elements) prohibited doNotPerform : boolean [0..1] The period, timing or frequency upon which the described activity is to occur scheduled[x] : Type [0..1] « Timing | Period | string » Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc location : Reference [0..1] « Location » Identifies who's expected to be involved in the activity performer : Reference [0..*] « Practitioner | Organization PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device » Identifies the food, drug or other product to be consumed or supplied in the activity product[x] : Type [0..1] « CodeableConcept | Reference ( Medication | Substance ); A product supplied or administered as part of a care plan activity. (Strength=Example) SNOMED CT Medication ?? » Identifies the quantity expected to be consumed in a given day dailyAmount : Quantity ( SimpleQuantity ) [0..1] Identifies the quantity expected to be supplied, administered or consumed by the subject quantity : Quantity ( SimpleQuantity ) [0..1] This provides a textual description of constraints on the intended activity occurrence, including relation to other activities. It may also include objectives, pre-conditions and end-conditions. Finally, it may convey specifics about the activity such as body site, method, route, etc description : string [0..1] A simple summary of a planned activity suitable for a general care plan system (e.g. form driven) that doesn't know about specific resources such as procedure etc detail [0..1] Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc activity [0..*]

XML Template

<

<CarePlan xmlns="http://hl7.org/fhir"> doco

 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <</identifier>
 <</definition>
 <</basedOn>

 <identifier><!-- 0..* Identifier External Ids for this plan --></identifier>
 <instantiates value="[uri]"/><!-- 0..* Protocol or definition -->
 <basedOn><!-- 0..* Reference(CarePlan) Fulfills CarePlan --></basedOn>

 <replaces><!-- 0..* Reference(CarePlan) CarePlan replaced by this CarePlan --></replaces>
 <partOf><!-- 0..* Reference(CarePlan) Part of referenced CarePlan --></partOf>
 <
 <

 <status value="[code]"/><!-- 1..1 draft | active | suspended | completed | entered-in-error | cancelled | unknown -->
 <intent value="[code]"/><!-- 1..1 proposal | plan | order | option -->

 <category><!-- 0..* CodeableConcept Type of plan --></category>
 <
 <
 <</subject>
 <</context>

 <title value="[string]"/><!-- 0..1 Human-friendly name for the care plan -->
 <description value="[string]"/><!-- 0..1 Summary of nature of plan -->
 <subject><!-- 1..1 Reference(Patient|Group) Who the care plan is for --></subject>
 <context><!-- 0..1 Reference(Encounter|EpisodeOfCare) Created in context of --></context>

 <period><!-- 0..1 Period Time period plan covers --></period>
 <|
   </author>

 <author><!-- 0..* Reference(Patient|Practitioner|PractitionerRole|Device|
   RelatedPerson|Organization|CareTeam) Who is responsible for contents of the plan --></author>
 <careTeam><!-- 0..* Reference(CareTeam) Who's involved in plan? --></careTeam>
 <addresses><!-- 0..* Reference(Condition) Health issues this plan addresses --></addresses>
 <</supportingInfo>

 <supportingInfo><!-- 0..* Reference(Any) Information considered as part of plan --></supportingInfo>

 <goal><!-- 0..* Reference(Goal) Desired outcome of plan --></goal>
 <activity>  <!-- 0..* Action to occur as part of plan -->
  <outcomeCodeableConcept><!-- 0..* CodeableConcept Results of the activity --></outcomeCodeableConcept>
  <outcomeReference><!-- 0..* Reference(Any) Appointment, Encounter, Procedure, etc. --></outcomeReference>
  <progress><!-- 0..* Annotation Comments about the activity status/progress --></progress>
  <reference><!-- ?? 0..1 Reference(Appointment|CommunicationRequest|DeviceRequest|
    |
    </reference>

    MedicationRequest|NutritionOrder|Task|ServiceRequest|VisionPrescription|
    RequestGroup) Activity details defined in specific resource --></reference>
  <detail>  <!-- ?? 0..1 In-line definition of activity -->
   <</category>
   <|
     </definition>
   <</code>
   <</reasonCode>
   <</reasonReference>

   <kind value="[code]"/><!-- 0..1 Kind of resource -->
   <instantiates value="[uri]"/><!-- 0..1 Protocol or definition -->
   <code><!-- 0..1 CodeableConcept Detail type of activity --></code>
   <reasonCode><!-- 0..* CodeableConcept Why activity should be done or why activity was prohibited --></reasonCode>
   <reasonReference><!-- 0..* Reference(Condition|Observation|DiagnosticReport|
     DocumentReference) Why activity is needed --></reasonReference>
   <goal><!-- 0..* Reference(Goal) Goals this activity relates to --></goal>
   <
   <
   <

   <status value="[code]"/><!-- 1..1 not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown -->
   <statusReason value="[string]"/><!-- 0..1 Reason for current status -->
   <doNotPerform value="[boolean]"/><!-- 0..1 If true, activity is prohibiting action -->

   <scheduled[x]><!-- 0..1 Timing|Period|string When activity is to occur --></scheduled[x]>
   <location><!-- 0..1 Reference(Location) Where it should happen --></location>
   <|
     </performer>

   <performer><!-- 0..* Reference(Practitioner|PractitionerRole|Organization|
     RelatedPerson|Patient|CareTeam|HealthcareService|Device) Who will be responsible? --></performer>
   <product[x]><!-- 0..1 CodeableConcept|Reference(Medication|Substance) What is to be administered/supplied --></product[x]>
   <dailyAmount><!-- 0..1 Quantity(SimpleQuantity) How to consume/day? --></dailyAmount>
   <quantity><!-- 0..1 Quantity(SimpleQuantity) How much to administer/supply/consume --></quantity>
   <

   <description value="[string]"/><!-- 0..1 Extra info describing activity to perform -->

  </detail>
 </activity>
 <note><!-- 0..* Annotation Comments about the plan --></note>
</CarePlan>

JSON Template

{doco
  "resourceType" : "",

  "resourceType" : "CarePlan",

  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "|
   
  "
  "
  "
  "
  "
    "
    "
    "
    "|
    |
    
    "
      "
      "|
     
      "
      "
      "
      "
      "
      "
      "

  "identifier" : [{ Identifier }], // External Ids for this plan
  "instantiates" : ["<uri>"], // Protocol or definition
  "basedOn" : [{ Reference(CarePlan) }], // Fulfills CarePlan
  "replaces" : [{ Reference(CarePlan) }], // CarePlan replaced by this CarePlan
  "partOf" : [{ Reference(CarePlan) }], // Part of referenced CarePlan
  "status" : "<code>", // R!  draft | active | suspended | completed | entered-in-error | cancelled | unknown
  "intent" : "<code>", // R!  proposal | plan | order | option
  "category" : [{ CodeableConcept }], // Type of plan
  "title" : "<string>", // Human-friendly name for the care plan
  "description" : "<string>", // Summary of nature of plan
  "subject" : { Reference(Patient|Group) }, // R!  Who the care plan is for
  "context" : { Reference(Encounter|EpisodeOfCare) }, // Created in context of
  "period" : { Period }, // Time period plan covers
  "author" : [{ Reference(Patient|Practitioner|PractitionerRole|Device|
   RelatedPerson|Organization|CareTeam) }], // Who is responsible for contents of the plan

  "careTeam" : [{ Reference(CareTeam) }], // Who's involved in plan?
  "addresses" : [{ Reference(Condition) }], // Health issues this plan addresses
  "supportingInfo" : [{ Reference(Any) }], // Information considered as part of plan
  "goal" : [{ Reference(Goal) }], // Desired outcome of plan
  "activity" : [{ // Action to occur as part of plan
    "outcomeCodeableConcept" : [{ CodeableConcept }], // Results of the activity
    "outcomeReference" : [{ Reference(Any) }], // Appointment, Encounter, Procedure, etc.
    "progress" : [{ Annotation }], // Comments about the activity status/progress
    "reference" : { Reference(Appointment|CommunicationRequest|DeviceRequest|
    MedicationRequest|NutritionOrder|Task|ServiceRequest|VisionPrescription|
    RequestGroup) }, // C? Activity details defined in specific resource

    "detail" : { // C? In-line definition of activity
      "kind" : "<code>", // Kind of resource
      "instantiates" : "<uri>", // Protocol or definition
      "code" : { CodeableConcept }, // Detail type of activity
      "reasonCode" : [{ CodeableConcept }], // Why activity should be done or why activity was prohibited
      "reasonReference" : [{ Reference(Condition|Observation|DiagnosticReport|
     DocumentReference) }], // Why activity is needed

      "goal" : [{ Reference(Goal) }], // Goals this activity relates to
      "status" : "<code>", // R!  not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown
      "statusReason" : "<string>", // Reason for current status
      "doNotPerform" : <boolean>, // If true, activity is prohibiting action

      // scheduled[x]: When activity is to occur. One of these 3:
      " },
      " },
      ">",
      "
      "|
     

      "scheduledTiming" : { Timing },
      "scheduledPeriod" : { Period },
      "scheduledString" : "<string>",
      "location" : { Reference(Location) }, // Where it should happen
      "performer" : [{ Reference(Practitioner|PractitionerRole|Organization|
     RelatedPerson|Patient|CareTeam|HealthcareService|Device) }], // Who will be responsible?
      // product[x]: What is to be administered/supplied. One of these 2:
      " },
      " },
      "
      "
      "

      "productCodeableConcept" : { CodeableConcept },
      "productReference" : { Reference(Medication|Substance) },
      "dailyAmount" : { Quantity(SimpleQuantity) }, // How to consume/day?
      "quantity" : { Quantity(SimpleQuantity) }, // How much to administer/supply/consume
      "description" : "<string>" // Extra info describing activity to perform

    }
  }],
  "

  "note" : [{ Annotation }] // Comments about the plan

}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:CarePlan;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:
  fhir:
  fhir:

  fhir:CarePlan.identifier [ Identifier ], ... ; # 0..* External Ids for this plan
  fhir:CarePlan.instantiates [ uri ], ... ; # 0..* Protocol or definition
  fhir:CarePlan.basedOn [ Reference(CarePlan) ], ... ; # 0..* Fulfills CarePlan

  fhir:CarePlan.replaces [ Reference(CarePlan) ], ... ; # 0..* CarePlan replaced by this CarePlan
  fhir:CarePlan.partOf [ Reference(CarePlan) ], ... ; # 0..* Part of referenced CarePlan
  fhir:CarePlan.status [ code ]; # 1..1 draft | active | suspended | completed | entered-in-error | cancelled | unknown
  fhir:CarePlan.intent [ code ]; # 1..1 proposal | plan | order | option
  fhir:CarePlan.category [ CodeableConcept ], ... ; # 0..* Type of plan
  fhir:

  fhir:CarePlan.title [ string ]; # 0..1 Human-friendly name for the care plan

  fhir:CarePlan.description [ string ]; # 0..1 Summary of nature of plan
  fhir:
  fhir:

  fhir:CarePlan.subject [ Reference(Patient|Group) ]; # 1..1 Who the care plan is for
  fhir:CarePlan.context [ Reference(Encounter|EpisodeOfCare) ]; # 0..1 Created in context of

  fhir:CarePlan.period [ Period ]; # 0..1 Time period plan covers
  fhir:

  fhir:CarePlan.author [ Reference(Patient|Practitioner|PractitionerRole|Device|RelatedPerson|Organization|CareTeam) ], ... ; # 0..* Who is responsible for contents of the plan

  fhir:CarePlan.careTeam [ Reference(CareTeam) ], ... ; # 0..* Who's involved in plan?
  fhir:CarePlan.addresses [ Reference(Condition) ], ... ; # 0..* Health issues this plan addresses
  fhir:

  fhir:CarePlan.supportingInfo [ Reference(Any) ], ... ; # 0..* Information considered as part of plan

  fhir:CarePlan.goal [ Reference(Goal) ], ... ; # 0..* Desired outcome of plan
  fhir:CarePlan.activity [ # 0..* Action to occur as part of plan
    fhir:CarePlan.activity.outcomeCodeableConcept [ CodeableConcept ], ... ; # 0..* Results of the activity
    fhir:CarePlan.activity.outcomeReference [ Reference(Any) ], ... ; # 0..* Appointment, Encounter, Procedure, etc.
    fhir:CarePlan.activity.progress [ Annotation ], ... ; # 0..* Comments about the activity status/progress
    fhir:CarePlan.activity.reference [ Reference(Appointment|CommunicationRequest|DeviceRequest|MedicationRequest|NutritionOrder|
  

  Task|ServiceRequest|VisionPrescription|RequestGroup) ]; # 0..1 Activity details defined in specific resource
    fhir:CarePlan.activity.detail [ # 0..1 In-line definition of activity
      fhir:
      fhir:
      fhir:

      fhir:CarePlan.activity.detail.kind [ code ]; # 0..1 Kind of resource
      fhir:CarePlan.activity.detail.instantiates [ uri ]; # 0..1 Protocol or definition
      fhir:CarePlan.activity.detail.code [ CodeableConcept ]; # 0..1 Detail type of activity

      fhir:CarePlan.activity.detail.reasonCode [ CodeableConcept ], ... ; # 0..* Why activity should be done or why activity was prohibited
      fhir:

      fhir:CarePlan.activity.detail.reasonReference [ Reference(Condition|Observation|DiagnosticReport|DocumentReference) ], ... ; # 0..* Why activity is needed

      fhir:CarePlan.activity.detail.goal [ Reference(Goal) ], ... ; # 0..* Goals this activity relates to
      fhir:

      fhir:CarePlan.activity.detail.status [ code ]; # 1..1 not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown

      fhir:CarePlan.activity.detail.statusReason [ string ]; # 0..1 Reason for current status
      fhir:

      fhir:CarePlan.activity.detail.doNotPerform [ boolean ]; # 0..1 If true, activity is prohibiting action

      # CarePlan.activity.detail.scheduled[x] : 0..1 When activity is to occur. One of these 3
        fhir:CarePlan.activity.detail.scheduledTiming [ Timing ]
        fhir:CarePlan.activity.detail.scheduledPeriod [ Period ]
        fhir:CarePlan.activity.detail.scheduledString [ string ]
      fhir:CarePlan.activity.detail.location [ Reference(Location) ]; # 0..1 Where it should happen
      fhir:

      fhir:CarePlan.activity.detail.performer [ Reference(Practitioner|PractitionerRole|Organization|RelatedPerson|Patient|CareTeam|
  HealthcareService|Device) ], ... ; # 0..* Who will be responsible?
      # CarePlan.activity.detail.product[x] : 0..1 What is to be administered/supplied. One of these 2
        fhir:CarePlan.activity.detail.productCodeableConcept [ CodeableConcept ]
        fhir:CarePlan.activity.detail.productReference [ Reference(Medication|Substance) ]
      fhir:CarePlan.activity.detail.dailyAmount [ Quantity(SimpleQuantity) ]; # 0..1 How to consume/day?
      fhir:CarePlan.activity.detail.quantity [ Quantity(SimpleQuantity) ]; # 0..1 How much to administer/supply/consume
      fhir:CarePlan.activity.detail.description [ string ]; # 0..1 Extra info describing activity to perform
    ];
  ], ...;
  fhir:CarePlan.note [ Annotation ], ... ; # 0..* Comments about the plan
]

Changes since DSTU2

CarePlan.definition Added Element CarePlan.basedOn CarePlan.supportingInfo Renamed from support to supportingInfo
CarePlan Added Element CarePlan.replaces Added Element CarePlan.partOf Added Element CarePlan.intent Added Element
CarePlan.title CarePlan.instantiates
  • Added Element
CarePlan.subject CarePlan.author
  • Min Cardinality Type changed from 0 Reference(Patient|Practitioner|RelatedPerson|Organization|CareTeam) to 1 Reference(Patient|Practitioner|PractitionerRole|Device|RelatedPerson|Organization|CareTeam)
CarePlan.author CarePlan.activity.reference
  • Add Reference(CareTeam) Type changed from Reference(Appointment|CommunicationRequest|DeviceRequest|MedicationRequest|NutritionOrder|Task|ProcedureRequest|ReferralRequest|VisionPrescription|RequestGroup) to Reference(Appointment|CommunicationRequest|DeviceRequest|MedicationRequest|NutritionOrder|Task|ServiceRequest|VisionPrescription|RequestGroup)
CarePlan.careTeam CarePlan.activity.detail.kind
  • Added Element
CarePlan.activity.outcomeCodeableConcept CarePlan.activity.detail.instantiates
  • Added Element
CarePlan.activity.outcomeReference CarePlan.activity.detail.reasonReference
  • Renamed Type changed from actionResulting Reference(Condition) to outcomeReference CarePlan.activity.reference Remove Reference(DiagnosticOrder), Remove Reference(MedicationOrder), Remove Reference(Order), Remove Reference(ProcessRequest), Remove Reference(SupplyRequest), Add Reference(MedicationRequest), Add Reference(Task), Add Reference(RequestGroup) Reference(Condition|Observation|DiagnosticReport|DocumentReference)
CarePlan.activity.detail.definition CarePlan.activity.detail.doNotPerform
  • Added Element
CarePlan.activity.detail.status Min Cardinality changed from 0 to 1 CarePlan.activity.detail.statusReason CarePlan.activity.detail.performer
  • Type changed from CodeableConcept to string CarePlan.activity.detail.prohibited Min Cardinality changed from 1 Reference(Practitioner|Organization|RelatedPerson|Patient|CareTeam) to 0 Default Value "false" added Reference(Practitioner|PractitionerRole|Organization|RelatedPerson|Patient|CareTeam|HealthcareService|Device)
CarePlan.activity.detail.performer CarePlan.activity.detail.product[x]
  • Remove Reference(Medication|Substance), Add Reference(CareTeam) Reference(Medication|Substance)
CarePlan.note CarePlan.definition
  • Max Cardinality changed from 1 to * deleted
CarePlan.modified CarePlan.activity.detail.category
  • deleted
CarePlan.relatedPlan CarePlan.activity.detail.definition
  • deleted
CarePlan.participant CarePlan.activity.detail.prohibited
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

See R2 <--> R3 Conversion Maps (status = 10 tests that all execute ok. 8 fail round-trip testing and 10 r3 resources are invalid (33 errors). ). Note: these have note yet been updated to be R3 to R4

 

Alternate definitions: Master Definition ( XML , + JSON ), , XML Schema / Schematron (for ) + JSON Schema , ShEx (for Turtle ) + see the extensions & the dependency analysis

CarePlan.activity.detail.category
Path Definition Type Reference
CarePlan.status Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record. Required CarePlanStatus
CarePlan.intent Codes indicating the degree of authority/intentionality associated with a care plan Required CarePlanIntent
CarePlan.category Identifies what "kind" "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", "Home health", "psychiatric", "asthma", "disease management", etc. Example Care Plan Category
CarePlan.activity.outcomeCodeableConcept Identifies the results of the activity Example Care Plan Activity Outcome
CarePlan.activity.detail.kind High-level categorization Resource types defined as part of the type FHIR that can be represented as in-line definitions of activity in a care plan. plan activity. Example Required CarePlanActivityCategory Care Plan Activity Kind
CarePlan.activity.detail.code Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter. Example Care Plan Activity Procedure Codes (SNOMED CT)
CarePlan.activity.detail.reasonCode Identifies why a care plan activity is needed. Can include any health condition codes as well as such concepts as "general wellness", "general wellness", prophylaxis, surgical preparation, etc. Example Activity Reason SNOMED CT Clinical Findings
CarePlan.activity.detail.status Indicates where the activity is at in its overall life cycle. Required CarePlanActivityStatus
CarePlan.activity.detail.product[x] A product supplied or administered as part of a care plan activity. Example SNOMED CT Medication Codes

  • cpl-3 : On CarePlan.activity: Provide a reference or detail, not both ( expression on CarePlan.activity: detail.empty() or reference.empty() )

The Provenance resource can be used for detailed review information, such as when the care plan was last reviewed and by whom.

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

Name Type Description Expression In Common
activity-code token Detail type of activity CarePlan.activity.detail.code
activity-date date Specified date occurs within period specified by CarePlan.activity.timingSchedule CarePlan.activity.detail.scheduled
activity-reference reference Activity details defined in specific resource CarePlan.activity.reference
( Appointment , ReferralRequest , MedicationRequest , Task , NutritionOrder , RequestGroup , VisionPrescription , ProcedureRequest , DeviceRequest , ServiceRequest , CommunicationRequest )
based-on reference Fulfills care plan CarePlan CarePlan.basedOn
( CarePlan )
care-team reference Who's involved in plan? CarePlan.careTeam
( CareTeam )
category token Type of plan CarePlan.category
condition reference Health issues this plan addresses CarePlan.addresses
( Condition )
context reference Created in context of CarePlan.context
( EpisodeOfCare , Encounter )
date date Time period plan covers CarePlan.period 18 17 Resources
definition reference Protocol or definition CarePlan.definition ( Questionnaire , PlanDefinition ) encounter reference Created in context of CarePlan.context
( Encounter )
goal reference Desired outcome of plan CarePlan.goal
( Goal )
identifier token External Ids for this plan CarePlan.identifier 26 Resources
instantiates uri Protocol or definition CarePlan.instantiates
intent token proposal | plan | order | option CarePlan.intent
part-of reference Part of referenced CarePlan CarePlan.partOf
( CarePlan )
patient reference Who the care plan is for CarePlan.subject
( Patient )
31 29 Resources
performer reference Matches if the practitioner is listed as a performer in any of the "simple" "simple" activities. (For performers of the detailed activities, chain through the activitydetail search parameter.) CarePlan.activity.detail.performer
( Practitioner , Organization , CareTeam , Device , Patient , HealthcareService , PractitionerRole , RelatedPerson )
replaces reference CarePlan replaced by this CarePlan CarePlan.replaces
( CarePlan )
status token draft | active | suspended | completed | entered-in-error | cancelled | unknown CarePlan.status
subject reference Who the care plan is for CarePlan.subject
( Group , Patient )