Open Health Hub FHIR Implementation Guide
0.1.0 - v0.1.0

Open Health Hub FHIR Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

## Resource Profile: OHH Base CarePlan ( Abstract )

Official URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/ohh-base-care-plan | Version: 0.1.0
Active as of 2025-12-03 | Computable Name: OhhBaseCarePlan

Base Profile that has common settings used by both retrieve and create

### Scope and Usage

This is the base OHH CarePlan resource. It is the base for both the Create CarePlan and Retrieve CarePlan profiles.

The Create CarePlan profile is used to create or update a CarePlan. The Retrieve CarePlan profile is used to retrieve a CarePlan, and in the response of the create and update operations.

Usages:

- Derived from this Profile: OHH Create Care Plan Profile and OHH Retrieve Care Plan Profile

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Differential Table
- Key Elements Table
- Snapshot Table
- Statistics/References
- All

This structure is derived from CarePlan

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | CarePlan | This is an abstract profile. Child profiles: OhhCreateCarePlan, OhhRetrieveCarePlan Healthcare plan for patient or group
instantiatesCanonical | S | 1..1 | canonical(OHH Plan Definition Profile) | Instantiates FHIR protocol or definition
subject | S | 1..1 | Reference(Patient | Group) | Who the care plan is for
type |  | 0..1 | uri | Type the reference refers to (e.g. "Patient") Required Pattern: ohh-patient
period | S | 1..1 | Period | Time period plan covers
start | S | 1..1 | dateTime | Starting time with inclusive boundary
author | S C | 0..1 | Reference(Practitioner) | Who is the designated responsible party Constraints: author-name-requirement
careTeam | S | 0..* | Reference(CareTeam) | Who's involved in plan?
Documentation for this format

#### Constraints

Id | Grade | Path(s) | Description | Expression
author-name-requirement | error | CarePlan.author | Author name must be present | `resolve().name.text.exists()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | CarePlan | This is an abstract profile. Child profiles: OhhCreateCarePlan, OhhRetrieveCarePlan Healthcare plan for patient or group
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
instantiatesCanonical | S Σ | 1..1 | canonical(OHH Plan Definition Profile) | Instantiates FHIR protocol or definition
status | ?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record.
intent | ?!Σ | 1..1 | code | proposal | plan | order | option Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
subject | S Σ | 1..1 | Reference(Patient | Group) | Who the care plan is for
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). Required Pattern: ohh-patient
period | S Σ | 1..1 | Period | Time period plan covers
start | S Σ C | 1..1 | dateTime | Starting time with inclusive boundary
author | S Σ C | 0..1 | Reference(Practitioner) | Who is the designated responsible party Constraints: author-name-requirement
careTeam | S | 0..* | Reference(CareTeam) | Who's involved in plan?
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
CarePlan.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
CarePlan.intent | Base | required | Care Plan Intent | 📍4.0.1 | FHIR Std.
CarePlan.subject.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
author-name-requirement | error | CarePlan.author | Author name must be present | `resolve().name.text.exists()`
dom-2 | error | CarePlan | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | CarePlan | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | CarePlan | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | CarePlan | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | CarePlan | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | CarePlan | This is an abstract profile. Child profiles: OhhCreateCarePlan, OhhRetrieveCarePlan Healthcare plan for patient or group
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | External Ids for this plan
instantiatesCanonical | S Σ | 1..1 | canonical(OHH Plan Definition Profile) | Instantiates FHIR protocol or definition
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition
basedOn | Σ | 0..* | Reference(CarePlan) | Fulfills CarePlan
replaces | Σ | 0..* | Reference(CarePlan) | CarePlan replaced by this CarePlan
partOf | Σ | 0..* | Reference(CarePlan) | Part of referenced CarePlan
status | ?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record.
intent | ?!Σ | 1..1 | code | proposal | plan | order | option Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
category | Σ | 0..* | CodeableConcept | Type of plan Binding: CarePlanCategory (example): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
title | Σ | 0..1 | string | Human-friendly name for the care plan
description | Σ | 0..1 | string | Summary of nature of plan
subject | S Σ | 1..1 | Reference(Patient | Group) | Who the care plan is for
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). Required Pattern: ohh-patient
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of
period | S Σ | 1..1 | Period | Time period plan covers
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
start | S Σ C | 1..1 | dateTime | Starting time with inclusive boundary
end | Σ C | 0..1 | dateTime | End time with inclusive boundary, if not ongoing
created | Σ | 0..1 | dateTime | Date record was first recorded
author | S Σ C | 0..1 | Reference(Practitioner) | Who is the designated responsible party Constraints: author-name-requirement
contributor |  | 0..* | Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam) | Who provided the content of the care plan
careTeam | S | 0..* | Reference(CareTeam) | Who's involved in plan?
addresses | Σ | 0..* | Reference(Condition) | Health issues this plan addresses
supportingInfo |  | 0..* | Reference(Resource) | Information considered as part of plan
goal |  | 0..* | Reference(Goal) | Desired outcome of plan
activity | C | 0..* | BackboneElement | Action to occur as part of plan Constraints: cpl-3
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
outcomeCodeableConcept |  | 0..* | CodeableConcept | Results of the activity Binding: CarePlanActivityOutcome (example): Identifies the results of the activity.
outcomeReference |  | 0..* | Reference(Resource) | Appointment, Encounter, Procedure, etc.
progress |  | 0..* | Annotation | Comments about the activity status/progress
reference | C | 0..1 | Reference(Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ServiceRequest | VisionPrescription | RequestGroup) | Activity details defined in specific resource
detail | C | 0..1 | BackboneElement | In-line definition of activity
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
kind |  | 0..1 | code | Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ServiceRequest | VisionPrescription Binding: CarePlanActivityKind (required): Resource types defined as part of FHIR that can be represented as in-line definitions of a care plan activity.
instantiatesCanonical |  | 0..* | canonical(PlanDefinition | ActivityDefinition | Questionnaire | Measure | OperationDefinition) | Instantiates FHIR protocol or definition
instantiatesUri |  | 0..* | uri | Instantiates external protocol or definition
code |  | 0..1 | CodeableConcept | Detail type of activity Binding: ProcedureCodes(SNOMEDCT) (example): Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.
reasonCode |  | 0..* | CodeableConcept | Why activity should be done or why activity was prohibited Binding: SNOMEDCTClinicalFindings (example): Identifies why a care plan activity is needed. Can include any health condition codes as well as such concepts as "general wellness", prophylaxis, surgical preparation, etc.
reasonReference |  | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | 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 | entered-in-error Binding: CarePlanActivityStatus (required): Codes that reflect the current state of a care plan activity within its overall life cycle.
statusReason |  | 0..1 | CodeableConcept | Reason for current status
doNotPerform | ?! | 0..1 | boolean | 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 Binding: SNOMEDCTMedicationCodes (example): A product supplied or administered as part of a care plan activity.
productCodeableConcept |  |  | CodeableConcept |
productReference |  |  | Reference(Medication | Substance) |
dailyAmount |  | 0..1 | SimpleQuantity(4.0.1) | How to consume/day?
quantity |  | 0..1 | SimpleQuantity(4.0.1) | How much to administer/supply/consume
description |  | 0..1 | string | Extra info describing activity to perform
note |  | 0..* | Annotation | Comments about the plan
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
CarePlan.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
CarePlan.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
CarePlan.intent | Base | required | Care Plan Intent | 📍4.0.1 | FHIR Std.
CarePlan.category | Base | example | Care Plan Category | 📍4.0.1 | FHIR Std.
CarePlan.subject.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.
CarePlan.activity.outcomeCodeableConcept | Base | example | Care Plan Activity Outcome | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​kind | Base | required | Care Plan Activity Kind | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​code | Base | example | Procedure Codes (SNOMED CT) | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​reasonCode | Base | example | SNOMED CT Clinical Findings | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​status | Base | required | CarePlanActivityStatus | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​product[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
author-name-requirement | error | CarePlan.author | Author name must be present | `resolve().name.text.exists()`
cpl-3 | error | CarePlan.activity | Provide a reference or detail, not both | `detail.empty() or reference.empty()`
dom-2 | error | CarePlan | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | CarePlan | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | CarePlan | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | CarePlan | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | CarePlan | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from CarePlan

Summary

Mandatory: 3 elements
Must-Support: 6 elements

Structures

This structure refers to these other structures:

- OHH Plan Definition Profile (https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/ohh-plan-definition)

Differential View

This structure is derived from CarePlan

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | CarePlan | This is an abstract profile. Child profiles: OhhCreateCarePlan, OhhRetrieveCarePlan Healthcare plan for patient or group
instantiatesCanonical | S | 1..1 | canonical(OHH Plan Definition Profile) | Instantiates FHIR protocol or definition
subject | S | 1..1 | Reference(Patient | Group) | Who the care plan is for
type |  | 0..1 | uri | Type the reference refers to (e.g. "Patient") Required Pattern: ohh-patient
period | S | 1..1 | Period | Time period plan covers
start | S | 1..1 | dateTime | Starting time with inclusive boundary
author | S C | 0..1 | Reference(Practitioner) | Who is the designated responsible party Constraints: author-name-requirement
careTeam | S | 0..* | Reference(CareTeam) | Who's involved in plan?
Documentation for this format

#### Constraints

Id | Grade | Path(s) | Description | Expression
author-name-requirement | error | CarePlan.author | Author name must be present | `resolve().name.text.exists()`

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | CarePlan | This is an abstract profile. Child profiles: OhhCreateCarePlan, OhhRetrieveCarePlan Healthcare plan for patient or group
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
instantiatesCanonical | S Σ | 1..1 | canonical(OHH Plan Definition Profile) | Instantiates FHIR protocol or definition
status | ?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record.
intent | ?!Σ | 1..1 | code | proposal | plan | order | option Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
subject | S Σ | 1..1 | Reference(Patient | Group) | Who the care plan is for
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). Required Pattern: ohh-patient
period | S Σ | 1..1 | Period | Time period plan covers
start | S Σ C | 1..1 | dateTime | Starting time with inclusive boundary
author | S Σ C | 0..1 | Reference(Practitioner) | Who is the designated responsible party Constraints: author-name-requirement
careTeam | S | 0..* | Reference(CareTeam) | Who's involved in plan?
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
CarePlan.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
CarePlan.intent | Base | required | Care Plan Intent | 📍4.0.1 | FHIR Std.
CarePlan.subject.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
author-name-requirement | error | CarePlan.author | Author name must be present | `resolve().name.text.exists()`
dom-2 | error | CarePlan | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | CarePlan | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | CarePlan | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | CarePlan | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | CarePlan | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | CarePlan | This is an abstract profile. Child profiles: OhhCreateCarePlan, OhhRetrieveCarePlan Healthcare plan for patient or group
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | External Ids for this plan
instantiatesCanonical | S Σ | 1..1 | canonical(OHH Plan Definition Profile) | Instantiates FHIR protocol or definition
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition
basedOn | Σ | 0..* | Reference(CarePlan) | Fulfills CarePlan
replaces | Σ | 0..* | Reference(CarePlan) | CarePlan replaced by this CarePlan
partOf | Σ | 0..* | Reference(CarePlan) | Part of referenced CarePlan
status | ?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record.
intent | ?!Σ | 1..1 | code | proposal | plan | order | option Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
category | Σ | 0..* | CodeableConcept | Type of plan Binding: CarePlanCategory (example): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
title | Σ | 0..1 | string | Human-friendly name for the care plan
description | Σ | 0..1 | string | Summary of nature of plan
subject | S Σ | 1..1 | Reference(Patient | Group) | Who the care plan is for
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). Required Pattern: ohh-patient
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of
period | S Σ | 1..1 | Period | Time period plan covers
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
start | S Σ C | 1..1 | dateTime | Starting time with inclusive boundary
end | Σ C | 0..1 | dateTime | End time with inclusive boundary, if not ongoing
created | Σ | 0..1 | dateTime | Date record was first recorded
author | S Σ C | 0..1 | Reference(Practitioner) | Who is the designated responsible party Constraints: author-name-requirement
contributor |  | 0..* | Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam) | Who provided the content of the care plan
careTeam | S | 0..* | Reference(CareTeam) | Who's involved in plan?
addresses | Σ | 0..* | Reference(Condition) | Health issues this plan addresses
supportingInfo |  | 0..* | Reference(Resource) | Information considered as part of plan
goal |  | 0..* | Reference(Goal) | Desired outcome of plan
activity | C | 0..* | BackboneElement | Action to occur as part of plan Constraints: cpl-3
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
outcomeCodeableConcept |  | 0..* | CodeableConcept | Results of the activity Binding: CarePlanActivityOutcome (example): Identifies the results of the activity.
outcomeReference |  | 0..* | Reference(Resource) | Appointment, Encounter, Procedure, etc.
progress |  | 0..* | Annotation | Comments about the activity status/progress
reference | C | 0..1 | Reference(Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ServiceRequest | VisionPrescription | RequestGroup) | Activity details defined in specific resource
detail | C | 0..1 | BackboneElement | In-line definition of activity
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
kind |  | 0..1 | code | Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ServiceRequest | VisionPrescription Binding: CarePlanActivityKind (required): Resource types defined as part of FHIR that can be represented as in-line definitions of a care plan activity.
instantiatesCanonical |  | 0..* | canonical(PlanDefinition | ActivityDefinition | Questionnaire | Measure | OperationDefinition) | Instantiates FHIR protocol or definition
instantiatesUri |  | 0..* | uri | Instantiates external protocol or definition
code |  | 0..1 | CodeableConcept | Detail type of activity Binding: ProcedureCodes(SNOMEDCT) (example): Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.
reasonCode |  | 0..* | CodeableConcept | Why activity should be done or why activity was prohibited Binding: SNOMEDCTClinicalFindings (example): Identifies why a care plan activity is needed. Can include any health condition codes as well as such concepts as "general wellness", prophylaxis, surgical preparation, etc.
reasonReference |  | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | 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 | entered-in-error Binding: CarePlanActivityStatus (required): Codes that reflect the current state of a care plan activity within its overall life cycle.
statusReason |  | 0..1 | CodeableConcept | Reason for current status
doNotPerform | ?! | 0..1 | boolean | 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 Binding: SNOMEDCTMedicationCodes (example): A product supplied or administered as part of a care plan activity.
productCodeableConcept |  |  | CodeableConcept |
productReference |  |  | Reference(Medication | Substance) |
dailyAmount |  | 0..1 | SimpleQuantity(4.0.1) | How to consume/day?
quantity |  | 0..1 | SimpleQuantity(4.0.1) | How much to administer/supply/consume
description |  | 0..1 | string | Extra info describing activity to perform
note |  | 0..* | Annotation | Comments about the plan
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
CarePlan.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
CarePlan.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
CarePlan.intent | Base | required | Care Plan Intent | 📍4.0.1 | FHIR Std.
CarePlan.category | Base | example | Care Plan Category | 📍4.0.1 | FHIR Std.
CarePlan.subject.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.
CarePlan.activity.outcomeCodeableConcept | Base | example | Care Plan Activity Outcome | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​kind | Base | required | Care Plan Activity Kind | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​code | Base | example | Procedure Codes (SNOMED CT) | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​reasonCode | Base | example | SNOMED CT Clinical Findings | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​status | Base | required | CarePlanActivityStatus | 📍4.0.1 | FHIR Std.
CarePlan.activity.detail.​product[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
author-name-requirement | error | CarePlan.author | Author name must be present | `resolve().name.text.exists()`
cpl-3 | error | CarePlan.activity | Provide a reference or detail, not both | `detail.empty() or reference.empty()`
dom-2 | error | CarePlan | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | CarePlan | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | CarePlan | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | CarePlan | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | CarePlan | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from CarePlan

Summary

Mandatory: 3 elements
Must-Support: 6 elements

Structures

This structure refers to these other structures:

- OHH Plan Definition Profile (https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/ohh-plan-definition)

Other representations of profile: CSV, Excel, Schematron