HL7 Belgium Patient Care
1.0.0 - R4 Belgium flag

This page is part of the eHealth FHIR Patient Care Profiles for Belgium (v1.0.0: Release) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: BeCarePlan - Detailed Descriptions

Active as of 2021-01-18

Definitions for the be-care-plan resource profile.

Guidance on how to interpret the contents of this table can be found here

0. CarePlan
Definition

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.

ShortHealthcare plan for patient or group
Control0..*
Is Modifierfalse
Summaryfalse
Alternate NamesCare Team
Invariantsdom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty())
dom-3: 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: 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: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty())
dom-6: A resource should have narrative for robust management (text.`div`.exists())
2. CarePlan.implicitRules
Definition

A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

ShortA set of rules under which this content was created
Comments

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

Control0..1
Typeuri
Is Modifiertrue because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
4. CarePlan.modifierExtension
Definition

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

ShortExtensions that cannot be ignored
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control0..*
TypeExtension
Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
Summaryfalse
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Alternate Namesextensions, user content
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
6. CarePlan.identifier
Definition

Business identifiers assigned to this care plan by the performer or other systems which remain constant as the resource is updated and propagates from server to server.

ShortExternal Ids for this plan
Comments

This is a business identifier, not a resource identifier (see discussion). It is best practice for the identifier to only appear on a single resource instance, however business practices may occasionally dictate that multiple resource instances with the same identifier can exist - possibly even with different resource types. For example, multiple Patient and a Person resource instance might share the same social insurance number.

NoteThis is a business identifier, not a resource identifier (see discussion)
Control0..*
TypeIdentifier
Is Modifierfalse
Must Supporttrue
Summarytrue
Requirements

Allows identification of the care plan as it is known by various participating systems and in a way that remains consistent across servers.

Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
SlicingThis element introduces a set of slices on CarePlan.identifier. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ system
  • 8. CarePlan.instantiatesCanonical
    Definition

    The URL pointing to a FHIR-defined protocol, guideline, questionnaire or other definition that is adhered to in whole or in part by this CarePlan.

    ShortProtocol or definition that is instantiated by this care planInstantiates FHIR protocol or definition
    Comments

    This will be used when we have the "Care Plan Templates" - for example from weight loss to quit smoking, or hip replacement surgery physiotherapy for recovery

    Control0..*
    Typecanonical(PlanDefinition, Questionnaire, Measure, ActivityDefinition, OperationDefinition)
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Must Support TypesNo must-support rules about the choice of types/profiles
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    10. CarePlan.instantiatesUri
    Definition

    The URL pointing to an externally maintained protocol, guideline, questionnaire or other definition that is adhered to in whole or in part by this CarePlan.

    ShortThe protocol or definition that is instantiated by this care planInstantiates external protocol or definition
    Comments

    This is used for supporting external references to the care plan or protocol e.g. government guidelines


    This might be an HTML page, PDF, etc. or could just be a non-resolvable URI identifier.

    Control0..*
    Typeuri
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    12. CarePlan.basedOn
    Definition

    A care plan that is fulfilled in whole or in part by this care plan.

    ShortFulfills CarePlan
    Control0..*
    TypeReference(BECarePlan, CarePlan)
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Requirements

    Allows tracing of the care plan and tracking whether proposals/recommendations were acted upon.

    Alternate Namesfulfills
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    14. CarePlan.partOf
    Definition

    A larger care plan of which this particular care plan is a component or step.

    ShortPart of referenced CarePlan
    Comments

    Each care plan is an independent request, such that having a care plan be part of another care plan can cause issues with cascading statuses. As such, this element is still being discussed.

    Control0..*
    TypeReference(BECarePlan, CarePlan)
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    16. CarePlan.status
    Definition

    Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record.

    Shortdraft | active | on-hold | revoked | completed | entered-in-error | unknown
    Comments

    The unknown code is not to be used to convey other statuses. The unknown code should be used when one of the statuses applies, but the authoring system doesn't know the current state of the care plan.

    This element is labeled as a modifier because the status contains the code entered-in-error that marks the plan as not currently valid.

    Control1..1
    BindingThe codes SHALL be taken from RequestStatushttp://hl7.org/fhir/ValueSet/request-status|4.0.1
    (required to http://hl7.org/fhir/ValueSet/request-status|4.0.1)

    Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record.

    Typecode
    Is Modifiertrue because This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    Allows clinicians to determine whether the plan is actionable or not.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    18. CarePlan.intent
    Definition

    Indicates the level of authority/intentionality associated with the care plan and where the care plan fits into the workflow chain.

    Shortproposal | plan | order | option
    Comments

    This element is labeled as a modifier because the intent alters when and how the resource is actually applicable.

    Control1..1
    BindingThe codes SHALL be taken from CarePlanIntenthttp://hl7.org/fhir/ValueSet/care-plan-intent|4.0.1
    (required to http://hl7.org/fhir/ValueSet/care-plan-intent|4.0.1)

    Codes indicating the degree of authority/intentionality associated with a care plan.

    Typecode
    Is Modifiertrue because This element changes the interpretation of all descriptive attributes. For example "the time the request is recommended to occur" vs. "the time the request is authorized to occur" or "who is recommended to perform the request" vs. "who is authorized to perform the request"
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    Proposals/recommendations, plans and orders all use the same structure and can exist in the same fulfillment chain.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    20. CarePlan.category
    Definition

    Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", "wellness plan", etc.

    ShortType of plan
    Comments

    Category can be used for filtering plan(s) on the type of care. This profile contains no specific ValueSets to indicate which categories can be used in a BeCarePlan.


    There may be multiple axes of categorization and one plan may serve multiple purposes. In some cases, this may be redundant with references to CarePlan.concern.

    Control0..*
    BindingFor example codes, see CarePlanCategoryhttp://hl7.org/fhir/ValueSet/care-plan-category
    (example to http://hl7.org/fhir/ValueSet/care-plan-category)

    Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.

    TypeCodeableConcept
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Requirements

    Used for filtering what plan(s) are retrieved and displayed to different types of users.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    22. CarePlan.title
    Definition

    Human-friendly name for the care plan.

    ShortHuman-friendly name for the care plan
    Control0..1
    Typestring
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    24. CarePlan.description
    Definition

    A description of the scope and nature of the plan.

    ShortSummary of nature of plan
    Control0..1
    Typestring
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    Provides more detail than conveyed by category.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    26. CarePlan.subject
    Definition

    Identifies the patient or group whose intended care is described by the plan.

    ShortWho the care plan is for
    Control1..1
    TypeReference(BePatient, Group, Patient)
    Is Modifierfalse
    Must Supporttrue
    Must Support TypesNo must-support rules about the choice of types/profiles
    Summarytrue
    Alternate Namespatient
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    28. CarePlan.encounter
    Definition

    The Encounter during which this CarePlan was created or to which the creation of this record is tightly associated.

    ShortEncounter created as part of
    Comments

    This will typically be the encounter the event occurred within, but some activities may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter. CarePlan activities conducted as a result of the care plan may well occur as part of other encounters.

    Control0..1
    TypeReference(Encounter)
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    30. CarePlan.period
    Definition

    Indicates when the plan did (or is intended to) come into effect and end.

    ShortTime period plan covers
    Comments

    Any activities scheduled as part of the plan should be constrained to the specified period regardless of whether the activities are planned within a single encounter/episode or across multiple encounters/episodes (e.g. the longitudinal management of a chronic condition).

    Control0..1
    TypePeriod
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Requirements

    Allows tracking what plan(s) are in effect at a particular time.

    Alternate Namestiming
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    32. CarePlan.author
    Definition

    When populated, the author is responsible for the care plan. The care plan is attributed to the author.

    ShortWho is the designated responsible party
    Comments

    The author may also be a contributor. For example, an organization can be an author, but not listed as a contributor.

    Control0..1
    TypeReference(BePatient, BePractitioner, BePractitionerRole, BeOrganization, BeCareTeam, Device, RelatedPerson, Patient, Practitioner, PractitionerRole, Organization, CareTeam)
    Is Modifierfalse
    Must Supporttrue
    Must Support TypesNo must-support rules about the choice of types/profiles
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    34. CarePlan.contributor
    Definition

    Identifies the individual(s) or organization who provided the contents of the care plan.

    ShortWho provided the content of the care plan
    Comments

    Collaborative care plans may have multiple contributors.

    Control0..*
    TypeReference(BePatient, BePractitioner, BePractitionerRole, BeOrganization, BeCareTeam, Device, RelatedPerson, Patient, Practitioner, PractitionerRole, Organization, CareTeam)
    Is Modifierfalse
    Must Supporttrue
    Must Support TypesNo must-support rules about the choice of types/profiles
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    36. CarePlan.careTeam
    Definition

    Identifies all people and organizations who are expected to be involved in the care envisioned by this plan.

    ShortWho's involved in plan?
    Control0..*
    TypeReference(BeCareTeam, CareTeam)
    Is Modifierfalse
    Must Supporttrue
    Summaryfalse
    Requirements

    Allows representation of care teams, helps scope care plan. In some cases may be a determiner of access permissions.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    38. CarePlan.goal
    Definition

    Describes the intended objective(s) of carrying out the care plan.

    ShortDesired outcome of plan
    Comments

    Goal can be achieving a particular change or merely maintaining a current state or even slowing a decline.

    Control0..*
    TypeReference(BeGoal, Goal)
    Is Modifierfalse
    Must Supporttrue
    Summaryfalse
    Requirements

    Provides context for plan. Allows plan effectiveness to be evaluated by clinicians.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))