Release 5

This page is part of the FHIR Specification (v5.0.0: R5 - STU). This is the current published version. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2

9.6 Resource Goal - Content

Patient Care icon Work GroupMaturity Level: 2 Trial UseSecurity Category: Patient Compartments: Patient

Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc.

A Goal in health care services delivery is generally an expressed desired health state to be achieved by a subject of care (or family/group) over a period or at a specific point of time. This desired target health state may be achieved as a result of health care intervention(s) or resulting from natural recovery over time. For example:

  • A goal of a plan for a condition such as a diabetes might specify desired outcome(s) (e.g. HgbA1c level =<5.6% in 3 months) as a result of interventions such as medication therapy, nutritional management and/or increased physical activity.
  • A goal of a procedure might be to meet the intended objective of the procedure (e.g. wet-dry-dressing changes twice a day; goal: wound healed completely in 2 weeks) or to prevent an unintended complication (e.g. repositioning a patient every two hours: goal to maintain skin integrity)

Goals may address the prevention of illness, cure or mitigation of a condition, prolongation of life, or mitigation of pain and discomfort.

When dealing with groups, goals may also reflect health state, such as a reduction of addiction behaviors. However, they may also reflect population health objectives such as education, screening, etc.

Organizational goals are typically not health state specific but may instead identify measurement targets such as infection control, cost management, patient satisfaction, etc.

Goals are typically established in the context of a CarePlan. However, goals may also be directly referenced by request-type resources (e.g. MedicationRequest or ServiceRequest) by using an extension.

A goal represents a specific goal instance for a particular patient, group, etc. It is not intended to be used to define types of potential goals as part of an order set or protocol definition. Protocol definitions and order sets are supported through PlanDefinition. The Goal resource is intended to be used once an order set is instantiated or assigned to a patient, which is when the potential goals become the actual goals, if not changed or deleted.

Goals are often evaluated using Observations.

Goal does not include the legal Advance Directives, which should be represented with the Consent resource with Consent.category = Advance Directive or a request resource with the intent = directive. Legal Advance Directives may specify clinical goals that can be represented as a Goal resource as well. Informally, advance directives could be represented as a Goal resource regardless of whether it was included in the legal Consent, such as "I want to die at home."

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal TUDomainResourceDescribes the intended objective(s) for a patient, group or organization

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier 0..*IdentifierExternal Ids for this goal

... lifecycleStatus ?!Σ1..1codeproposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: Goal Lifecycle Status (Required)
... achievementStatus Σ0..1CodeableConceptin-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
Binding: Goal Achievement Status (Preferred)
... continuous 0..1booleanAfter meeting the goal, ongoing activity is needed to sustain the goal objective
... priority Σ0..1CodeableConcepthigh-priority | medium-priority | low-priority
Binding: Goal Priority (Preferred)
... description Σ1..1CodeableConceptCode or text describing goal
Binding: SNOMED CT Clinical Findings (Example)
... subject Σ1..1Reference(Patient | Group | Organization)Who this goal is intended for
... start[x] Σ0..1When goal pursuit begins
Binding: Goal Start Event (Example)
.... startDatedate
.... startCodeableConceptCodeableConcept
... target C0..*BackboneElementTarget outcome for the goal
+ Rule: Goal.target.measure is required if Goal.target.detail is populated

.... measure ΣC0..1CodeableConceptThe parameter whose value is being tracked
Binding: LOINC Codes (Example)
.... detail[x] ΣC0..1The target value to be achieved
Binding: GoalTargetDetail (Example)
..... 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
... source Σ0..1Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | CareTeam)Who's responsible for creating Goal?
... addresses 0..*Reference(Condition | Observation | MedicationStatement | MedicationRequest | NutritionOrder | ServiceRequest | RiskAssessment | Procedure)Issues addressed by this goal

... note 0..*AnnotationComments about the goal

... outcome 0..*CodeableReference(Observation)What result was achieved regarding the goal?
Binding: SNOMED CT Clinical Findings (Example)


doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Goal (DomainResource)Business identifiers assigned to this goal by the performer or other systems which remain constant as the resource is updated and propagates from server to serveridentifier : Identifier [0..*]The state of the goal throughout its lifecycle (this element modifies the meaning of other elements)lifecycleStatus : code [1..1] « null (Strength=Required)GoalLifecycleStatus! »Describes the progression, or lack thereof, towards the goal against the targetachievementStatus : CodeableConcept [0..1] « null (Strength=Preferred)GoalAchievementStatus? »Indicates a category the goal falls withincategory : CodeableConcept [0..*] « null (Strength=Example)GoalCategory?? »After meeting the goal, ongoing activity is needed to sustain the goal objectivecontinuous : boolean [0..1]Identifies the mutually agreed level of importance associated with reaching/sustaining the goalpriority : CodeableConcept [0..1] « null (Strength=Preferred)GoalPriority? »Human-readable and/or coded description of a specific desired objective of care, such as "control blood pressure" or "negotiate an obstacle course" or "dance with child at wedding"description : CodeableConcept [1..1] « null (Strength=Example)SNOMEDCTClinicalFindings?? »Identifies the patient, group or organization for whom the goal is being establishedsubject : Reference [1..1] « Patient|Group|Organization »The date or event after which the goal should begin being pursuedstart[x] : DataType [0..1] « date|CodeableConcept; null (Strength=Example)GoalStartEvent?? »Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etcstatusDate : date [0..1]Captures the reason for the current statusstatusReason : string [0..1]Indicates whose goal this is - patient goal, practitioner goal, etcsource : Reference [0..1] « Patient|Practitioner|PractitionerRole| RelatedPerson|CareTeam »The identified conditions and other health record elements that are intended to be addressed by the goaladdresses : Reference [0..*] « Condition|Observation| MedicationStatement|MedicationRequest|NutritionOrder| ServiceRequest|RiskAssessment|Procedure »Any comments related to the goalnote : Annotation [0..*]Identifies the change (or lack of change) at the point when the status of the goal is assessedoutcome : CodeableReference [0..*] « Observation; null (Strength=Example) SNOMEDCTClinicalFindings?? »TargetThe parameter whose value is being tracked, e.g. body weight, blood pressure, or hemoglobin A1c levelmeasure : CodeableConcept [0..1] « null (Strength=Example)LOINCCodes?? » « This element has or is affected by some invariantsC »The target value of the focus to be achieved to signify the fulfillment of the goal, e.g. 150 pounds, 7.0%. Either the high or low or both values of the range can be specified. When a low value is missing, it indicates that the goal is achieved at any focus value at or below the high value. Similarly, if the high value is missing, it indicates that the goal is achieved at any focus value at or above the low valuedetail[x] : DataType [0..1] « Quantity|Range|CodeableConcept|string| boolean|integer|Ratio; null (Strength=Example)GoalTargetDetail?? » « This element has or is affected by some invariantsC »Indicates either the date or the duration after start by which the goal should be metdue[x] : DataType [0..1] « date|Duration »Indicates what should be done by whentarget[0..*]

XML Template

<Goal xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External Ids for this goal --></identifier>
 <lifecycleStatus value="[code]"/><!-- 1..1 proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected -->
 <achievementStatus><!-- 0..1 CodeableConcept in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable --></achievementStatus>
 <category><!-- 0..* CodeableConcept E.g. Treatment, dietary, behavioral, etc --></category>
 <continuous value="[boolean]"/><!-- 0..1 After meeting the goal, ongoing activity is needed to sustain the goal objective -->
 <priority><!-- 0..1 CodeableConcept high-priority | medium-priority | low-priority --></priority>
 <description><!-- 1..1 CodeableConcept Code or text describing goal --></description>
 <subject><!-- 1..1 Reference(Group|Organization|Patient) Who this goal is intended for --></subject>
 <start[x]><!-- 0..1 date|CodeableConcept When goal pursuit begins --></start[x]>
 <target>  <!-- 0..* Target outcome for the goal -->
  <measure><!-- I 0..1 CodeableConcept The parameter whose value is being tracked --></measure>
  <detail[x]><!-- I 0..1 Quantity|Range|CodeableConcept|string|boolean|integer|
    Ratio The target value to be achieved --></detail[x]>
  <due[x]><!-- 0..1 date|Duration Reach goal on or before --></due[x]>
 </target>
 <statusDate value="[date]"/><!-- 0..1 When goal status took effect -->
 <statusReason value="[string]"/><!-- 0..1 Reason for current status -->
 <source><!-- 0..1 Reference(CareTeam|Patient|Practitioner|PractitionerRole|
   RelatedPerson) Who's responsible for creating Goal? --></source>
 <addresses><!-- 0..* Reference(Condition|MedicationRequest|MedicationStatement|
   NutritionOrder|Observation|Procedure|RiskAssessment|ServiceRequest) Issues addressed by this goal --></addresses>
 <note><!-- 0..* Annotation Comments about the goal --></note>
 <outcome><!-- 0..* CodeableReference(Observation) What result was achieved regarding the goal? --></outcome>
</Goal>

JSON Template

{doco
  "resourceType" : "Goal",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External Ids for this goal
  "lifecycleStatus" : "<code>", // R!  proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
  "achievementStatus" : { CodeableConcept }, // in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
  "category" : [{ CodeableConcept }], // E.g. Treatment, dietary, behavioral, etc
  "continuous" : <boolean>, // After meeting the goal, ongoing activity is needed to sustain the goal objective
  "priority" : { CodeableConcept }, // high-priority | medium-priority | low-priority
  "description" : { CodeableConcept }, // R!  Code or text describing goal
  "subject" : { Reference(Group|Organization|Patient) }, // R!  Who this goal is intended for
  // start[x]: When goal pursuit begins. One of these 2:
  "startDate" : "<date>",
  "startCodeableConcept" : { CodeableConcept },
  "target" : [{ // Target outcome for the goal
    "measure" : { CodeableConcept }, // I The parameter whose value is being tracked
    // detail[x]: The target value to be achieved. One of these 7:
    "detailQuantity" : { Quantity },
    "detailRange" : { Range },
    "detailCodeableConcept" : { CodeableConcept },
    "detailString" : "<string>",
    "detailBoolean" : <boolean>,
    "detailInteger" : <integer>,
    "detailRatio" : { Ratio },
    // due[x]: Reach goal on or before. One of these 2:
    "dueDate" : "<date>",
    "dueDuration" : { Duration }
  }],
  "statusDate" : "<date>", // When goal status took effect
  "statusReason" : "<string>", // Reason for current status
  "source" : { Reference(CareTeam|Patient|Practitioner|PractitionerRole|
   RelatedPerson) }, // Who's responsible for creating Goal?
  "addresses" : [{ Reference(Condition|MedicationRequest|MedicationStatement|
   NutritionOrder|Observation|Procedure|RiskAssessment|ServiceRequest) }], // Issues addressed by this goal
  "note" : [{ Annotation }], // Comments about the goal
  "outcome" : [{ CodeableReference(Observation) }] // What result was achieved regarding the goal?
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Goal;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* External Ids for this goal
  fhir:lifecycleStatus [ code ] ; # 1..1 proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
  fhir:achievementStatus [ CodeableConcept ] ; # 0..1 in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
  fhir:category  ( [ CodeableConcept ] ... ) ; # 0..* E.g. Treatment, dietary, behavioral, etc
  fhir:continuous [ boolean ] ; # 0..1 After meeting the goal, ongoing activity is needed to sustain the goal objective
  fhir:priority [ CodeableConcept ] ; # 0..1 high-priority | medium-priority | low-priority
  fhir:description [ CodeableConcept ] ; # 1..1 Code or text describing goal
  fhir:subject [ Reference(Group|Organization|Patient) ] ; # 1..1 Who this goal is intended for
  # start[x] : 0..1 When goal pursuit begins. One of these 2
    fhir:start [  a fhir:date ; date ]
    fhir:start [  a fhir:CodeableConcept ; CodeableConcept ]
  fhir:target ( [ # 0..* Target outcome for the goal
    fhir:measure [ CodeableConcept ] ; # 0..1 I The parameter whose value is being tracked
    # detail[x] : 0..1 I The target value to be achieved. One of these 7
      fhir:detail [  a fhir:Quantity ; Quantity ]
      fhir:detail [  a fhir:Range ; Range ]
      fhir:detail [  a fhir:CodeableConcept ; CodeableConcept ]
      fhir:detail [  a fhir:string ; string ]
      fhir:detail [  a fhir:boolean ; boolean ]
      fhir:detail [  a fhir:integer ; integer ]
      fhir:detail [  a fhir:Ratio ; Ratio ]
    # due[x] : 0..1 Reach goal on or before. One of these 2
      fhir:due [  a fhir:date ; date ]
      fhir:due [  a fhir:Duration ; Duration ]
  ] ... ) ;
  fhir:statusDate [ date ] ; # 0..1 When goal status took effect
  fhir:statusReason [ string ] ; # 0..1 Reason for current status
  fhir:source [ Reference(CareTeam|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Who's responsible for creating Goal?
  fhir:addresses  ( [ Reference(Condition|MedicationRequest|MedicationStatement|NutritionOrder|Observation|
  Procedure|RiskAssessment|ServiceRequest) ] ... ) ; # 0..* Issues addressed by this goal
  fhir:note  ( [ Annotation ] ... ) ; # 0..* Comments about the goal
  fhir:outcome  ( [ CodeableReference(Observation) ] ... ) ; # 0..* What result was achieved regarding the goal?
]

Changes from both R4 and R4B

Goal
Goal.continuous
  • Added Element
Goal.source
  • Renamed from expressedBy to source
  • Type Reference: Added Target Type CareTeam
Goal.addresses
  • Type Reference: Added Target Types MedicationRequest, Procedure
Goal.outcome
  • Added Element
Goal.outcomeCode
  • Deleted (-> Goal.outcome)
Goal.outcomeReference
  • Deleted (-> Goal.outcome)

See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.

See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Goal TUDomainResourceDescribes the intended objective(s) for a patient, group or organization

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier 0..*IdentifierExternal Ids for this goal

... lifecycleStatus ?!Σ1..1codeproposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
Binding: Goal Lifecycle Status (Required)
... achievementStatus Σ0..1CodeableConceptin-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
Binding: Goal Achievement Status (Preferred)
... continuous 0..1booleanAfter meeting the goal, ongoing activity is needed to sustain the goal objective
... priority Σ0..1CodeableConcepthigh-priority | medium-priority | low-priority
Binding: Goal Priority (Preferred)
... description Σ1..1CodeableConceptCode or text describing goal
Binding: SNOMED CT Clinical Findings (Example)
... subject Σ1..1Reference(Patient | Group | Organization)Who this goal is intended for
... start[x] Σ0..1When goal pursuit begins
Binding: Goal Start Event (Example)
.... startDatedate
.... startCodeableConceptCodeableConcept
... target C0..*BackboneElementTarget outcome for the goal
+ Rule: Goal.target.measure is required if Goal.target.detail is populated

.... measure ΣC0..1CodeableConceptThe parameter whose value is being tracked
Binding: LOINC Codes (Example)
.... detail[x] ΣC0..1The target value to be achieved
Binding: GoalTargetDetail (Example)
..... 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
... source Σ0..1Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | CareTeam)Who's responsible for creating Goal?
... addresses 0..*Reference(Condition | Observation | MedicationStatement | MedicationRequest | NutritionOrder | ServiceRequest | RiskAssessment | Procedure)Issues addressed by this goal

... note 0..*AnnotationComments about the goal

... outcome 0..*CodeableReference(Observation)What result was achieved regarding the goal?
Binding: SNOMED CT Clinical Findings (Example)


doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Goal (DomainResource)Business identifiers assigned to this goal by the performer or other systems which remain constant as the resource is updated and propagates from server to serveridentifier : Identifier [0..*]The state of the goal throughout its lifecycle (this element modifies the meaning of other elements)lifecycleStatus : code [1..1] « null (Strength=Required)GoalLifecycleStatus! »Describes the progression, or lack thereof, towards the goal against the targetachievementStatus : CodeableConcept [0..1] « null (Strength=Preferred)GoalAchievementStatus? »Indicates a category the goal falls withincategory : CodeableConcept [0..*] « null (Strength=Example)GoalCategory?? »After meeting the goal, ongoing activity is needed to sustain the goal objectivecontinuous : boolean [0..1]Identifies the mutually agreed level of importance associated with reaching/sustaining the goalpriority : CodeableConcept [0..1] « null (Strength=Preferred)GoalPriority? »Human-readable and/or coded description of a specific desired objective of care, such as "control blood pressure" or "negotiate an obstacle course" or "dance with child at wedding"description : CodeableConcept [1..1] « null (Strength=Example)SNOMEDCTClinicalFindings?? »Identifies the patient, group or organization for whom the goal is being establishedsubject : Reference [1..1] « Patient|Group|Organization »The date or event after which the goal should begin being pursuedstart[x] : DataType [0..1] « date|CodeableConcept; null (Strength=Example)GoalStartEvent?? »Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etcstatusDate : date [0..1]Captures the reason for the current statusstatusReason : string [0..1]Indicates whose goal this is - patient goal, practitioner goal, etcsource : Reference [0..1] « Patient|Practitioner|PractitionerRole| RelatedPerson|CareTeam »The identified conditions and other health record elements that are intended to be addressed by the goaladdresses : Reference [0..*] « Condition|Observation| MedicationStatement|MedicationRequest|NutritionOrder| ServiceRequest|RiskAssessment|Procedure »Any comments related to the goalnote : Annotation [0..*]Identifies the change (or lack of change) at the point when the status of the goal is assessedoutcome : CodeableReference [0..*] « Observation; null (Strength=Example) SNOMEDCTClinicalFindings?? »TargetThe parameter whose value is being tracked, e.g. body weight, blood pressure, or hemoglobin A1c levelmeasure : CodeableConcept [0..1] « null (Strength=Example)LOINCCodes?? » « This element has or is affected by some invariantsC »The target value of the focus to be achieved to signify the fulfillment of the goal, e.g. 150 pounds, 7.0%. Either the high or low or both values of the range can be specified. When a low value is missing, it indicates that the goal is achieved at any focus value at or below the high value. Similarly, if the high value is missing, it indicates that the goal is achieved at any focus value at or above the low valuedetail[x] : DataType [0..1] « Quantity|Range|CodeableConcept|string| boolean|integer|Ratio; null (Strength=Example)GoalTargetDetail?? » « This element has or is affected by some invariantsC »Indicates either the date or the duration after start by which the goal should be metdue[x] : DataType [0..1] « date|Duration »Indicates what should be done by whentarget[0..*]

XML Template

<Goal xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External Ids for this goal --></identifier>
 <lifecycleStatus value="[code]"/><!-- 1..1 proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected -->
 <achievementStatus><!-- 0..1 CodeableConcept in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable --></achievementStatus>
 <category><!-- 0..* CodeableConcept E.g. Treatment, dietary, behavioral, etc --></category>
 <continuous value="[boolean]"/><!-- 0..1 After meeting the goal, ongoing activity is needed to sustain the goal objective -->
 <priority><!-- 0..1 CodeableConcept high-priority | medium-priority | low-priority --></priority>
 <description><!-- 1..1 CodeableConcept Code or text describing goal --></description>
 <subject><!-- 1..1 Reference(Group|Organization|Patient) Who this goal is intended for --></subject>
 <start[x]><!-- 0..1 date|CodeableConcept When goal pursuit begins --></start[x]>
 <target>  <!-- 0..* Target outcome for the goal -->
  <measure><!-- I 0..1 CodeableConcept The parameter whose value is being tracked --></measure>
  <detail[x]><!-- I 0..1 Quantity|Range|CodeableConcept|string|boolean|integer|
    Ratio The target value to be achieved --></detail[x]>
  <due[x]><!-- 0..1 date|Duration Reach goal on or before --></due[x]>
 </target>
 <statusDate value="[date]"/><!-- 0..1 When goal status took effect -->
 <statusReason value="[string]"/><!-- 0..1 Reason for current status -->
 <source><!-- 0..1 Reference(CareTeam|Patient|Practitioner|PractitionerRole|
   RelatedPerson) Who's responsible for creating Goal? --></source>
 <addresses><!-- 0..* Reference(Condition|MedicationRequest|MedicationStatement|
   NutritionOrder|Observation|Procedure|RiskAssessment|ServiceRequest) Issues addressed by this goal --></addresses>
 <note><!-- 0..* Annotation Comments about the goal --></note>
 <outcome><!-- 0..* CodeableReference(Observation) What result was achieved regarding the goal? --></outcome>
</Goal>

JSON Template

{doco
  "resourceType" : "Goal",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External Ids for this goal
  "lifecycleStatus" : "<code>", // R!  proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
  "achievementStatus" : { CodeableConcept }, // in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
  "category" : [{ CodeableConcept }], // E.g. Treatment, dietary, behavioral, etc
  "continuous" : <boolean>, // After meeting the goal, ongoing activity is needed to sustain the goal objective
  "priority" : { CodeableConcept }, // high-priority | medium-priority | low-priority
  "description" : { CodeableConcept }, // R!  Code or text describing goal
  "subject" : { Reference(Group|Organization|Patient) }, // R!  Who this goal is intended for
  // start[x]: When goal pursuit begins. One of these 2:
  "startDate" : "<date>",
  "startCodeableConcept" : { CodeableConcept },
  "target" : [{ // Target outcome for the goal
    "measure" : { CodeableConcept }, // I The parameter whose value is being tracked
    // detail[x]: The target value to be achieved. One of these 7:
    "detailQuantity" : { Quantity },
    "detailRange" : { Range },
    "detailCodeableConcept" : { CodeableConcept },
    "detailString" : "<string>",
    "detailBoolean" : <boolean>,
    "detailInteger" : <integer>,
    "detailRatio" : { Ratio },
    // due[x]: Reach goal on or before. One of these 2:
    "dueDate" : "<date>",
    "dueDuration" : { Duration }
  }],
  "statusDate" : "<date>", // When goal status took effect
  "statusReason" : "<string>", // Reason for current status
  "source" : { Reference(CareTeam|Patient|Practitioner|PractitionerRole|
   RelatedPerson) }, // Who's responsible for creating Goal?
  "addresses" : [{ Reference(Condition|MedicationRequest|MedicationStatement|
   NutritionOrder|Observation|Procedure|RiskAssessment|ServiceRequest) }], // Issues addressed by this goal
  "note" : [{ Annotation }], // Comments about the goal
  "outcome" : [{ CodeableReference(Observation) }] // What result was achieved regarding the goal?
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Goal;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* External Ids for this goal
  fhir:lifecycleStatus [ code ] ; # 1..1 proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
  fhir:achievementStatus [ CodeableConcept ] ; # 0..1 in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
  fhir:category  ( [ CodeableConcept ] ... ) ; # 0..* E.g. Treatment, dietary, behavioral, etc
  fhir:continuous [ boolean ] ; # 0..1 After meeting the goal, ongoing activity is needed to sustain the goal objective
  fhir:priority [ CodeableConcept ] ; # 0..1 high-priority | medium-priority | low-priority
  fhir:description [ CodeableConcept ] ; # 1..1 Code or text describing goal
  fhir:subject [ Reference(Group|Organization|Patient) ] ; # 1..1 Who this goal is intended for
  # start[x] : 0..1 When goal pursuit begins. One of these 2
    fhir:start [  a fhir:date ; date ]
    fhir:start [  a fhir:CodeableConcept ; CodeableConcept ]
  fhir:target ( [ # 0..* Target outcome for the goal
    fhir:measure [ CodeableConcept ] ; # 0..1 I The parameter whose value is being tracked
    # detail[x] : 0..1 I The target value to be achieved. One of these 7
      fhir:detail [  a fhir:Quantity ; Quantity ]
      fhir:detail [  a fhir:Range ; Range ]
      fhir:detail [  a fhir:CodeableConcept ; CodeableConcept ]
      fhir:detail [  a fhir:string ; string ]
      fhir:detail [  a fhir:boolean ; boolean ]
      fhir:detail [  a fhir:integer ; integer ]
      fhir:detail [  a fhir:Ratio ; Ratio ]
    # due[x] : 0..1 Reach goal on or before. One of these 2
      fhir:due [  a fhir:date ; date ]
      fhir:due [  a fhir:Duration ; Duration ]
  ] ... ) ;
  fhir:statusDate [ date ] ; # 0..1 When goal status took effect
  fhir:statusReason [ string ] ; # 0..1 Reason for current status
  fhir:source [ Reference(CareTeam|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Who's responsible for creating Goal?
  fhir:addresses  ( [ Reference(Condition|MedicationRequest|MedicationStatement|NutritionOrder|Observation|
  Procedure|RiskAssessment|ServiceRequest) ] ... ) ; # 0..* Issues addressed by this goal
  fhir:note  ( [ Annotation ] ... ) ; # 0..* Comments about the goal
  fhir:outcome  ( [ CodeableReference(Observation) ] ... ) ; # 0..* What result was achieved regarding the goal?
]

Changes from both R4 and R4B

Goal
Goal.continuous
  • Added Element
Goal.source
  • Renamed from expressedBy to source
  • Type Reference: Added Target Type CareTeam
Goal.addresses
  • Type Reference: Added Target Types MedicationRequest, Procedure
Goal.outcome
  • Added Element
Goal.outcomeCode
  • Deleted (-> Goal.outcome)
Goal.outcomeReference
  • Deleted (-> Goal.outcome)

See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.

See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)

 

Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis

PathValueSetTypeDocumentation
Goal.lifecycleStatus GoalLifecycleStatus Required

Codes that reflect the current state of a goal and whether the goal is still being targeted.

Goal.achievementStatus GoalAchievementStatus Preferred

Describes the progression, or lack thereof, towards the goal against the target.

Goal.category GoalCategory Example

Example codes for grouping goals to use for filtering or presentation.

Goal.priority GoalPriority Preferred

Indicates the level of importance associated with reaching or sustaining a goal.

Goal.description SNOMEDCTClinicalFindings Example

This value set includes all the "Clinical finding" SNOMED CT icon codes - concepts where concept is-a 404684003 (Clinical finding (finding)).

Goal.start[x] GoalStartEvent Example

Identifies types of events that might trigger the start of a goal.

Goal.target.measure LOINCCodes (a valid code from LOINC icon)Example

This value set includes all LOINC codes

Goal.target.detail[x] ??Example
Goal.outcome SNOMEDCTClinicalFindings Example

This value set includes all the "Clinical finding" SNOMED CT icon codes - concepts where concept is-a 404684003 (Clinical finding (finding)).

UniqueKeyLevelLocationDescriptionExpression
img gol-1Rule Goal.targetGoal.target.measure is required if Goal.target.detail is populated(detail.exists() and measure.exists()) or detail.exists().not()

Search parameters for this resource. See also the full list of search parameters for this resource, and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
achievement-statustokenin-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainableGoal.achievementStatus
addressesreferenceIssues addressed by this goalGoal.addresses
(Condition, RiskAssessment, MedicationRequest, NutritionOrder, Observation, Procedure, MedicationStatement, ServiceRequest)
categorytokenE.g. Treatment, dietary, behavioral, etc.Goal.category
descriptiontokenCode or text describing goalGoal.description
identifiertokenExternal Ids for this goalGoal.identifier65 Resources
lifecycle-statustokenproposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejectedGoal.lifecycleStatus
patientreferenceWho this goal is intended forGoal.subject.where(resolve() is Patient)
(Patient)
66 Resources
start-datedateWhen goal pursuit begins(Goal.start.ofType(date))
subjectreferenceWho this goal is intended forGoal.subject
(Group, Organization, Patient)
target-datedateReach goal on or before(Goal.target.due.ofType(date))
target-measuretokenThe parameter whose value is being trackedGoal.target.measure