Soigneur FHIR Implementation Guide
0.1.0 - ci-build Germany flag

Soigneur 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: Training Plan (CarePlan)

Official URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-training-plan Version: 0.1.0
Draft as of 2026-07-19 Computable Name: CcTrainingPlan

Copyright/Legal: Copyright (c) Soigneur. Licensed under CC0-1.0 (public domain dedication). FHIR(R) is the registered trademark of HL7 and is used with permission.

A phase-scoped training plan (04 §15.4a, ADR 0008). intent=plan; category = a cc-plan phase; strategy/scheduling-mode/coach-managed extensions; supportingInfo → the Frame Core version it was built against. Plan chains link via replaces; each ends in a DiagnosticReport.

Usages:

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.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* CarePlan Healthcare plan for patient or group
Constraints: cc-inv-plan-max-18wk, cc-inv-plan-warn-12wk
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:strategy 0..1 code Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-strategy
Binding: Training-intensity-distribution strategy (required)
.... extension:schedulingMode 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-scheduling-mode
Binding: Scheduling mode (required)
.... extension:coachManaged 0..1 boolean Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-coach-managed
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... intent ?!Σ 1..1 code proposal | plan | order | option
Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
Fixed Value: plan
... category Σ 1..* CodeableConcept Type of plan
Binding: Coaching phase (extensible)
... subject Σ 1..1 Reference(Patient | Group) Who the care plan is for

doco 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.category Base extensible Coaching phase 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
cc-inv-plan-max-18wk error CarePlan A training-plan phase must not exceed 18 weeks. period.start.empty() or period.end.empty() or period.end <= (period.start + 126 days)
cc-inv-plan-warn-12wk warning CarePlan A training-plan phase longer than 12 weeks should be reviewed. period.start.empty() or period.end.empty() or period.end <= (period.start + 84 days)
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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* CarePlan Healthcare plan for patient or group
Constraints: cc-inv-plan-max-18wk, cc-inv-plan-warn-12wk
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:strategy 0..1 code Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-strategy
Binding: Training-intensity-distribution strategy (required)
.... extension:schedulingMode 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-scheduling-mode
Binding: Scheduling mode (required)
.... extension:coachManaged 0..1 boolean Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-coach-managed
... intent 1..1 code proposal | plan | order | option
Fixed Value: plan
... category 1..* CodeableConcept Type of plan
Binding: Coaching phase (extensible)

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
CarePlan.category Base extensible Coaching phase 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
cc-inv-plan-max-18wk error CarePlan A training-plan phase must not exceed 18 weeks. period.start.empty() or period.end.empty() or period.end <= (period.start + 126 days)
cc-inv-plan-warn-12wk warning CarePlan A training-plan phase longer than 12 weeks should be reviewed. period.start.empty() or period.end.empty() or period.end <= (period.start + 84 days)
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* CarePlan Healthcare plan for patient or group
Constraints: cc-inv-plan-max-18wk, cc-inv-plan-warn-12wk
... 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 BindingsPurpose
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
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:strategy 0..1 code Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-strategy
Binding: Training-intensity-distribution strategy (required)
.... extension:schedulingMode 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-scheduling-mode
Binding: Scheduling mode (required)
.... extension:coachManaged 0..1 boolean Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-coach-managed
... 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 ?!Σ 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.
Fixed Value: plan
... category Σ 1..* CodeableConcept Type of plan
Binding: Coaching phase (extensible)
... title Σ 0..1 string Human-friendly name for the care plan
... description Σ 0..1 string Summary of nature of plan
... subject Σ 1..1 Reference(Patient | Group) 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(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 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

doco 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 extensible Coaching phase 📦0.1.0 This IG
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
cc-inv-plan-max-18wk error CarePlan A training-plan phase must not exceed 18 weeks. period.start.empty() or period.end.empty() or period.end <= (period.start + 126 days)
cc-inv-plan-warn-12wk warning CarePlan A training-plan phase longer than 12 weeks should be reviewed. period.start.empty() or period.end.empty() or period.end <= (period.start + 84 days)
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()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* CarePlan Healthcare plan for patient or group
Constraints: cc-inv-plan-max-18wk, cc-inv-plan-warn-12wk
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:strategy 0..1 code Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-strategy
Binding: Training-intensity-distribution strategy (required)
.... extension:schedulingMode 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-scheduling-mode
Binding: Scheduling mode (required)
.... extension:coachManaged 0..1 boolean Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-coach-managed
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... intent ?!Σ 1..1 code proposal | plan | order | option
Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
Fixed Value: plan
... category Σ 1..* CodeableConcept Type of plan
Binding: Coaching phase (extensible)
... subject Σ 1..1 Reference(Patient | Group) Who the care plan is for

doco 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.category Base extensible Coaching phase 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
cc-inv-plan-max-18wk error CarePlan A training-plan phase must not exceed 18 weeks. period.start.empty() or period.end.empty() or period.end <= (period.start + 126 days)
cc-inv-plan-warn-12wk warning CarePlan A training-plan phase longer than 12 weeks should be reviewed. period.start.empty() or period.end.empty() or period.end <= (period.start + 84 days)
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()

Differential View

This structure is derived from CarePlan

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* CarePlan Healthcare plan for patient or group
Constraints: cc-inv-plan-max-18wk, cc-inv-plan-warn-12wk
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:strategy 0..1 code Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-strategy
Binding: Training-intensity-distribution strategy (required)
.... extension:schedulingMode 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-scheduling-mode
Binding: Scheduling mode (required)
.... extension:coachManaged 0..1 boolean Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-coach-managed
... intent 1..1 code proposal | plan | order | option
Fixed Value: plan
... category 1..* CodeableConcept Type of plan
Binding: Coaching phase (extensible)

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
CarePlan.category Base extensible Coaching phase 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
cc-inv-plan-max-18wk error CarePlan A training-plan phase must not exceed 18 weeks. period.start.empty() or period.end.empty() or period.end <= (period.start + 126 days)
cc-inv-plan-warn-12wk warning CarePlan A training-plan phase longer than 12 weeks should be reviewed. period.start.empty() or period.end.empty() or period.end <= (period.start + 84 days)

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* CarePlan Healthcare plan for patient or group
Constraints: cc-inv-plan-max-18wk, cc-inv-plan-warn-12wk
... 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 BindingsPurpose
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
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:strategy 0..1 code Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-strategy
Binding: Training-intensity-distribution strategy (required)
.... extension:schedulingMode 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-scheduling-mode
Binding: Scheduling mode (required)
.... extension:coachManaged 0..1 boolean Extension
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-coach-managed
... 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 ?!Σ 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.
Fixed Value: plan
... category Σ 1..* CodeableConcept Type of plan
Binding: Coaching phase (extensible)
... title Σ 0..1 string Human-friendly name for the care plan
... description Σ 0..1 string Summary of nature of plan
... subject Σ 1..1 Reference(Patient | Group) 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(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 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

doco 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 extensible Coaching phase 📦0.1.0 This IG
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
cc-inv-plan-max-18wk error CarePlan A training-plan phase must not exceed 18 weeks. period.start.empty() or period.end.empty() or period.end <= (period.start + 126 days)
cc-inv-plan-warn-12wk warning CarePlan A training-plan phase longer than 12 weeks should be reviewed. period.start.empty() or period.end.empty() or period.end <= (period.start + 84 days)
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()

 

Other representations of profile: CSV, Excel, Schematron