Release 4 FHIR CI-Build

This page is part of the Continuous Integration Build of FHIR Specification (v4.0.1: R4 - Mixed Normative and STU ) in it's permanent home (it will always (will be available incorrect/inconsistent at this URL). The current version which supercedes this version is 5.0.0 . For a full list of available versions, see times).
See the Directory of published versions icon . Page versions: R5 R4B R4 R3 R2

9.6 Resource Goal - Content

Responsible Owner: Patient Care icon Work Group Maturity Level : 2   Trial Use Security Category : Patient Compartments : Group , Patient

Describes the intended objective(s) for a patient, group group, or organization care, for example, organizational care. Examples include a patient's weight loss, restoring restoration of an activity of daily living, living for a patient, obtaining herd immunity via immunization, immunization for a group, meeting a process improvement objective, objective for an organization, 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 increase 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 .

This Goal does not include the legal Advance Directives, which should be represented with the Consent resource is referenced by 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

CodeableConcept 0..* 0..1 outcomeReference 0..* Reference ( Observation ) Observation that resulted from goal
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . Goal TU DomainResource Describes the intended objective(s) for a patient, group group, or organization organizational care

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

. . . lifecycleStatus ?! Σ 1..1 code proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
GoalLifecycleStatus Binding: Goal Lifecycle Status ( Required )
. . . achievementStatus Σ 0..1 CodeableConcept in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
Binding: Goal achievement status Achievement Status ( Preferred )
. . priority . continuous 0..1 Σ boolean After meeting the goal, ongoing activity is needed to sustain the goal objective
0..1
. . . priority Σ 0..1 CodeableConcept high-priority | medium-priority | low-priority
Binding: Goal priority Priority ( Preferred )
. . . description Σ 1..1 CodeableConcept Code or text describing goal
SNOMED CT Clinical Findings Binding: Goal Description ( Example )
. . . subject Σ 1..1 Reference ( Patient | Group | Organization ) Who this goal is intended for
. . . start[x] Σ 0..1 When goal pursuit begins
Binding: Goal start event Start Event ( Example )
. . . . startDate date
. . . . startCodeableConcept CodeableConcept
. . . acceptance 0..* BackboneElement Individual acceptance of goal

. . . target . participant 1..1 I Reference ( Patient | Practitioner | RelatedPerson | PractitionerRole | CareTeam | Organization | Group ) Individual or organization whose acceptance is reflected
. . . . status 0..1 BackboneElement code agree | disagree | pending
Binding: Goal acceptance status value set ( Required )
. . . . priority 0..1 CodeableConcept Priority of goal for individual
Binding: Goal Priority ( Example )
... target C 0..* BackboneElement Target outcome for the goal
+ Rule: Goal.target.measure is required if Goal.target.detail is populated

. . . . measure Σ I C 0..1 CodeableConcept The parameter whose value is being tracked
Binding: LOINC Codes ( Example )
. . . . detail[x] Σ I C 0..1 The target value to be achieved
. . . . . detailQuantity Quantity
. . . . . detailRange Range
. . . . . detailCodeableConcept CodeableConcept
. . . . . detailString string
. . . . . detailBoolean boolean
. . . . . detailInteger integer
. . . . . detailRatio Ratio
. . . . due[x] Σ 0..1 Reach goal on or before
. . . . . dueDate date
. . . . . dueDuration Duration
. . . statusDate Σ 0..1 date When goal achievment status took effect
. . . statusReason 0..* string CodeableConcept Reason for current lifecycle status
Binding: Goal Status Reason ( Example )

. . expressedBy . recorder Σ 0..1 Reference ( Practitioner | PractitionerRole | Patient | RelatedPerson | Group ) Who recorded the goal
... source Σ 0..1 Reference ( Patient | Practitioner | PractitionerRole | RelatedPerson | CareTeam | Group ) Who's responsible for creating Goal?
. . . addresses 0..* Reference ( Condition | Observation | MedicationStatement | MedicationRequest | NutritionOrder | ServiceRequest | RiskAssessment | Procedure | NutritionIntake ) Issues addressed by this goal

. . . note 0..* Annotation Comments about the goal
outcomeCode 0..* CodeableConcept What result was achieved regarding the goal? 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 server identifier : Identifier [0..*] The state of the goal throughout its lifecycle (this element modifies the meaning of other elements) lifecycleStatus : code [1..1] « Codes that reflect the current state of a goal and whether the goal is still being targeted. null (Strength=Required) GoalLifecycleStatus ! » Describes the progression, or lack thereof, towards the goal against the target achievementStatus : CodeableConcept [0..1] « Indicates the progression, or lack thereof, towards the goal against the target. null (Strength=Preferred) GoalAchievementStatus ? » Indicates a category the goal falls within category : CodeableConcept [0..*] « Codes for grouping and sorting goals. null (Strength=Example) GoalCategory ?? » After meeting the goal, ongoing activity is needed to sustain the goal objective continuous : boolean [0..1] Identifies the mutually agreed level of importance associated with reaching/sustaining the goal priority : CodeableConcept [0..1] « The level of importance associated with a goal. 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] « 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. null (Strength=Example) SNOMEDCTClinicalFindings GoalDescription ?? » Identifies the patient, group or organization for whom the goal is being established subject : Reference [1..1] « Patient | Group | Organization » The date or event after which the goal should begin being pursued start[x] : Type DataType [0..1] « date | CodeableConcept ; Codes describing events that can trigger the initiation of a goal. null (Strength=Example) GoalStartEvent ?? » Identifies when the current status. achievement status took effect. I.e. When initially created, when achieved, when cancelled, improving, etc statusDate : date [0..1] Captures the reason for the current lifecycle status statusReason : string CodeableConcept [0..*] « null (Strength=Example) GoalStatusReason ?? » Individual who recorded the record and takes responsibility for its content recorder : Reference [0..1] « Practitioner | PractitionerRole | Patient | RelatedPerson | Group » Indicates whose goal this is - patient goal, practitioner goal, etc expressedBy source : Reference [0..1] « Patient | Practitioner | PractitionerRole | RelatedPerson | CareTeam | Group » The identified conditions and other health record elements resources that are intended to be addressed by provide the context for why the goal exists addresses : Reference [0..*] « Condition | Observation | MedicationStatement | NutritionOrder MedicationRequest | ServiceRequest NutritionOrder | ServiceRequest | RiskAssessment | Procedure | NutritionIntake » Any comments related to the goal note : Annotation [0..*] Acceptance Identifies the change (or lack of change) at the point when the status of the goal The person ororganization whose acceptance/priority is assessed being reflected outcomeCode participant : CodeableConcept Reference [0..*] [1..1] « Patient | Practitioner | RelatedPerson | The result of PractitionerRole | CareTeam | Organization | Group » Indicates whether the goal; e.g. "25% increase in shoulder mobility", "Anxiety reduced to moderate levels". "15 kg weight loss sustained over 6 months". (Strength=Example) specified individual has accepted the goal or not SNOMEDCTClinicalFindings status ?? : code [0..1] « null (Strength=Required) GoalAcceptStatus ! » Details of what's changed (or not changed) Indicates the relative priority assigned to the goal by the stakeholder outcomeReference priority : Reference CodeableConcept [0..*] [0..1] « Observation null (Strength=Example) GoalPriority ?? » Target The parameter whose value is being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level measure : CodeableConcept [0..1] « Codes to identify the value being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level. null (Strength=Example) LOINCCodes ?? » « This element has or is affected by some invariants C » 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 value. A CodeableConcept target value could be Positive, Negative, Abnormal, Normal, Present, Absent, Yes, No detail[x] : Type DataType [0..1] « Quantity | Range | CodeableConcept | string | boolean | integer | Ratio » « This element has or is affected by some invariants C » Indicates either the date or the duration after start by which the goal should be met due[x] : Type DataType [0..1] « date | Duration » Information about the acceptance and relative priority assigned to the goal by the patient, practitioners and other stakeholders acceptance [0..*] Indicates what should be done by when target [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>

 <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>
 <</subject>

 <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]>
 <
  <</measure>
  <|

 <acceptance>  <!-- 0..* Individual acceptance of goal -->
  <participant><!-- 1..1 Reference(CareTeam|Group|Organization|Patient|
    Practitioner|PractitionerRole|RelatedPerson) Individual or organization whose acceptance is reflected --></participant>

  <status value="[code]"/><!-- 0..1 agree | disagree | pending -->
  <priority><!-- 0..1 CodeableConcept Priority of goal for individual --></priority>
 </acceptance>
 <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>
 <
 <
 <|
   </expressedBy>
 <|
   </addresses>

 <statusDate value="[date]"/><!-- 0..1 When goal achievment status took effect -->
 <statusReason><!-- 0..* CodeableConcept Reason for current lifecycle status --></statusReason>
 <recorder><!-- 0..1 Reference(Group|Patient|Practitioner|PractitionerRole|
   RelatedPerson) Who recorded the goal --></recorder>

 <source><!-- 0..1 Reference(CareTeam|Group|Patient|Practitioner|PractitionerRole|
   RelatedPerson) Who's responsible for creating Goal? --></source>

 <addresses><!-- 0..* Reference(Condition|MedicationRequest|MedicationStatement|
   NutritionIntake|NutritionOrder|Observation|Procedure|RiskAssessment|
   ServiceRequest) Issues addressed by this goal --></addresses>
 <note><!-- 0..* Annotation Comments about the goal --></note>
 <</outcomeCode>
 <</outcomeReference>

</Goal>

JSON Template

{doco
  "resourceType" : "",

  "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 },
  "
    "

  "acceptance" : [{ // Individual acceptance of goal
    "participant" : { Reference(CareTeam|Group|Organization|Patient|
    Practitioner|PractitionerRole|RelatedPerson) }, // R!  Individual or organization whose acceptance is reflected

    "status" : "<code>", // agree | disagree | pending
    "priority" : { CodeableConcept } // Priority of goal for individual
  }],
  "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 achievment status took effect
  "statusReason" : [{ CodeableConcept }], // Reason for current lifecycle status
  "recorder" : { Reference(Group|Patient|Practitioner|PractitionerRole|
   RelatedPerson) }, // Who recorded the goal

  "source" : { Reference(CareTeam|Group|Patient|Practitioner|PractitionerRole|

   RelatedPerson) }, // Who's responsible for creating Goal?
  "|
   
  "
  "
  "

  "addresses" : [{ Reference(Condition|MedicationRequest|MedicationStatement|
   NutritionIntake|NutritionOrder|Observation|Procedure|RiskAssessment|
   ServiceRequest) }], // Issues addressed by this goal

  "note" : [{ Annotation }] // Comments about the goal

}

Turtle Template

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


[ a fhir:;

[ a fhir:Goal;

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

  # from 
  # from 
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  # . One of these 2
    fhir: ]
    fhir: ]
  fhir:
    fhir:
    # . One of these 7
      fhir: ]
      fhir: ]
      fhir: ]
      fhir: ]
      fhir: ]
      fhir: ]
      fhir: ]
    # . One of these 2
      fhir: ]
      fhir: ]
  ], ...;
  fhir:
  fhir:
  fhir:
  fhir:|
  
  fhir:
  fhir:
  fhir:

  # from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language
  # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir: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:acceptance ( [ # 0..* Individual acceptance of goal
    fhir:participant [ Reference(CareTeam|Group|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 1..1 Individual or organization whose acceptance is reflected
    fhir:status [ code ] ; # 0..1 agree | disagree | pending
    fhir:priority [ CodeableConcept ] ; # 0..1 Priority of goal for individual
  ] ... ) ;
  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 achievment status took effect
  fhir:statusReason  ( [ CodeableConcept ] ... ) ; # 0..* Reason for current lifecycle status
  fhir:recorder [ Reference(Group|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Who recorded the goal
  fhir:source [ Reference(CareTeam|Group|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Who's responsible for creating Goal?
  fhir:addresses  ( [ Reference(Condition|MedicationRequest|MedicationStatement|NutritionIntake|NutritionOrder|
  Observation|Procedure|RiskAssessment|ServiceRequest) ] ... ) ; # 0..* Issues addressed by this goal

  fhir:note  ( [ Annotation ] ... ) ; # 0..* Comments about the goal

]

Changes since R3 from both R4 and R4B

Goal
Goal.lifecycleStatus
  • Remove codes active , on-hold , completed
Goal.continuous
  • Added Element
Goal.acceptance
  • Added Element
Goal.acceptance.participant
  • Added Mandatory Element
Goal.achievementStatus Goal.acceptance.status
  • Added Element
Goal.subject Goal.acceptance.priority
  • Min Cardinality changed from 0 to 1 Added Element
Goal.target Goal.statusReason
  • Max Cardinality changed from 1 to *
  • Type changed from string to CodeableConcept
Goal.target.detail[x] Goal.recorder
  • Add Types string, boolean, integer, Ratio Added Element
Goal.expressedBy Goal.source
  • Renamed from expressedBy to source
  • Type Reference: Added Target Type PractitionerRole Types CareTeam, Group
Goal.addresses
  • Type Reference: Added Target Type ServiceRequest Types MedicationRequest, Procedure, NutritionIntake
Goal.outcomeCode
  • Type Reference: Removed Target Type ProcedureRequest Deleted (-> Goal.outcome)
Goal.status Goal.outcomeReference
  • deleted Deleted (-> Goal.outcome)

See the Full Difference for further information

This analysis is available for R4 as XML or JSON . See R3 <--> R4 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.) for R4B as XML or JSON .

Structure

CodeableConcept 0..* 0..1
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . Goal TU DomainResource Describes the intended objective(s) for a patient, group group, or organization organizational care

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

. . . lifecycleStatus ?! Σ 1..1 code proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
GoalLifecycleStatus Binding: Goal Lifecycle Status ( Required )
. . . achievementStatus Σ 0..1 CodeableConcept in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
Binding: Goal achievement status Achievement Status ( Preferred )
. . priority . continuous 0..1 Σ boolean After meeting the goal, ongoing activity is needed to sustain the goal objective
... priority Σ 0..1 CodeableConcept high-priority | medium-priority | low-priority
Binding: Goal priority Priority ( Preferred )
. . . description Σ 1..1 CodeableConcept Code or text describing goal
SNOMED CT Clinical Findings Binding: Goal Description ( Example )
. . . subject Σ 1..1 Reference ( Patient | Group | Organization ) Who this goal is intended for
. . . start[x] Σ 0..1 When goal pursuit begins
Binding: Goal start event Start Event ( Example )
. . . . startDate date
. . . . startCodeableConcept CodeableConcept
. . . acceptance 0..* BackboneElement Individual acceptance of goal

. . . target . participant 1..1 I Reference ( Patient | Practitioner | RelatedPerson | PractitionerRole | CareTeam | Organization | Group ) Individual or organization whose acceptance is reflected
. . . . status 0..1 code BackboneElement agree | disagree | pending
Binding: Goal acceptance status value set ( Required )
. . . . priority 0..1 CodeableConcept Priority of goal for individual
Binding: Goal Priority ( Example )
... target C 0..* BackboneElement Target outcome for the goal
+ Rule: Goal.target.measure is required if Goal.target.detail is populated

. . . . measure Σ I C 0..1 CodeableConcept The parameter whose value is being tracked
Binding: LOINC Codes ( Example )
. . . . detail[x] Σ I C 0..1 The target value to be achieved
. . . . . detailQuantity Quantity
. . . . . detailRange Range
. . . . . detailCodeableConcept CodeableConcept
. . . . . detailString string
. . . . . detailBoolean boolean
. . . . . detailInteger integer
. . . . . detailRatio Ratio
. . . . due[x] Σ 0..1 Reach goal on or before
. . . . . dueDate date
. . . . . dueDuration Duration
. . . statusDate Σ 0..1 date When goal achievment status took effect
. . . statusReason 0..* string CodeableConcept Reason for current lifecycle status
Binding: Goal Status Reason ( Example )

. . expressedBy . recorder Σ 0..1 Reference ( Practitioner | PractitionerRole | Patient | RelatedPerson | Group ) Who recorded the goal
... source Σ 0..1 Reference ( Patient | Practitioner | PractitionerRole | RelatedPerson | CareTeam | Group ) Who's responsible for creating Goal?
. . . addresses 0..* Reference ( Condition | Observation | MedicationStatement | MedicationRequest | NutritionOrder | ServiceRequest | RiskAssessment | Procedure | NutritionIntake ) Issues addressed by this goal

. . . note 0..* Annotation Comments about the goal
outcomeCode 0..* CodeableConcept What result was achieved regarding the goal? SNOMED CT Clinical Findings ( Example ) outcomeReference 0..* Reference ( Observation ) Observation that resulted from goal

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 server identifier : Identifier [0..*] The state of the goal throughout its lifecycle (this element modifies the meaning of other elements) lifecycleStatus : code [1..1] « Codes that reflect the current state of a goal and whether the goal is still being targeted. null (Strength=Required) GoalLifecycleStatus ! » Describes the progression, or lack thereof, towards the goal against the target achievementStatus : CodeableConcept [0..1] « Indicates the progression, or lack thereof, towards the goal against the target. null (Strength=Preferred) GoalAchievementStatus ? » Indicates a category the goal falls within category : CodeableConcept [0..*] « Codes for grouping and sorting goals. null (Strength=Example) GoalCategory ?? » After meeting the goal, ongoing activity is needed to sustain the goal objective continuous : boolean [0..1] Identifies the mutually agreed level of importance associated with reaching/sustaining the goal priority : CodeableConcept [0..1] « The level of importance associated with a goal. 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] « 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. null (Strength=Example) SNOMEDCTClinicalFindings GoalDescription ?? » Identifies the patient, group or organization for whom the goal is being established subject : Reference [1..1] « Patient | Group | Organization » The date or event after which the goal should begin being pursued start[x] : Type DataType [0..1] « date | CodeableConcept ; Codes describing events that can trigger the initiation of a goal. null (Strength=Example) GoalStartEvent ?? » Identifies when the current status. achievement status took effect. I.e. When initially created, when achieved, when cancelled, improving, etc statusDate : date [0..1] Captures the reason for the current lifecycle status statusReason : string CodeableConcept [0..*] « null (Strength=Example) GoalStatusReason ?? » Individual who recorded the record and takes responsibility for its content recorder : Reference [0..1] « Practitioner | PractitionerRole | Patient | RelatedPerson | Group » Indicates whose goal this is - patient goal, practitioner goal, etc expressedBy source : Reference [0..1] « Patient | Practitioner | PractitionerRole | RelatedPerson | CareTeam | Group » The identified conditions and other health record elements resources that are intended to be addressed by provide the context for why the goal exists addresses : Reference [0..*] « Condition | Observation | MedicationStatement | NutritionOrder MedicationRequest | ServiceRequest NutritionOrder | ServiceRequest | RiskAssessment | Procedure | NutritionIntake » Any comments related to the goal note : Annotation [0..*] Acceptance Identifies the change (or lack of change) at the point when the status of the goal The person ororganization whose acceptance/priority is assessed being reflected outcomeCode participant : CodeableConcept Reference [0..*] [1..1] « Patient | Practitioner | RelatedPerson | The result of PractitionerRole | CareTeam | Organization | Group » Indicates whether the goal; e.g. "25% increase in shoulder mobility", "Anxiety reduced to moderate levels". "15 kg weight loss sustained over 6 months". (Strength=Example) specified individual has accepted the goal or not SNOMEDCTClinicalFindings status ?? : code [0..1] « null (Strength=Required) GoalAcceptStatus ! » Details of what's changed (or not changed) Indicates the relative priority assigned to the goal by the stakeholder outcomeReference priority : Reference CodeableConcept [0..*] [0..1] « Observation null (Strength=Example) GoalPriority ?? » Target The parameter whose value is being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level measure : CodeableConcept [0..1] « Codes to identify the value being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level. null (Strength=Example) LOINCCodes ?? » « This element has or is affected by some invariants C » 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 value. A CodeableConcept target value could be Positive, Negative, Abnormal, Normal, Present, Absent, Yes, No detail[x] : Type DataType [0..1] « Quantity | Range | CodeableConcept | string | boolean | integer | Ratio » « This element has or is affected by some invariants C » Indicates either the date or the duration after start by which the goal should be met due[x] : Type DataType [0..1] « date | Duration » Information about the acceptance and relative priority assigned to the goal by the patient, practitioners and other stakeholders acceptance [0..*] Indicates what should be done by when target [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>

 <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>
 <</subject>

 <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]>
 <
  <</measure>
  <|

 <acceptance>  <!-- 0..* Individual acceptance of goal -->
  <participant><!-- 1..1 Reference(CareTeam|Group|Organization|Patient|
    Practitioner|PractitionerRole|RelatedPerson) Individual or organization whose acceptance is reflected --></participant>

  <status value="[code]"/><!-- 0..1 agree | disagree | pending -->
  <priority><!-- 0..1 CodeableConcept Priority of goal for individual --></priority>
 </acceptance>
 <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>
 <
 <
 <|
   </expressedBy>
 <|
   </addresses>

 <statusDate value="[date]"/><!-- 0..1 When goal achievment status took effect -->
 <statusReason><!-- 0..* CodeableConcept Reason for current lifecycle status --></statusReason>
 <recorder><!-- 0..1 Reference(Group|Patient|Practitioner|PractitionerRole|
   RelatedPerson) Who recorded the goal --></recorder>

 <source><!-- 0..1 Reference(CareTeam|Group|Patient|Practitioner|PractitionerRole|
   RelatedPerson) Who's responsible for creating Goal? --></source>

 <addresses><!-- 0..* Reference(Condition|MedicationRequest|MedicationStatement|
   NutritionIntake|NutritionOrder|Observation|Procedure|RiskAssessment|
   ServiceRequest) Issues addressed by this goal --></addresses>
 <note><!-- 0..* Annotation Comments about the goal --></note>
 <</outcomeCode>
 <</outcomeReference>

</Goal>

JSON Template

{doco
  "resourceType" : "",

  "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 },
  "
    "

  "acceptance" : [{ // Individual acceptance of goal
    "participant" : { Reference(CareTeam|Group|Organization|Patient|
    Practitioner|PractitionerRole|RelatedPerson) }, // R!  Individual or organization whose acceptance is reflected

    "status" : "<code>", // agree | disagree | pending
    "priority" : { CodeableConcept } // Priority of goal for individual
  }],
  "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 achievment status took effect
  "statusReason" : [{ CodeableConcept }], // Reason for current lifecycle status
  "recorder" : { Reference(Group|Patient|Practitioner|PractitionerRole|
   RelatedPerson) }, // Who recorded the goal

  "source" : { Reference(CareTeam|Group|Patient|Practitioner|PractitionerRole|

   RelatedPerson) }, // Who's responsible for creating Goal?
  "|
   
  "
  "
  "

  "addresses" : [{ Reference(Condition|MedicationRequest|MedicationStatement|
   NutritionIntake|NutritionOrder|Observation|Procedure|RiskAssessment|
   ServiceRequest) }], // Issues addressed by this goal

  "note" : [{ Annotation }] // Comments about the goal

}

Turtle Template

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


[ a fhir:;

[ a fhir:Goal;

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

  # from 
  # from 
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  # . One of these 2
    fhir: ]
    fhir: ]
  fhir:
    fhir:
    # . One of these 7
      fhir: ]
      fhir: ]
      fhir: ]
      fhir: ]
      fhir: ]
      fhir: ]
      fhir: ]
    # . One of these 2
      fhir: ]
      fhir: ]
  ], ...;
  fhir:
  fhir:
  fhir:
  fhir:|
  
  fhir:
  fhir:
  fhir:

  # from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language
  # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir: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:acceptance ( [ # 0..* Individual acceptance of goal
    fhir:participant [ Reference(CareTeam|Group|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 1..1 Individual or organization whose acceptance is reflected
    fhir:status [ code ] ; # 0..1 agree | disagree | pending
    fhir:priority [ CodeableConcept ] ; # 0..1 Priority of goal for individual
  ] ... ) ;
  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 achievment status took effect
  fhir:statusReason  ( [ CodeableConcept ] ... ) ; # 0..* Reason for current lifecycle status
  fhir:recorder [ Reference(Group|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Who recorded the goal
  fhir:source [ Reference(CareTeam|Group|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Who's responsible for creating Goal?
  fhir:addresses  ( [ Reference(Condition|MedicationRequest|MedicationStatement|NutritionIntake|NutritionOrder|
  Observation|Procedure|RiskAssessment|ServiceRequest) ] ... ) ; # 0..* Issues addressed by this goal

  fhir:note  ( [ Annotation ] ... ) ; # 0..* Comments about the goal

]

Changes since Release 3 from both R4 and R4B

Goal
Goal.lifecycleStatus
  • Remove codes active , on-hold , completed
Goal.continuous
  • Added Element
Goal.acceptance
  • Added Element
Goal.acceptance.participant
  • Added Mandatory Element
Goal.achievementStatus Goal.acceptance.status
  • Added Element
Goal.subject Goal.acceptance.priority
  • Min Cardinality changed from 0 to 1 Added Element
Goal.target Goal.statusReason
  • Max Cardinality changed from 1 to *
  • Type changed from string to CodeableConcept
Goal.target.detail[x] Goal.recorder
  • Add Types string, boolean, integer, Ratio Added Element
Goal.expressedBy Goal.source
  • Renamed from expressedBy to source
  • Type Reference: Added Target Type PractitionerRole Types CareTeam, Group
Goal.addresses
  • Type Reference: Added Target Type ServiceRequest Types MedicationRequest, Procedure, NutritionIntake
Goal.outcomeCode
  • Type Reference: Removed Target Type ProcedureRequest Deleted (-> Goal.outcome)
Goal.status Goal.outcomeReference
  • deleted Deleted (-> Goal.outcome)

See the Full Difference for further information

This analysis is available for R4 as XML or JSON . See R3 <--> R4 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.) for R4B as XML or JSON .

 

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

Required Example Goal.target.detail[x] Goal.outcomeCode
Path Definition ValueSet Type Reference Documentation
Goal.lifecycleStatus GoalLifecycleStatus Required

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

Goal.achievementStatus GoalLifecycleStatus GoalAchievementStatus Goal.achievementStatus Preferred Indicates

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

Goal.category Codes for grouping and sorting goals. GoalCategory Example GoalCategory

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

Goal.priority The level of importance associated with a goal. GoalPriority Preferred GoalPriority

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

Goal.description 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. GoalDescription Example SNOMEDCTClinicalFindings

Example value set for Goal descriptions.

Goal.start[x] GoalStartEvent Example Codes describing

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

Goal.acceptance.status GoalStartEvent GoalAcceptStatus (a valid code from Goal acceptance status code system ) Goal.target.measure Required

Codes to that identify whether the value being tracked, e.g. body weight, blood pressure, goal has been accepted or hemoglobin A1c level. not.

Goal.acceptance.priority GoalPriority Example LOINCCodes

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

Goal.target.measure Codes to identify the target value of the focus to be achieved to signify the fulfillment of the goal. Unknown LOINCCodes (a valid code from LOINC icon ) Example No details provided yet

This value set includes all LOINC codes

Goal.statusReason 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". GoalStatusReason Example SNOMEDCTClinicalFindings

Codes to identify the reason for current lifecycle status.

id UniqueKey Level Location Description Expression
gol-1 img  gol-1 Rule Goal.target Goal.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.

Name Type Description Expression In Common
achievement-status token in-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable Goal.achievementStatus
addresses reference Issues addressed by this goal Goal.addresses
( Condition , RiskAssessment , MedicationRequest , NutritionOrder , Observation , Procedure , NutritionIntake , MedicationStatement , ServiceRequest )
category token E.g. Treatment, dietary, behavioral, etc. Goal.category
description token Code or text describing goal Goal.description
identifier token External Ids for this goal Goal.identifier 30 59 Resources
lifecycle-status token proposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected Goal.lifecycleStatus
patient reference Who this goal is intended for Goal.subject.where(resolve() is Patient)
( Patient )
33 61 Resources
start-date date When goal pursuit begins (Goal.start as date) (Goal.start.ofType(date))
subject reference Who this goal is intended for Goal.subject
( Group , Organization , Patient )
target-date date Reach goal on or before (Goal.target.due as date) (Goal.target.due.ofType(date))
target-measure token The parameter whose value is being tracked Goal.target.measure