QI-Core Implementation Guide
8.0.0-ballot - STU 8 - ballot

QI-Core Implementation Guide, published by HL7 International / Clinical Quality Information. This guide is not an authorized publication; it is the continuous build for version 8.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-qi-core/ and changes regularly. See the Directory of published versions

## Resource Profile: QICore CarePlan

Official URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-careplan | Version: 8.0.0-ballot
Standards status: Trial-use Active as of 2019-07-28 | Maturity Level: 4 | Computable Name: QICoreCarePlan

The QI-Core CarePlan is based upon the US Core CarePlan Profile which is based upon the core FHIR CarePlan Resource and created to meet the 2015 Edition Common Clinical Data Set 'Assessment and Plan of Treatment requirements. Defines constraints and extensions on the CarePlan resource for the minimal set of data to query and retrieve a patient's Care Plan.

"Must Have", "QI Elements" and "primary code path" are defined in the QI-Core Must Support section.
Must Have:

- subject: (QI) Who the care plan is for.
- status: draft | active | on-hold | revoked | completed | entered-in-error | unknown
- category(AssessPlan): (QI) Type of plan
- intent: proposal | plan | order | option
- category: (QI) Type of plan

Primary code path: category
(PCPath) This element is the primary code path for this resource CQL Retrieve
Usage

See the patterns page for implementation and usage patterns.

### Examples

Antenatal Care Plan Example

Usages:

- Refer to this Profile: QICore DiagnosticReport Profile for Laboratory Results Reporting, QICore ImagingStudy and QICore Procedure

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

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

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | USCoreCarePlanProfile | Healthcare plan for patient or group
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
text | S | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile constrains the narrative content by fixing the status codes to generated and additional This profile does not constrain the narrative in regard to language specific sections This profile does not constrain the narrative in regard to traceability to data elements
status | S | 1..1 | code | generated | additional Binding: US Core Narrative Status (required): Constrained value set of narrative statuses.
div | S C | 1..1 | xhtml | Limited xhtml content Constraints: txt-1, txt-2
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 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 | ?!S Σ | 1..1 | code | proposal | plan | order | option Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan
Slices for category | S Σ | 1..* | CodeableConcept | (QI) Type of plan Slice: Unordered, Open by value:$this Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
category:AssessPlan | S Σ | 1..1 | CodeableConcept | (QI) Type of plan Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/core/CodeSystem/careplan-category
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assess-plan
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
subject | S Σ | 1..1 | Reference(QICore Patient) | (QI) Who the care plan is for.
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
CarePlan.text.status | Base | required | US Core Narrative Status | 📦8.0.0 | US Core v8.0
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 | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.
CarePlan.category:AssessPlan | Base | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
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()`
txt-1 | error | CarePlan.text.div | The narrative SHALL contain only the basic html formatting elements and attributes described in chapters 7-11 (except section 4 of chapter 9) and 15 of the HTML 4.0 standard, <a> elements (either name or href), images and internally contained style attributes | `htmlChecks()`
txt-2 | error | CarePlan.text.div | The narrative SHALL have some non-whitespace content | `htmlChecks()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | USCoreCarePlanProfile | Healthcare plan for patient or group
Slices for category | Σ | 1..* | CodeableConcept | (QI) Type of plan Slice: Unordered, Open by value:$this Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
category:AssessPlan | Σ | 1..1 | CodeableConcept | (QI) Type of plan Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc. Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/core/CodeSystem/careplan-category
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assess-plan
subject |  | 1..1 | Reference(QICore Patient) | (QI) Who the care plan is for.
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
CarePlan.category | Base | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.
CarePlan.category:AssessPlan | Base | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | USCoreCarePlanProfile | 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 | S | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile constrains the narrative content by fixing the status codes to generated and additional This profile does not constrain the narrative in regard to language specific sections This profile does not constrain the narrative in regard to traceability to data elements
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
status | S | 1..1 | code | generated | additional Binding: US Core Narrative Status (required): Constrained value set of narrative statuses.
div | S C | 1..1 | xhtml | Limited xhtml content Constraints: txt-1, txt-2
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 | Σ | 0..* | canonical(PlanDefinition | Questionnaire | Measure | ActivityDefinition | OperationDefinition) | 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 | ?!S Σ | 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 | ?!S Σ | 1..1 | code | proposal | plan | order | option Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan
Slices for category | S Σ | 1..* | CodeableConcept | (QI) Type of plan Slice: Unordered, Open by value:$this Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
category:AssessPlan | S Σ | 1..1 | CodeableConcept | (QI) Type of plan Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/core/CodeSystem/careplan-category
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assess-plan
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
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(QICore Patient) | (QI) Who the care plan is for.
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of
period | Σ | 0..1 | Period | Time period plan covers
created | Σ | 0..1 | dateTime | Date record was first recorded
author | Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam) | Who is the designated responsible party
contributor |  | 0..* | Reference(US Core Practitioner Profile | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile | Device) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: Who provided the content of the care plan
careTeam |  | 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 | 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
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
CarePlan.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
CarePlan.text.status | Base | required | US Core Narrative Status | 📦8.0.0 | US Core v8.0
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 | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.
CarePlan.category:AssessPlan | Base | preferred | Care Plan Category | 📦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
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()`
txt-1 | error | CarePlan.text.div | The narrative SHALL contain only the basic html formatting elements and attributes described in chapters 7-11 (except section 4 of chapter 9) and 15 of the HTML 4.0 standard, <a> elements (either name or href), images and internally contained style attributes | `htmlChecks()`
txt-2 | error | CarePlan.text.div | The narrative SHALL have some non-whitespace content | `htmlChecks()`

Summary

Mandatory: 3 elements

Structures

This structure refers to these other structures:

- QICore Patient (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of CarePlan.category

Maturity: 4

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | USCoreCarePlanProfile | Healthcare plan for patient or group
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
text | S | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile constrains the narrative content by fixing the status codes to generated and additional This profile does not constrain the narrative in regard to language specific sections This profile does not constrain the narrative in regard to traceability to data elements
status | S | 1..1 | code | generated | additional Binding: US Core Narrative Status (required): Constrained value set of narrative statuses.
div | S C | 1..1 | xhtml | Limited xhtml content Constraints: txt-1, txt-2
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 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 | ?!S Σ | 1..1 | code | proposal | plan | order | option Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan
Slices for category | S Σ | 1..* | CodeableConcept | (QI) Type of plan Slice: Unordered, Open by value:$this Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
category:AssessPlan | S Σ | 1..1 | CodeableConcept | (QI) Type of plan Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/core/CodeSystem/careplan-category
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assess-plan
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
subject | S Σ | 1..1 | Reference(QICore Patient) | (QI) Who the care plan is for.
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
CarePlan.text.status | Base | required | US Core Narrative Status | 📦8.0.0 | US Core v8.0
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 | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.
CarePlan.category:AssessPlan | Base | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
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()`
txt-1 | error | CarePlan.text.div | The narrative SHALL contain only the basic html formatting elements and attributes described in chapters 7-11 (except section 4 of chapter 9) and 15 of the HTML 4.0 standard, <a> elements (either name or href), images and internally contained style attributes | `htmlChecks()`
txt-2 | error | CarePlan.text.div | The narrative SHALL have some non-whitespace content | `htmlChecks()`

Differential View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | USCoreCarePlanProfile | Healthcare plan for patient or group
Slices for category | Σ | 1..* | CodeableConcept | (QI) Type of plan Slice: Unordered, Open by value:$this Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
category:AssessPlan | Σ | 1..1 | CodeableConcept | (QI) Type of plan Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc. Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/core/CodeSystem/careplan-category
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assess-plan
subject |  | 1..1 | Reference(QICore Patient) | (QI) Who the care plan is for.
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
CarePlan.category | Base | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.
CarePlan.category:AssessPlan | Base | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.

Snapshot ViewView

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
CarePlan |  | 0..* | USCoreCarePlanProfile | 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 | S | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile constrains the narrative content by fixing the status codes to generated and additional This profile does not constrain the narrative in regard to language specific sections This profile does not constrain the narrative in regard to traceability to data elements
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
status | S | 1..1 | code | generated | additional Binding: US Core Narrative Status (required): Constrained value set of narrative statuses.
div | S C | 1..1 | xhtml | Limited xhtml content Constraints: txt-1, txt-2
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 | Σ | 0..* | canonical(PlanDefinition | Questionnaire | Measure | ActivityDefinition | OperationDefinition) | 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 | ?!S Σ | 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 | ?!S Σ | 1..1 | code | proposal | plan | order | option Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan
Slices for category | S Σ | 1..* | CodeableConcept | (QI) Type of plan Slice: Unordered, Open by value:$this Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
category:AssessPlan | S Σ | 1..1 | CodeableConcept | (QI) Type of plan Binding: CarePlanCategory (preferred): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/core/CodeSystem/careplan-category
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: assess-plan
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
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(QICore Patient) | (QI) Who the care plan is for.
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of
period | Σ | 0..1 | Period | Time period plan covers
created | Σ | 0..1 | dateTime | Date record was first recorded
author | Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam) | Who is the designated responsible party
contributor |  | 0..* | Reference(US Core Practitioner Profile | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile | Device) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: Who provided the content of the care plan
careTeam |  | 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 | 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
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
CarePlan.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
CarePlan.text.status | Base | required | US Core Narrative Status | 📦8.0.0 | US Core v8.0
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 | preferred | Care Plan Category | 📦4.0.1 | FHIR Std.
CarePlan.category:AssessPlan | Base | preferred | Care Plan Category | 📦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
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()`
txt-1 | error | CarePlan.text.div | The narrative SHALL contain only the basic html formatting elements and attributes described in chapters 7-11 (except section 4 of chapter 9) and 15 of the HTML 4.0 standard, <a> elements (either name or href), images and internally contained style attributes | `htmlChecks()`
txt-2 | error | CarePlan.text.div | The narrative SHALL have some non-whitespace content | `htmlChecks()`

Summary

Mandatory: 3 elements

Structures

This structure refers to these other structures:

- QICore Patient (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of CarePlan.category

Maturity: 4

Other representations of profile: CSV, Excel, Schematron