Canadian Baseline
1.1.0 - CI Build Canada flag

Canadian Baseline, published by HL7 Canada - FHIR Implementation Work Group. This guide is not an authorized publication; it is the continuous build for version 1.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7-Canada/ca-baseline/ and changes regularly. See the Directory of published versions

Resource Profile: Goal Profile

Official URL: http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-goal Version: 1.1.0
Draft as of 2019-12-06 Computable Name: GoalProfile

Proposed constraints and extensions on the Goal Resource to support collection of diagnostic report information. Generated as a first step toward creating a set of Canadian Baseline FHIR profiles.

Usage:

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

Formal Views of Profile Content

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

This structure is derived from Goal

NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal 0..* Goal Goal Profile
... lifecycleStatus S 1..1 code proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required)
... description S 1..1 CodeableConcept Code or text describing goal
... subject S 1..1 Reference(Patient Profile) Who this goal is intended for
.... Slices for due[x] Content/Rules for all slices
..... due[x]:dueDate S 0..1 date Reach goal on or before

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Goal.lifecycleStatusrequiredGoalLifecycleStatus
http://hl7.org/fhir/ValueSet/goal-status
from the FHIR Standard
NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal 0..* Goal Goal Profile
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... lifecycleStatus ?!SΣ 1..1 code proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required)
... subject SΣ 1..1 Reference(Patient Profile) Who this goal is intended for
... target SC 0..* BackboneElement Target outcome for the goal
gol-1: Goal.target.measure is required if Goal.target.detail is populated
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... Slices for due[x] Content/Rules for all slices
..... due[x]:dueDate SΣ 0..1 date Reach goal on or before

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Goal.lifecycleStatusrequiredGoalLifecycleStatus
http://hl7.org/fhir/ValueSet/goal-status
from the FHIR Standard
Goal.descriptionexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorGoalIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorGoalIf 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-4errorGoalIf 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-5errorGoalIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceGoalA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
gol-1errorGoal.targetGoal.target.measure is required if Goal.target.detail is populated
: (detail.exists() and measure.exists()) or detail.exists().not()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal 0..* Goal Goal Profile
... 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
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 0..* Identifier External Ids for this goal
... lifecycleStatus ?!SΣ 1..1 code proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required)
... achievementStatus Σ 0..1 CodeableConcept in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
Binding: GoalAchievementStatus (preferred): Indicates the progression, or lack thereof, towards the goal against the target.

... category Σ 0..* CodeableConcept E.g. Treatment, dietary, behavioral, etc.
Binding: GoalCategory (example): Codes for grouping and sorting goals.


... priority Σ 0..1 CodeableConcept high-priority | medium-priority | low-priority
Binding: GoalPriority (preferred): The level of importance associated with a goal.

... description SΣ 1..1 CodeableConcept Code or text describing goal
Binding: SNOMEDCTClinicalFindings (example): Codes providing the details of a particular goal. This will generally be system or implementation guide-specific. In many systems, only the text element will be used.

... subject SΣ 1..1 Reference(Patient Profile) Who this goal is intended for
... start[x] Σ 0..1 When goal pursuit begins
Binding: GoalStartEvent (example): Codes describing events that can trigger the initiation of a goal.

.... startDate date
.... startCodeableConcept CodeableConcept
... target SC 0..* BackboneElement Target outcome for the goal
gol-1: Goal.target.measure is required if Goal.target.detail is populated
.... 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
.... measure ΣC 0..1 CodeableConcept The parameter whose value is being tracked
Binding: LOINCCodes (example): Codes to identify the value being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level.

.... detail[x] ΣC 0..1 The target value to be achieved
Binding Description (No ValueSet): (example): Codes to identify the target value of the focus to be achieved to signify the fulfillment of the goal.

..... detailQuantity Quantity
..... detailRange Range
..... detailCodeableConcept CodeableConcept
..... detailString string
..... detailBoolean boolean
..... detailInteger integer
..... detailRatio Ratio
.... Slices for due[x] Content/Rules for all slices
..... due[x]:dueDate SΣ 0..1 date Reach goal on or before
... statusDate Σ 0..1 date When goal status took effect
... statusReason 0..1 string Reason for current status
... expressedBy Σ 0..1 Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) Who's responsible for creating Goal?
... addresses 0..* Reference(Condition | Observation | MedicationStatement | NutritionOrder | ServiceRequest | RiskAssessment) Issues addressed by this goal
... note 0..* Annotation Comments about the goal
... outcomeCode 0..* CodeableConcept What result was achieved regarding the goal?
Binding: SNOMEDCTClinicalFindings (example): The result of the goal; e.g. "25% increase in shoulder mobility", "Anxiety reduced to moderate levels". "15 kg weight loss sustained over 6 months".


... outcomeReference 0..* Reference(Observation) Observation that resulted from goal

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Goal.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Goal.lifecycleStatusrequiredGoalLifecycleStatus
http://hl7.org/fhir/ValueSet/goal-status
from the FHIR Standard
Goal.achievementStatuspreferredGoalAchievementStatus
http://hl7.org/fhir/ValueSet/goal-achievement
from the FHIR Standard
Goal.categoryexampleGoalCategory
http://hl7.org/fhir/ValueSet/goal-category
from the FHIR Standard
Goal.prioritypreferredGoalPriority
http://hl7.org/fhir/ValueSet/goal-priority
from the FHIR Standard
Goal.descriptionexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard
Goal.start[x]exampleGoalStartEvent
http://hl7.org/fhir/ValueSet/goal-start-event
from the FHIR Standard
Goal.target.measureexampleLOINCCodes (a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
from the FHIR Standard
Goal.target.detail[x]example
Goal.outcomeCodeexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard

Constraints

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

This structure is derived from Goal

Summary

Must-Support: 5 elements

Structures

This structure refers to these other structures:

Differential View

This structure is derived from Goal

NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal 0..* Goal Goal Profile
... lifecycleStatus S 1..1 code proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required)
... description S 1..1 CodeableConcept Code or text describing goal
... subject S 1..1 Reference(Patient Profile) Who this goal is intended for
.... Slices for due[x] Content/Rules for all slices
..... due[x]:dueDate S 0..1 date Reach goal on or before

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Goal.lifecycleStatusrequiredGoalLifecycleStatus
http://hl7.org/fhir/ValueSet/goal-status
from the FHIR Standard

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal 0..* Goal Goal Profile
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... lifecycleStatus ?!SΣ 1..1 code proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required)
... subject SΣ 1..1 Reference(Patient Profile) Who this goal is intended for
... target SC 0..* BackboneElement Target outcome for the goal
gol-1: Goal.target.measure is required if Goal.target.detail is populated
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... Slices for due[x] Content/Rules for all slices
..... due[x]:dueDate SΣ 0..1 date Reach goal on or before

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Goal.lifecycleStatusrequiredGoalLifecycleStatus
http://hl7.org/fhir/ValueSet/goal-status
from the FHIR Standard
Goal.descriptionexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard

Constraints

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

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal 0..* Goal Goal Profile
... 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
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 0..* Identifier External Ids for this goal
... lifecycleStatus ?!SΣ 1..1 code proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required)
... achievementStatus Σ 0..1 CodeableConcept in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
Binding: GoalAchievementStatus (preferred): Indicates the progression, or lack thereof, towards the goal against the target.

... category Σ 0..* CodeableConcept E.g. Treatment, dietary, behavioral, etc.
Binding: GoalCategory (example): Codes for grouping and sorting goals.


... priority Σ 0..1 CodeableConcept high-priority | medium-priority | low-priority
Binding: GoalPriority (preferred): The level of importance associated with a goal.

... description SΣ 1..1 CodeableConcept Code or text describing goal
Binding: SNOMEDCTClinicalFindings (example): Codes providing the details of a particular goal. This will generally be system or implementation guide-specific. In many systems, only the text element will be used.

... subject SΣ 1..1 Reference(Patient Profile) Who this goal is intended for
... start[x] Σ 0..1 When goal pursuit begins
Binding: GoalStartEvent (example): Codes describing events that can trigger the initiation of a goal.

.... startDate date
.... startCodeableConcept CodeableConcept
... target SC 0..* BackboneElement Target outcome for the goal
gol-1: Goal.target.measure is required if Goal.target.detail is populated
.... 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
.... measure ΣC 0..1 CodeableConcept The parameter whose value is being tracked
Binding: LOINCCodes (example): Codes to identify the value being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level.

.... detail[x] ΣC 0..1 The target value to be achieved
Binding Description (No ValueSet): (example): Codes to identify the target value of the focus to be achieved to signify the fulfillment of the goal.

..... detailQuantity Quantity
..... detailRange Range
..... detailCodeableConcept CodeableConcept
..... detailString string
..... detailBoolean boolean
..... detailInteger integer
..... detailRatio Ratio
.... Slices for due[x] Content/Rules for all slices
..... due[x]:dueDate SΣ 0..1 date Reach goal on or before
... statusDate Σ 0..1 date When goal status took effect
... statusReason 0..1 string Reason for current status
... expressedBy Σ 0..1 Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) Who's responsible for creating Goal?
... addresses 0..* Reference(Condition | Observation | MedicationStatement | NutritionOrder | ServiceRequest | RiskAssessment) Issues addressed by this goal
... note 0..* Annotation Comments about the goal
... outcomeCode 0..* CodeableConcept What result was achieved regarding the goal?
Binding: SNOMEDCTClinicalFindings (example): The result of the goal; e.g. "25% increase in shoulder mobility", "Anxiety reduced to moderate levels". "15 kg weight loss sustained over 6 months".


... outcomeReference 0..* Reference(Observation) Observation that resulted from goal

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Goal.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Goal.lifecycleStatusrequiredGoalLifecycleStatus
http://hl7.org/fhir/ValueSet/goal-status
from the FHIR Standard
Goal.achievementStatuspreferredGoalAchievementStatus
http://hl7.org/fhir/ValueSet/goal-achievement
from the FHIR Standard
Goal.categoryexampleGoalCategory
http://hl7.org/fhir/ValueSet/goal-category
from the FHIR Standard
Goal.prioritypreferredGoalPriority
http://hl7.org/fhir/ValueSet/goal-priority
from the FHIR Standard
Goal.descriptionexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard
Goal.start[x]exampleGoalStartEvent
http://hl7.org/fhir/ValueSet/goal-start-event
from the FHIR Standard
Goal.target.measureexampleLOINCCodes (a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
from the FHIR Standard
Goal.target.detail[x]example
Goal.outcomeCodeexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard

Constraints

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

This structure is derived from Goal

Summary

Must-Support: 5 elements

Structures

This structure refers to these other structures:

 

Other representations of profile: CSV, Excel, Schematron