EHI Export Implementation Guide
0.1.0 - ci-build

EHI Export Implementation Guide - Local Development build (v0.1.0). See the Directory of published versions

Resource Profile: Care Plan

Official URL: https://ehi-export.pointclickcare.com//StructureDefinition/care-plan Version: 0.1.0
Draft as of 2024-02-05 Computable Name: EHICarePlan

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.

Usage:

  • This Resource Profile is not used by any profiles in this Implementation Guide

Formal Views of Profile Content

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

This structure is derived from CarePlan

NameFlagsCard.TypeDescription & Constraintsdoco
.. CarePlan 0..*CarePlanHealthcare plan for patient or group
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... status ?!Σ1..1codedraft | 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.

... subject Σ1..1Reference(Patient | Group)Who the care plan is for

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
CarePlan.statusrequiredRequestStatus
CarePlan.intentrequiredCarePlanIntent

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorCarePlanIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorCarePlanIf 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-4errorCarePlanIf 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-5errorCarePlanIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceCarePlanA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. CarePlan 0..*CarePlanHealthcare plan for patient or group
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this plan
... instantiatesCanonical Σ0..*canonical(PlanDefinition | Questionnaire | Measure | ActivityDefinition | OperationDefinition)Instantiates FHIR protocol or definition
... instantiatesUri Σ0..*uriInstantiates 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..1codedraft | 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..1codeproposal | plan | order | option
Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.

... category Σ0..*CodeableConceptType 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..1stringHuman-friendly name for the care plan
... description Σ0..1stringSummary of nature of plan
... subject Σ1..1Reference(Patient | Group)Who the care plan is for
... encounter Σ0..1Reference(Encounter)Encounter created as part of
... period Σ0..1PeriodTime period plan covers
... created Σ0..1dateTimeDate record was first recorded
... author Σ0..1Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam)Who is the designated responsible party
... contributor 0..*Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam)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 C0..*BackboneElementAction to occur as part of plan
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... outcomeCodeableConcept 0..*CodeableConceptResults of the activity
Binding: CarePlanActivityOutcome (example): Identifies the results of the activity.


.... outcomeReference 0..*Reference(Resource)Appointment, Encounter, Procedure, etc.
.... progress 0..*AnnotationComments about the activity status/progress
.... reference C0..1Reference(Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ServiceRequest | VisionPrescription | RequestGroup)Activity details defined in specific resource
.... detail C0..1BackboneElementIn-line definition of activity
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... kind 0..1codeAppointment | 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..*uriInstantiates external protocol or definition
..... code 0..1CodeableConceptDetail 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..*CodeableConceptWhy 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..1codenot-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..1CodeableConceptReason for current status
..... doNotPerform ?!0..1booleanIf true, activity is prohibiting action
..... scheduled[x] 0..1When activity is to occur
...... scheduledTimingTiming
...... scheduledPeriodPeriod
...... scheduledStringstring
..... location 0..1Reference(Location)Where it should happen
..... performer 0..*Reference(Practitioner | PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device)Who will be responsible?
..... product[x] 0..1What is to be administered/supplied
Binding: SNOMEDCTMedicationCodes (example): A product supplied or administered as part of a care plan activity.

...... productCodeableConceptCodeableConcept
...... productReferenceReference(Medication | Substance)
..... dailyAmount 0..1SimpleQuantityHow to consume/day?
..... quantity 0..1SimpleQuantityHow much to administer/supply/consume
..... description 0..1stringExtra info describing activity to perform
... note 0..*AnnotationComments about the plan

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
CarePlan.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
CarePlan.statusrequiredRequestStatus
CarePlan.intentrequiredCarePlanIntent
CarePlan.categoryexampleCarePlanCategory
CarePlan.activity.outcomeCodeableConceptexampleCarePlanActivityOutcome
CarePlan.activity.detail.kindrequiredCarePlanActivityKind
CarePlan.activity.detail.codeexampleProcedureCodes(SNOMEDCT)
CarePlan.activity.detail.reasonCodeexampleSNOMEDCTClinicalFindings
CarePlan.activity.detail.statusrequiredCarePlanActivityStatus
CarePlan.activity.detail.product[x]exampleSNOMEDCTMedicationCodes

Constraints

IdGradePath(s)DetailsRequirements
cpl-3errorCarePlan.activityProvide a reference or detail, not both
: detail.empty() or reference.empty()
dom-2errorCarePlanIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorCarePlanIf 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-4errorCarePlanIf 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-5errorCarePlanIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceCarePlanA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from CarePlan

Summary

Differential View

This structure is derived from CarePlan

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CarePlan 0..*CarePlanHealthcare plan for patient or group
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... status ?!Σ1..1codedraft | 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.

... subject Σ1..1Reference(Patient | Group)Who the care plan is for

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
CarePlan.statusrequiredRequestStatus
CarePlan.intentrequiredCarePlanIntent

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorCarePlanIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorCarePlanIf 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-4errorCarePlanIf 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-5errorCarePlanIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceCarePlanA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CarePlan 0..*CarePlanHealthcare plan for patient or group
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this plan
... instantiatesCanonical Σ0..*canonical(PlanDefinition | Questionnaire | Measure | ActivityDefinition | OperationDefinition)Instantiates FHIR protocol or definition
... instantiatesUri Σ0..*uriInstantiates 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..1codedraft | 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..1codeproposal | plan | order | option
Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.

... category Σ0..*CodeableConceptType 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..1stringHuman-friendly name for the care plan
... description Σ0..1stringSummary of nature of plan
... subject Σ1..1Reference(Patient | Group)Who the care plan is for
... encounter Σ0..1Reference(Encounter)Encounter created as part of
... period Σ0..1PeriodTime period plan covers
... created Σ0..1dateTimeDate record was first recorded
... author Σ0..1Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam)Who is the designated responsible party
... contributor 0..*Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam)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 C0..*BackboneElementAction to occur as part of plan
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... outcomeCodeableConcept 0..*CodeableConceptResults of the activity
Binding: CarePlanActivityOutcome (example): Identifies the results of the activity.


.... outcomeReference 0..*Reference(Resource)Appointment, Encounter, Procedure, etc.
.... progress 0..*AnnotationComments about the activity status/progress
.... reference C0..1Reference(Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | Task | ServiceRequest | VisionPrescription | RequestGroup)Activity details defined in specific resource
.... detail C0..1BackboneElementIn-line definition of activity
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... kind 0..1codeAppointment | 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..*uriInstantiates external protocol or definition
..... code 0..1CodeableConceptDetail 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..*CodeableConceptWhy 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..1codenot-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..1CodeableConceptReason for current status
..... doNotPerform ?!0..1booleanIf true, activity is prohibiting action
..... scheduled[x] 0..1When activity is to occur
...... scheduledTimingTiming
...... scheduledPeriodPeriod
...... scheduledStringstring
..... location 0..1Reference(Location)Where it should happen
..... performer 0..*Reference(Practitioner | PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device)Who will be responsible?
..... product[x] 0..1What is to be administered/supplied
Binding: SNOMEDCTMedicationCodes (example): A product supplied or administered as part of a care plan activity.

...... productCodeableConceptCodeableConcept
...... productReferenceReference(Medication | Substance)
..... dailyAmount 0..1SimpleQuantityHow to consume/day?
..... quantity 0..1SimpleQuantityHow much to administer/supply/consume
..... description 0..1stringExtra info describing activity to perform
... note 0..*AnnotationComments about the plan

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
CarePlan.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
CarePlan.statusrequiredRequestStatus
CarePlan.intentrequiredCarePlanIntent
CarePlan.categoryexampleCarePlanCategory
CarePlan.activity.outcomeCodeableConceptexampleCarePlanActivityOutcome
CarePlan.activity.detail.kindrequiredCarePlanActivityKind
CarePlan.activity.detail.codeexampleProcedureCodes(SNOMEDCT)
CarePlan.activity.detail.reasonCodeexampleSNOMEDCTClinicalFindings
CarePlan.activity.detail.statusrequiredCarePlanActivityStatus
CarePlan.activity.detail.product[x]exampleSNOMEDCTMedicationCodes

Constraints

IdGradePath(s)DetailsRequirements
cpl-3errorCarePlan.activityProvide a reference or detail, not both
: detail.empty() or reference.empty()
dom-2errorCarePlanIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorCarePlanIf 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-4errorCarePlanIf 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-5errorCarePlanIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceCarePlanA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from CarePlan

Summary

 

Other representations of profile: CSV, Excel, Schematron