Clinical Practice Guidelines
2.0.0-ballot - ballot International flag

Clinical Practice Guidelines, published by HL7 International / Clinical Decision Support. This guide is not an authorized publication; it is the continuous build for version 2.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/cqf-recommendations/ and changes regularly. See the Directory of published versions

Resource Profile: CPG Goal

Official URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-goal Version: 2.0.0-ballot
Active as of 2023-12-19 Computable Name: CPGGoal

Defines the expectations for the representation of goals used in computable guidelines

This is a domain case/instance profile

Examples:

Usage:

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..*GoalDescribes the intended objective(s) for a patient, group or organization
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... goalFor S0..*canonical(CPG Computable Plan Definition)CPG Goal For Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-goalFor
... identifier S0..*IdentifierExternal Ids for this goal
... achievementStatus S0..1CodeableConceptin-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
... category S0..*CodeableConceptE.g. Treatment, dietary, behavioral, etc.
... priority S0..1CodeableConcepthigh-priority | medium-priority | low-priority
... description S1..1CodeableConceptCode or text describing goal
... subject S1..1Reference(Patient | Group | Organization)Who this goal is intended for
... start[x] S0..1date, CodeableConceptWhen goal pursuit begins
... target S0..*BackboneElementTarget outcome for the goal
.... measure S0..1CodeableConceptThe parameter whose value is being tracked
.... detail[x] S0..1Quantity, Range, CodeableConcept, string, boolean, integer, RatioThe target value to be achieved

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal 0..*GoalDescribes the intended objective(s) for a patient, group or organization
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... goalFor S0..*canonical(CPG Computable Plan Definition)CPG Goal For Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-goalFor
... identifier S0..*IdentifierExternal Ids for this goal
... lifecycleStatus ?!SΣ1..1codeproposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required): Codes that reflect the current state of a goal and whether the goal is still being targeted.

... achievementStatus SΣ0..1CodeableConceptin-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 SΣ0..*CodeableConceptE.g. Treatment, dietary, behavioral, etc.
Binding: GoalCategory (example): Codes for grouping and sorting goals.


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

... description SΣ1..1CodeableConceptCode 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..1Reference(Patient | Group | Organization)Who this goal is intended for
... start[x] SΣ0..1When goal pursuit begins
Binding: GoalStartEvent (example): Codes describing events that can trigger the initiation of a goal.

.... startDatedate
.... startCodeableConceptCodeableConcept
... target SC0..*BackboneElementTarget outcome for the goal
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... measure SΣC0..1CodeableConceptThe 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] SΣC0..1The target value to be achieved
Binding: (unbound) (example): Codes to identify the target value of the focus to be achieved to signify the fulfillment of the goal.

..... detailQuantityQuantity
..... detailRangeRange
..... detailCodeableConceptCodeableConcept
..... detailStringstring
..... detailBooleanboolean
..... detailIntegerinteger
..... detailRatioRatio

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Goal.lifecycleStatusrequiredGoalLifecycleStatus
Goal.achievementStatuspreferredGoalAchievementStatus
Goal.categoryexampleGoalCategory
Goal.prioritypreferredGoalPriority
Goal.descriptionexampleSNOMEDCTClinicalFindings
Goal.start[x]exampleGoalStartEvent
Goal.target.measureexampleLOINCCodes (a valid code from LOINC)
Goal.target.detail[x]example

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..*GoalDescribes the intended objective(s) for a patient, group or organization
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... goalFor S0..*canonical(CPG Computable Plan Definition)CPG Goal For Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-goalFor
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier S0..*IdentifierExternal Ids for this goal
... lifecycleStatus ?!SΣ1..1codeproposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required): Codes that reflect the current state of a goal and whether the goal is still being targeted.

... achievementStatus SΣ0..1CodeableConceptin-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 SΣ0..*CodeableConceptE.g. Treatment, dietary, behavioral, etc.
Binding: GoalCategory (example): Codes for grouping and sorting goals.


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

... description SΣ1..1CodeableConceptCode 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..1Reference(Patient | Group | Organization)Who this goal is intended for
... start[x] SΣ0..1When goal pursuit begins
Binding: GoalStartEvent (example): Codes describing events that can trigger the initiation of a goal.

.... startDatedate
.... startCodeableConceptCodeableConcept
... target SC0..*BackboneElementTarget outcome for the goal
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... measure SΣC0..1CodeableConceptThe 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] SΣC0..1The target value to be achieved
Binding: (unbound) (example): Codes to identify the target value of the focus to be achieved to signify the fulfillment of the goal.

..... detailQuantityQuantity
..... detailRangeRange
..... detailCodeableConceptCodeableConcept
..... detailStringstring
..... detailBooleanboolean
..... detailIntegerinteger
..... detailRatioRatio
.... due[x] Σ0..1Reach goal on or before
..... dueDatedate
..... dueDurationDuration
... statusDate Σ0..1dateWhen goal status took effect
... statusReason 0..1stringReason for current status
... expressedBy Σ0..1Reference(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..*AnnotationComments about the goal
... outcomeCode 0..*CodeableConceptWhat 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

PathConformanceValueSet
Goal.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Goal.lifecycleStatusrequiredGoalLifecycleStatus
Goal.achievementStatuspreferredGoalAchievementStatus
Goal.categoryexampleGoalCategory
Goal.prioritypreferredGoalPriority
Goal.descriptionexampleSNOMEDCTClinicalFindings
Goal.start[x]exampleGoalStartEvent
Goal.target.measureexampleLOINCCodes (a valid code from LOINC)
Goal.target.detail[x]example
Goal.outcomeCodeexampleSNOMEDCTClinicalFindings

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: 12 elements

Extensions

This structure refers to these extensions:

Differential View

This structure is derived from Goal

NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal 0..*GoalDescribes the intended objective(s) for a patient, group or organization
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... goalFor S0..*canonical(CPG Computable Plan Definition)CPG Goal For Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-goalFor
... identifier S0..*IdentifierExternal Ids for this goal
... achievementStatus S0..1CodeableConceptin-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
... category S0..*CodeableConceptE.g. Treatment, dietary, behavioral, etc.
... priority S0..1CodeableConcepthigh-priority | medium-priority | low-priority
... description S1..1CodeableConceptCode or text describing goal
... subject S1..1Reference(Patient | Group | Organization)Who this goal is intended for
... start[x] S0..1date, CodeableConceptWhen goal pursuit begins
... target S0..*BackboneElementTarget outcome for the goal
.... measure S0..1CodeableConceptThe parameter whose value is being tracked
.... detail[x] S0..1Quantity, Range, CodeableConcept, string, boolean, integer, RatioThe target value to be achieved

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal 0..*GoalDescribes the intended objective(s) for a patient, group or organization
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... goalFor S0..*canonical(CPG Computable Plan Definition)CPG Goal For Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-goalFor
... identifier S0..*IdentifierExternal Ids for this goal
... lifecycleStatus ?!SΣ1..1codeproposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required): Codes that reflect the current state of a goal and whether the goal is still being targeted.

... achievementStatus SΣ0..1CodeableConceptin-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 SΣ0..*CodeableConceptE.g. Treatment, dietary, behavioral, etc.
Binding: GoalCategory (example): Codes for grouping and sorting goals.


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

... description SΣ1..1CodeableConceptCode 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..1Reference(Patient | Group | Organization)Who this goal is intended for
... start[x] SΣ0..1When goal pursuit begins
Binding: GoalStartEvent (example): Codes describing events that can trigger the initiation of a goal.

.... startDatedate
.... startCodeableConceptCodeableConcept
... target SC0..*BackboneElementTarget outcome for the goal
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... measure SΣC0..1CodeableConceptThe 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] SΣC0..1The target value to be achieved
Binding: (unbound) (example): Codes to identify the target value of the focus to be achieved to signify the fulfillment of the goal.

..... detailQuantityQuantity
..... detailRangeRange
..... detailCodeableConceptCodeableConcept
..... detailStringstring
..... detailBooleanboolean
..... detailIntegerinteger
..... detailRatioRatio

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Goal.lifecycleStatusrequiredGoalLifecycleStatus
Goal.achievementStatuspreferredGoalAchievementStatus
Goal.categoryexampleGoalCategory
Goal.prioritypreferredGoalPriority
Goal.descriptionexampleSNOMEDCTClinicalFindings
Goal.start[x]exampleGoalStartEvent
Goal.target.measureexampleLOINCCodes (a valid code from LOINC)
Goal.target.detail[x]example

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..*GoalDescribes the intended objective(s) for a patient, group or organization
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... goalFor S0..*canonical(CPG Computable Plan Definition)CPG Goal For Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-goalFor
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier S0..*IdentifierExternal Ids for this goal
... lifecycleStatus ?!SΣ1..1codeproposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: GoalLifecycleStatus (required): Codes that reflect the current state of a goal and whether the goal is still being targeted.

... achievementStatus SΣ0..1CodeableConceptin-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 SΣ0..*CodeableConceptE.g. Treatment, dietary, behavioral, etc.
Binding: GoalCategory (example): Codes for grouping and sorting goals.


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

... description SΣ1..1CodeableConceptCode 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..1Reference(Patient | Group | Organization)Who this goal is intended for
... start[x] SΣ0..1When goal pursuit begins
Binding: GoalStartEvent (example): Codes describing events that can trigger the initiation of a goal.

.... startDatedate
.... startCodeableConceptCodeableConcept
... target SC0..*BackboneElementTarget outcome for the goal
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... measure SΣC0..1CodeableConceptThe 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] SΣC0..1The target value to be achieved
Binding: (unbound) (example): Codes to identify the target value of the focus to be achieved to signify the fulfillment of the goal.

..... detailQuantityQuantity
..... detailRangeRange
..... detailCodeableConceptCodeableConcept
..... detailStringstring
..... detailBooleanboolean
..... detailIntegerinteger
..... detailRatioRatio
.... due[x] Σ0..1Reach goal on or before
..... dueDatedate
..... dueDurationDuration
... statusDate Σ0..1dateWhen goal status took effect
... statusReason 0..1stringReason for current status
... expressedBy Σ0..1Reference(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..*AnnotationComments about the goal
... outcomeCode 0..*CodeableConceptWhat 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

PathConformanceValueSet
Goal.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Goal.lifecycleStatusrequiredGoalLifecycleStatus
Goal.achievementStatuspreferredGoalAchievementStatus
Goal.categoryexampleGoalCategory
Goal.prioritypreferredGoalPriority
Goal.descriptionexampleSNOMEDCTClinicalFindings
Goal.start[x]exampleGoalStartEvent
Goal.target.measureexampleLOINCCodes (a valid code from LOINC)
Goal.target.detail[x]example
Goal.outcomeCodeexampleSNOMEDCTClinicalFindings

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: 12 elements

Extensions

This structure refers to these extensions:

 

Other representations of profile: CSV, Excel, Schematron