Open Health Hub FHIR Implementation Guide
0.1.0 - v0.1.0

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

Resource Profile: OHH Retrieve CarePlan

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

A profile on the CarePlan resource describing the information returned by the GET operation.

Scope and Usage

A CarePlan contains the task for the patient and/or caregivers for a specific PlanDefinition. The tasks will reference the Open Health Hub Form Filler to easily fill out forms.

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.

This structure is derived from OhhBaseCarePlan

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* OhhBaseCarePlan Healthcare plan for patient or group
Constraints: care-providers-requirement, caregivers-requirement
... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
.... extension:programLink S 0..1 string Program Link
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-link
.... extension:programPin S 0..1 string Program PIN
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-pin
.... extension:customInviteImage S 0..1 Attachment Custom Invite Image
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-image
.... extension:customInviteText S 0..1 string Custom Invite Text
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-text
.... extension:formFillerProgramTimeline S 0..1 string Form Filler Program Timeline
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-timeline
... status S 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
... subject
.... reference S 0..1 string Literal reference, Relative, internal or absolute URL
.... end S 0..1 dateTime End time with inclusive boundary, if not ongoing
... careTeam 1..2 Reference(CareTeam) Who's involved in plan?
... activity S 0..* BackboneElement Action to occur as part of plan
.... outcomeReference S 0..1 Reference(Resource) Appointment, Encounter, Procedure, etc.
.... detail SC 1..1 BackboneElement In-line definition of activity
Constraints: valid-activity-detail-code
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
...... extension:formFillerProgramTask S 0..1 string Form Filler Program Task URL
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-task
...... extension:taskUuid S 0..1 string Task UUID
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/task-uuid
...... extension:relatedQuestionnaire S 0..1 Reference(Ohh Questionnaire Profile) Related Questionnaire
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/related-questionnaire
..... instantiatesCanonical S 0..1 canonical(PlanDefinition | ActivityDefinition | Questionnaire | Measure | OperationDefinition) Instantiates FHIR protocol or definition
..... code 1..1 CodeableConcept Detail type of activity
..... status S 1..1 code not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown | entered-in-error
..... Slices for scheduled[x] 0..1 Timing, Period, string When activity is to occur
Slice: Unordered, Open by type:$this
...... scheduled[x]:scheduledPeriod 0..1 Period When activity is to occur
....... start S 1..1 dateTime Starting time with inclusive boundary
....... end S 1..1 dateTime End time with inclusive boundary, if not ongoing
..... performer S 0..* Reference(Practitioner | PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device) Who will be responsible?
..... description S 0..1 string Extra info describing activity to perform

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
care-providers-requirement error CarePlan Exactly 1 care providers CareTeam careTeam.where(reference.exists() and reference.matches('^CareTeam/[0-9]+$')).count() = 1
caregivers-requirement error CarePlan At most 1 caregivers CareTeam careTeam.where(reference.exists() and reference.matches('CareTeam/[0-9]+-caregivers$')).count() <= 1
valid-activity-detail-code error CarePlan.activity.detail Activity detail code must be from questionnaire-types or action-type code systems code.coding.where(system.endsWith('/questionnaire-types') or system.endsWith('/action-type')).exists()
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* OhhBaseCarePlan Healthcare plan for patient or group
Constraints: care-providers-requirement, caregivers-requirement
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
.... extension:programLink S 0..1 string Program Link
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-link
.... extension:programPin S 0..1 string Program PIN
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-pin
.... extension:customInviteImage S 0..1 Attachment Custom Invite Image
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-image
.... extension:customInviteText S 0..1 string Custom Invite Text
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-text
.... extension:formFillerProgramTimeline S 0..1 string Form Filler Program Timeline
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-timeline
... 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 ?!Σ 1..1 code proposal | plan | order | option
Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
... subject SΣ 1..1 Reference(Patient | Group) Who the care plan is for
.... reference SΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Required Pattern: ohh-patient
... period SΣ 1..1 Period Time period plan covers
.... start SΣC 1..1 dateTime Starting time with inclusive boundary
.... end SΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... author SΣC 0..1 Reference(Practitioner) Who is the designated responsible party
Constraints: author-name-requirement
... careTeam S 1..2 Reference(CareTeam) Who's involved in plan?
... activity SC 0..* BackboneElement Action to occur as part of plan
Constraints: cpl-3
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... outcomeReference S 0..1 Reference(Resource) Appointment, Encounter, Procedure, etc.
.... detail SC 1..1 BackboneElement In-line definition of activity
Constraints: valid-activity-detail-code
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
...... extension:formFillerProgramTask S 0..1 string Form Filler Program Task URL
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-task
...... extension:taskUuid S 0..1 string Task UUID
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/task-uuid
...... extension:relatedQuestionnaire S 0..1 Reference(Ohh Questionnaire Profile) Related Questionnaire
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/related-questionnaire
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... instantiatesCanonical S 0..1 canonical(PlanDefinition | ActivityDefinition | Questionnaire | Measure | OperationDefinition) Instantiates FHIR protocol or definition
..... code 1..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.
..... status ?!S 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.
..... doNotPerform ?! 0..1 boolean If true, activity is prohibiting action
..... Slices for scheduled[x] 0..1 When activity is to occur
Slice: Unordered, Open by type:$this
...... scheduledTiming Timing
...... scheduledPeriod Period
...... scheduledString string
...... scheduled[x]:scheduledPeriod 0..1 Period When activity is to occur
....... start SΣC 1..1 dateTime Starting time with inclusive boundary
....... end SΣC 1..1 dateTime End time with inclusive boundary, if not ongoing
..... performer S 0..* Reference(Practitioner | PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device) Who will be responsible?
..... description S 0..1 string Extra info describing activity to perform

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.subject.type Base extensible ResourceType 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​code Base example Procedure Codes (SNOMED CT) 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​status Base required CarePlanActivityStatus 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
author-name-requirement error CarePlan.author Author name must be present resolve().name.text.exists()
care-providers-requirement error CarePlan Exactly 1 care providers CareTeam careTeam.where(reference.exists() and reference.matches('^CareTeam/[0-9]+$')).count() = 1
caregivers-requirement error CarePlan At most 1 caregivers CareTeam careTeam.where(reference.exists() and reference.matches('CareTeam/[0-9]+-caregivers$')).count() <= 1
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()
valid-activity-detail-code error CarePlan.activity.detail Activity detail code must be from questionnaire-types or action-type code systems code.coding.where(system.endsWith('/questionnaire-types') or system.endsWith('/action-type')).exists()
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* OhhBaseCarePlan Healthcare plan for patient or group
Constraints: care-providers-requirement, caregivers-requirement
... 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, Closed by value:url
.... extension:programLink S 0..1 string Program Link
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-link
.... extension:programPin S 0..1 string Program PIN
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-pin
.... extension:customInviteImage S 0..1 Attachment Custom Invite Image
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-image
.... extension:customInviteText S 0..1 string Custom Invite Text
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-text
.... extension:formFillerProgramTimeline S 0..1 string Form Filler Program Timeline
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-timeline
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this plan
... instantiatesCanonical SΣ 1..1 canonical(OHH Plan Definition Profile) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn Σ 0..* Reference(CarePlan) Fulfills CarePlan
... replaces Σ 0..* Reference(CarePlan) CarePlan replaced by this CarePlan
... partOf Σ 0..* Reference(CarePlan) Part of referenced CarePlan
... status ?!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 ?!Σ 1..1 code proposal | plan | order | option
Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
... category Σ 0..* CodeableConcept Type of plan
Binding: CarePlanCategory (example): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
... title Σ 0..1 string Human-friendly name for the care plan
... description Σ 0..1 string Summary of nature of plan
... subject SΣ 1..1 Reference(Patient | Group) Who the care plan is for
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Required Pattern: ohh-patient
.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... encounter Σ 0..1 Reference(Encounter) Encounter created as part of
... period SΣ 1..1 Period Time period plan covers
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... start SΣC 1..1 dateTime Starting time with inclusive boundary
.... end SΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... created Σ 0..1 dateTime Date record was first recorded
... author SΣC 0..1 Reference(Practitioner) Who is the designated responsible party
Constraints: author-name-requirement
... contributor 0..* Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam) Who provided the content of the care plan
... careTeam S 1..2 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 SC 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 S 0..1 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 SC 1..1 BackboneElement In-line definition of activity
Constraints: valid-activity-detail-code
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
...... extension:formFillerProgramTask S 0..1 string Form Filler Program Task URL
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-task
...... extension:taskUuid S 0..1 string Task UUID
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/task-uuid
...... extension:relatedQuestionnaire S 0..1 Reference(Ohh Questionnaire Profile) Related Questionnaire
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/related-questionnaire
..... 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 S 0..1 canonical(PlanDefinition | ActivityDefinition | Questionnaire | Measure | OperationDefinition) Instantiates FHIR protocol or definition
..... instantiatesUri 0..* uri Instantiates external protocol or definition
..... code 1..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 ?!S 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
..... Slices for scheduled[x] 0..1 When activity is to occur
Slice: Unordered, Open by type:$this
...... scheduledTiming Timing
...... scheduledPeriod Period
...... scheduledString string
...... scheduled[x]:scheduledPeriod 0..1 Period When activity is to occur
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... start SΣC 1..1 dateTime Starting time with inclusive boundary
....... end SΣC 1..1 dateTime End time with inclusive boundary, if not ongoing
..... location 0..1 Reference(Location) Where it should happen
..... performer S 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 S 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 example Care Plan Category 📍4.0.1 FHIR Std.
CarePlan.subject.type Base extensible ResourceType 📍4.0.1 FHIR Std.
CarePlan.activity.outcomeCodeableConcept Base example Care Plan Activity Outcome 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​kind Base required Care Plan Activity Kind 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​code Base example Procedure Codes (SNOMED CT) 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​reasonCode Base example SNOMED CT Clinical Findings 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​status Base required CarePlanActivityStatus 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​product[x] Base example SNOMED CT Medication Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
author-name-requirement error CarePlan.author Author name must be present resolve().name.text.exists()
care-providers-requirement error CarePlan Exactly 1 care providers CareTeam careTeam.where(reference.exists() and reference.matches('^CareTeam/[0-9]+$')).count() = 1
caregivers-requirement error CarePlan At most 1 caregivers CareTeam careTeam.where(reference.exists() and reference.matches('CareTeam/[0-9]+-caregivers$')).count() <= 1
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()
valid-activity-detail-code error CarePlan.activity.detail Activity detail code must be from questionnaire-types or action-type code systems code.coding.where(system.endsWith('/questionnaire-types') or system.endsWith('/action-type')).exists()

Differential View

This structure is derived from OhhBaseCarePlan

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* OhhBaseCarePlan Healthcare plan for patient or group
Constraints: care-providers-requirement, caregivers-requirement
... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
.... extension:programLink S 0..1 string Program Link
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-link
.... extension:programPin S 0..1 string Program PIN
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-pin
.... extension:customInviteImage S 0..1 Attachment Custom Invite Image
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-image
.... extension:customInviteText S 0..1 string Custom Invite Text
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-text
.... extension:formFillerProgramTimeline S 0..1 string Form Filler Program Timeline
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-timeline
... status S 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
... subject
.... reference S 0..1 string Literal reference, Relative, internal or absolute URL
.... end S 0..1 dateTime End time with inclusive boundary, if not ongoing
... careTeam 1..2 Reference(CareTeam) Who's involved in plan?
... activity S 0..* BackboneElement Action to occur as part of plan
.... outcomeReference S 0..1 Reference(Resource) Appointment, Encounter, Procedure, etc.
.... detail SC 1..1 BackboneElement In-line definition of activity
Constraints: valid-activity-detail-code
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
...... extension:formFillerProgramTask S 0..1 string Form Filler Program Task URL
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-task
...... extension:taskUuid S 0..1 string Task UUID
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/task-uuid
...... extension:relatedQuestionnaire S 0..1 Reference(Ohh Questionnaire Profile) Related Questionnaire
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/related-questionnaire
..... instantiatesCanonical S 0..1 canonical(PlanDefinition | ActivityDefinition | Questionnaire | Measure | OperationDefinition) Instantiates FHIR protocol or definition
..... code 1..1 CodeableConcept Detail type of activity
..... status S 1..1 code not-started | scheduled | in-progress | on-hold | completed | cancelled | stopped | unknown | entered-in-error
..... Slices for scheduled[x] 0..1 Timing, Period, string When activity is to occur
Slice: Unordered, Open by type:$this
...... scheduled[x]:scheduledPeriod 0..1 Period When activity is to occur
....... start S 1..1 dateTime Starting time with inclusive boundary
....... end S 1..1 dateTime End time with inclusive boundary, if not ongoing
..... performer S 0..* Reference(Practitioner | PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device) Who will be responsible?
..... description S 0..1 string Extra info describing activity to perform

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
care-providers-requirement error CarePlan Exactly 1 care providers CareTeam careTeam.where(reference.exists() and reference.matches('^CareTeam/[0-9]+$')).count() = 1
caregivers-requirement error CarePlan At most 1 caregivers CareTeam careTeam.where(reference.exists() and reference.matches('CareTeam/[0-9]+-caregivers$')).count() <= 1
valid-activity-detail-code error CarePlan.activity.detail Activity detail code must be from questionnaire-types or action-type code systems code.coding.where(system.endsWith('/questionnaire-types') or system.endsWith('/action-type')).exists()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* OhhBaseCarePlan Healthcare plan for patient or group
Constraints: care-providers-requirement, caregivers-requirement
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
.... extension:programLink S 0..1 string Program Link
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-link
.... extension:programPin S 0..1 string Program PIN
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-pin
.... extension:customInviteImage S 0..1 Attachment Custom Invite Image
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-image
.... extension:customInviteText S 0..1 string Custom Invite Text
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-text
.... extension:formFillerProgramTimeline S 0..1 string Form Filler Program Timeline
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-timeline
... 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 ?!Σ 1..1 code proposal | plan | order | option
Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
... subject SΣ 1..1 Reference(Patient | Group) Who the care plan is for
.... reference SΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Required Pattern: ohh-patient
... period SΣ 1..1 Period Time period plan covers
.... start SΣC 1..1 dateTime Starting time with inclusive boundary
.... end SΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... author SΣC 0..1 Reference(Practitioner) Who is the designated responsible party
Constraints: author-name-requirement
... careTeam S 1..2 Reference(CareTeam) Who's involved in plan?
... activity SC 0..* BackboneElement Action to occur as part of plan
Constraints: cpl-3
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... outcomeReference S 0..1 Reference(Resource) Appointment, Encounter, Procedure, etc.
.... detail SC 1..1 BackboneElement In-line definition of activity
Constraints: valid-activity-detail-code
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
...... extension:formFillerProgramTask S 0..1 string Form Filler Program Task URL
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-task
...... extension:taskUuid S 0..1 string Task UUID
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/task-uuid
...... extension:relatedQuestionnaire S 0..1 Reference(Ohh Questionnaire Profile) Related Questionnaire
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/related-questionnaire
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... instantiatesCanonical S 0..1 canonical(PlanDefinition | ActivityDefinition | Questionnaire | Measure | OperationDefinition) Instantiates FHIR protocol or definition
..... code 1..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.
..... status ?!S 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.
..... doNotPerform ?! 0..1 boolean If true, activity is prohibiting action
..... Slices for scheduled[x] 0..1 When activity is to occur
Slice: Unordered, Open by type:$this
...... scheduledTiming Timing
...... scheduledPeriod Period
...... scheduledString string
...... scheduled[x]:scheduledPeriod 0..1 Period When activity is to occur
....... start SΣC 1..1 dateTime Starting time with inclusive boundary
....... end SΣC 1..1 dateTime End time with inclusive boundary, if not ongoing
..... performer S 0..* Reference(Practitioner | PractitionerRole | Organization | RelatedPerson | Patient | CareTeam | HealthcareService | Device) Who will be responsible?
..... description S 0..1 string Extra info describing activity to perform

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.subject.type Base extensible ResourceType 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​code Base example Procedure Codes (SNOMED CT) 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​status Base required CarePlanActivityStatus 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
author-name-requirement error CarePlan.author Author name must be present resolve().name.text.exists()
care-providers-requirement error CarePlan Exactly 1 care providers CareTeam careTeam.where(reference.exists() and reference.matches('^CareTeam/[0-9]+$')).count() = 1
caregivers-requirement error CarePlan At most 1 caregivers CareTeam careTeam.where(reference.exists() and reference.matches('CareTeam/[0-9]+-caregivers$')).count() <= 1
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()
valid-activity-detail-code error CarePlan.activity.detail Activity detail code must be from questionnaire-types or action-type code systems code.coding.where(system.endsWith('/questionnaire-types') or system.endsWith('/action-type')).exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. CarePlan C 0..* OhhBaseCarePlan Healthcare plan for patient or group
Constraints: care-providers-requirement, caregivers-requirement
... 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, Closed by value:url
.... extension:programLink S 0..1 string Program Link
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-link
.... extension:programPin S 0..1 string Program PIN
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/program-pin
.... extension:customInviteImage S 0..1 Attachment Custom Invite Image
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-image
.... extension:customInviteText S 0..1 string Custom Invite Text
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/custom-invite-text
.... extension:formFillerProgramTimeline S 0..1 string Form Filler Program Timeline
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-timeline
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this plan
... instantiatesCanonical SΣ 1..1 canonical(OHH Plan Definition Profile) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn Σ 0..* Reference(CarePlan) Fulfills CarePlan
... replaces Σ 0..* Reference(CarePlan) CarePlan replaced by this CarePlan
... partOf Σ 0..* Reference(CarePlan) Part of referenced CarePlan
... status ?!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 ?!Σ 1..1 code proposal | plan | order | option
Binding: CarePlanIntent (required): Codes indicating the degree of authority/intentionality associated with a care plan.
... category Σ 0..* CodeableConcept Type of plan
Binding: CarePlanCategory (example): Identifies what "kind" of plan this is to support differentiation between multiple co-existing plans; e.g. "Home health", "psychiatric", "asthma", "disease management", etc.
... title Σ 0..1 string Human-friendly name for the care plan
... description Σ 0..1 string Summary of nature of plan
... subject SΣ 1..1 Reference(Patient | Group) Who the care plan is for
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Required Pattern: ohh-patient
.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... encounter Σ 0..1 Reference(Encounter) Encounter created as part of
... period SΣ 1..1 Period Time period plan covers
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... start SΣC 1..1 dateTime Starting time with inclusive boundary
.... end SΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... created Σ 0..1 dateTime Date record was first recorded
... author SΣC 0..1 Reference(Practitioner) Who is the designated responsible party
Constraints: author-name-requirement
... contributor 0..* Reference(Patient | Practitioner | PractitionerRole | Device | RelatedPerson | Organization | CareTeam) Who provided the content of the care plan
... careTeam S 1..2 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 SC 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 S 0..1 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 SC 1..1 BackboneElement In-line definition of activity
Constraints: valid-activity-detail-code
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Closed by value:url
...... extension:formFillerProgramTask S 0..1 string Form Filler Program Task URL
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/form-filler-program-task
...... extension:taskUuid S 0..1 string Task UUID
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/task-uuid
...... extension:relatedQuestionnaire S 0..1 Reference(Ohh Questionnaire Profile) Related Questionnaire
URL: https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/related-questionnaire
..... 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 S 0..1 canonical(PlanDefinition | ActivityDefinition | Questionnaire | Measure | OperationDefinition) Instantiates FHIR protocol or definition
..... instantiatesUri 0..* uri Instantiates external protocol or definition
..... code 1..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 ?!S 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
..... Slices for scheduled[x] 0..1 When activity is to occur
Slice: Unordered, Open by type:$this
...... scheduledTiming Timing
...... scheduledPeriod Period
...... scheduledString string
...... scheduled[x]:scheduledPeriod 0..1 Period When activity is to occur
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... start SΣC 1..1 dateTime Starting time with inclusive boundary
....... end SΣC 1..1 dateTime End time with inclusive boundary, if not ongoing
..... location 0..1 Reference(Location) Where it should happen
..... performer S 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 S 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 example Care Plan Category 📍4.0.1 FHIR Std.
CarePlan.subject.type Base extensible ResourceType 📍4.0.1 FHIR Std.
CarePlan.activity.outcomeCodeableConcept Base example Care Plan Activity Outcome 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​kind Base required Care Plan Activity Kind 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​code Base example Procedure Codes (SNOMED CT) 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​reasonCode Base example SNOMED CT Clinical Findings 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​status Base required CarePlanActivityStatus 📍4.0.1 FHIR Std.
CarePlan.activity.detail.​product[x] Base example SNOMED CT Medication Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
author-name-requirement error CarePlan.author Author name must be present resolve().name.text.exists()
care-providers-requirement error CarePlan Exactly 1 care providers CareTeam careTeam.where(reference.exists() and reference.matches('^CareTeam/[0-9]+$')).count() = 1
caregivers-requirement error CarePlan At most 1 caregivers CareTeam careTeam.where(reference.exists() and reference.matches('CareTeam/[0-9]+-caregivers$')).count() <= 1
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()
valid-activity-detail-code error CarePlan.activity.detail Activity detail code must be from questionnaire-types or action-type code systems code.coding.where(system.endsWith('/questionnaire-types') or system.endsWith('/action-type')).exists()

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Retrieving a CarePlan

A CarePlan can be retrieved by its ID using a GET request. Alongside standard FHIR fields, the CarePlan will contain the following customised fields:

  • An extension containing the URL the patient needs to open the program (program-link)
  • An extension containing the PIN which the patient needs to register the program (program-pin)
  • Two extensions that contain the Customized Invite Mail text and image when set in the Improve Designer (custom-invite-image and custom-invite-text)
  • An extension with a link to the embedded form filler program timeline. This will only be present when the patient is already registered to the program (form-filler-program-timeline).
  • Two careTeam references. Both CareTeams contain a list of Practitioner references:
    • In the CareTeam with the same id as the CarePlan, Practitioners have a public key that should be used for encrypting the QuestionnaireResponses that fulfill activities in this CarePlan.
    • The CareTeam where the id has a -caregivers suffix lists the Practitioners that have activities in this CarePlan. They are referenced by their role.
  • An activity list. Every activity represents either a questionnaire for the patient or a caregiver of the patient, or a communication request to remind the patient to fill in the questionnaire (push notification or a call from the responsible health care professional). Questionnaires are calculated dynamically based on input from previous questionnaires, so the list is not final and can grow over time. The questionnaire activities contain two extensions to open the specific questionnaire directly in the embedded form filler (form-filler-program-task, task-uuid).

Using with the Embedded Form Filler

Besides using the embedded form filler links in the extensions, you can also build the links to the embedded form filler yourself:

URL format: https://formfiller.openhealthhub.com/user/<user-uuid>/program/<program-uuid>-<invite-id>/module/<task-uuid>?signature=<signature>&key=<key>

Values are retrieved from the following CarePlan fields:

  • user-uuid (Patient): contained subject.identifier with system urn:ietf:rfc:3986, without the urn:uuid: prefix
  • user-uuid (Practitioner): activity.detail.performer.reference (the id of the referenced Practitioner)
  • program-uuid: instantiatesCanonical (only the UUID part after PlanDefinition)
  • invite-id: id
  • task-uuid: activity.detail.extension (value of task_uuid extension) — optional when you want to open a specific questionnaire directly
  • signature: contained subject.extension with url https://api.openhealthhub.com/OpenHealthhub/fhir/4/StructureDefinition/patient-signature
  • key: must be appended by integrator; obtained from the Open Health Hub administration page and identifies your organisation
When using the embedded form filler links you will need to append the `key` query parameter yourself. This key can be obtained from our administration page by your organisation admin. The key identifies your organisation and determines the method of authentication for the patient.