SDOH Clinical Care
2.2.0 - STU 2.2 United States of America flag

This page is part of the SDOH Clinical Care for Multiple Domains (v2.2.0: STU 2.2) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: SDOHCCGoal - Detailed Descriptions

Page standards status: Trial-use

Definitions for the SDOHCC-Goal resource profile.

Guidance on how to interpret the contents of this table can be found here

0. Goal
Definition

For representation of SDOH goals.

ShortDescribes the intended SDOH-related objective(s) for a patient.
Comments

Many of the SDOHCC profiles reference one another. One flow supported by this IG is that QuestionnaireResponses result in Observations that can be used as evidence for Conditions that can lead to Goals, ServiceRequests and Procedures. However, alternatives paths are also possible.

2. Goal.achievementStatus
Must Supporttrue
4. Goal.category
SlicingThis element introduces a set of slices on Goal.category. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ $this
  • 6. Goal.category:SDOH
    Slice NameSDOH
    Definition

    An SDOH category assigned to the goal.

    Shorte.g., food-insecurity | transportation-insecurity
    Control0..*
    BindingThe codes SHALL be taken from SDOHCC ValueSet SDOH Category
    (required to http://hl7.org/fhir/us/sdoh-clinicalcare/ValueSet/SDOHCC-ValueSetSDOHCategory)

    Codes for high-level SDOH categories.

    Must Supporttrue
    Requirements

    Codes from this value set can be used to assign one or more SDOH categories (e.g., food-insecurity, transportation-insecurity, etc.) to a goal. It is recommended that SDOH category codes be used to facilitate searching for SDOH-related goals.

    8. Goal.description
    Comments

    If no code is available, use CodeableConcept.text.

    BindingThe codes SHOULD be taken from SDOHCC ValueSet LOINC SNOMEDCT
    (preferred to http://hl7.org/fhir/us/sdoh-clinicalcare/ValueSet/SDOHCC-ValueSetLOINCSNOMEDCT)

    Codes providing the details of a particular goal. In many systems, only the text element will be used.

    Additional BindingsPurposeUsage
    SDOHCC ValueSet LOINC SNOMEDCTPreferredGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): digital-access
    SDOHCC ValueSet LOINC SNOMEDCTPreferredGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): digital-literacy
    Less Than High School Education Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): educational-attainment
    Elder Abuse Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): elder-abuse
    Unemployment Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): employment-status
    Financial Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): financial-insecurity
    Food Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): food-insecurity
    Health Insurance Coverage Status Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): health-insurance-coverage-status
    Homelessness Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): homelessness
    Housing Instability Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): housing-instability
    Inadequate Housing Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): inadequate-housing
    Intimate Partner Violence Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): intimate-partner-violence
    Material Hardship Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): material-hardship
    Medical Cost Burden Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): medical-cost-burden
    Health Literacy Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): personal-health-literacy
    Social Connection Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): social-connection
    Stress Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): stress
    Transportation Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): transportation-insecurity
    Utility Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): utility-insecurity
    Veteran Status Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): veteran-status
    SDOHCC ValueSet LOINC SNOMEDCTPreferredGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): sdoh-category-unspecified
    10. Goal.subject
    Definition

    Identifies the patient for whom the goal is being established.

    12. Goal.target
    14. Goal.target.measure
    BindingThe codes SHOULD be taken from LOINCCodes
    (preferred to http://hl7.org/fhir/ValueSet/observation-codes)

    Codes to identify the value being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level.

    16. Goal.statusDate
    Comments

    To see the date for past statuses, query history.

    The Goal Resource does not clearly specify whether Goal.statusDate applies to Goal.achievementStatus or to Goal.lifecycleStatus. For consistent use in the SDOH context, it is recommended that Goal.statusDate be synchronized with Goal.achievementStatus.

    18. Goal.addresses
    TypeReference(Condition, Observation, RiskAssessment)
    SlicingThis element introduces a set of slices on Goal.addresses. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • profile @ resolve()
    • 20. Goal.addresses:SupportedAddresses
      Slice NameSupportedAddresses
      Control0..*
      TypeReference(SDOHCC Condition, SDOHCC Observation Screening Response, SDOHCC Observation Assessment)
      Must Supporttrue
      Must Support TypesNo must-support rules about the choice of types/profiles
      Requirements

      When a goal addresses SDOH screening response observations generated from a survey/questionnaire, SDOH assessment observations, or SDOH conditions, Goal.addresses should reference instances that comply with the SDOHCC Observation Screening Response, SDOHCC Condition, or SDOHCC Observation Assessment profiles. However, references to other instance types are also possible.

      22. Goal.outcomeCode
      Comments

      Note that this should not duplicate the goal status.

      Information represented by Goal.outcomeCode may overlap significantly with information represented by Goal.outcomeReference. Multiple approaches to representing the same information may negatively impact interoperability. Therefore, where there is significant overlap in information provided by Goal.outcomeCode and Goal.outcomeReference, it is recommended that Goal.outcomeReference should be used to provide details of goal outcomes.

      BindingThe codes SHOULD be taken from SDOHCC ValueSet LOINC SNOMEDCT
      (preferred to http://hl7.org/fhir/us/sdoh-clinicalcare/ValueSet/SDOHCC-ValueSetLOINCSNOMEDCT)

      The result of the goal; e.g., "Food security", "Has access to a car ".

      24. Goal.outcomeReference
      Comments

      The goal outcome is independent of the outcome of the related activities. For example, if the Goal is to achieve a target body weight of 150 lb and a care plan activity is defined to diet, then the care plan’s activity outcome could be calories consumed whereas goal outcome is an observation for the actual body weight measured.

      Additionally, see comments for Goal.outcomeCode.

      SlicingThis element introduces a set of slices on Goal.outcomeReference. The slices areUnordered and Open, and can be differentiated using the following discriminators:
      • profile @ resolve()
      • 26. Goal.outcomeReference:SupportedOutcomeReference
        Slice NameSupportedOutcomeReference
        Control0..*
        TypeReference(SDOHCC Observation Screening Response, SDOHCC Observation Assessment)
        Must Supporttrue
        Must Support TypesNo must-support rules about the choice of types/profiles
        Requirements

        When a goal outcome can be represented by SDOH screening response observations or SDOH assessment observations, Goal.outcome should reference instances that comply with the SDOHCC Observation Screening Response or SDOHCC Observation Assessment profiles. However, references to other instance types are also possible.

        Guidance on how to interpret the contents of this table can be found here

        0. Goal
        Definition

        For representation of SDOH goals.


        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.

        ShortDescribes the intended SDOH-related objective(s) for a patient.Describes the intended objective(s) for a patient, group or organization
        Comments

        Many of the SDOHCC profiles reference one another. One flow supported by this IG is that QuestionnaireResponses result in Observations that can be used as evidence for Conditions that can lead to Goals, ServiceRequests and Procedures. However, alternatives paths are also possible.


        Goal can be achieving a particular change or merely maintaining a current state or even slowing a decline.

        Control0..*
        Is Modifierfalse
        Must Supportfalse
        Summaryfalse
        Invariantsdom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty())
        dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource (contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty())
        dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated (contained.meta.versionId.empty() and contained.meta.lastUpdated.empty())
        dom-5: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty())
        dom-6: A resource should have narrative for robust management (text.`div`.exists())
        2. Goal.implicitRules
        Definition

        A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

        ShortA set of rules under which this content was created
        Comments

        Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

        Control0..1
        Typeuri
        Is Modifiertrue because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        4. Goal.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
        Summaryfalse
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        6. Goal.lifecycleStatus
        Definition

        The state of the goal throughout its lifecycle.

        Shortproposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
        Comments

        This element is labeled as a modifier because the lifecycleStatus contains codes that mark the resource as not currently valid.

        Control1..1
        BindingThe codes SHALL be taken from GoalLifecycleStatushttp://hl7.org/fhir/ValueSet/goal-status|4.0.1
        (required to http://hl7.org/fhir/ValueSet/goal-status)
        Typecode
        Is Modifiertrue because This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Must Supporttrue
        Summarytrue
        Requirements

        Allows knowing whether goal needs to be further tracked.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        8. Goal.achievementStatus
        Definition

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

        Shortin-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
        Control0..1
        BindingThe codes SHOULD be taken from GoalAchievementStatushttp://hl7.org/fhir/ValueSet/goal-achievement
        (preferred to http://hl7.org/fhir/ValueSet/goal-achievement)

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

        TypeCodeableConcept
        Is Modifierfalse
        Must Supporttrue
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        10. Goal.category
        Definition

        Indicates a category the goal falls within.

        ShortE.g. Treatment, dietary, behavioral, etc.
        Control0..*
        BindingFor example codes, see GoalCategoryhttp://hl7.org/fhir/ValueSet/goal-category
        (example to http://hl7.org/fhir/ValueSet/goal-category)

        Codes for grouping and sorting goals.

        TypeCodeableConcept
        Is Modifierfalse
        Summarytrue
        Requirements

        Allows goals to be filtered and sorted.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        SlicingThis element introduces a set of slices on Goal.category. The slices areUnordered and Open, and can be differentiated using the following discriminators:
        • value @ $this
        • 12. Goal.category:SDOH
          Slice NameSDOH
          Definition

          An SDOH category assigned to the goal.


          Indicates a category the goal falls within.

          Shorte.g., food-insecurity | transportation-insecurityE.g. Treatment, dietary, behavioral, etc.
          Control0..*
          BindingThe codes SHALL be taken from For example codes, see SDOHCC ValueSet SDOH Categoryhttp://hl7.org/fhir/ValueSet/goal-category
          (required to http://hl7.org/fhir/us/sdoh-clinicalcare/ValueSet/SDOHCC-ValueSetSDOHCategory)

          Codes for high-level SDOH categories.


          Codes for grouping and sorting goals.

          TypeCodeableConcept
          Is Modifierfalse
          Must Supporttrue
          Summarytrue
          Requirements

          Codes from this value set can be used to assign one or more SDOH categories (e.g., food-insecurity, transportation-insecurity, etc.) to a goal. It is recommended that SDOH category codes be used to facilitate searching for SDOH-related goals.


          Allows goals to be filtered and sorted.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          14. Goal.description
          Definition

          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".

          ShortCode or text describing goal
          Comments

          If no code is available, use CodeableConcept.text.


          If no code is available, use CodeableConcept.text.

          Control1..1
          BindingThe codes SHOULD be taken from For example codes, see SDOHCC ValueSet LOINC SNOMEDCThttp://hl7.org/fhir/ValueSet/clinical-findings
          (preferred to http://hl7.org/fhir/us/sdoh-clinicalcare/ValueSet/SDOHCC-ValueSetLOINCSNOMEDCT)

          Codes providing the details of a particular goal. In many systems, only the text element will be used.


          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.

          Additional BindingsPurposeUsage
          SDOHCC ValueSet LOINC SNOMEDCTPreferredGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): digital-access
          SDOHCC ValueSet LOINC SNOMEDCTPreferredGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): digital-literacy
          Less Than High School Education Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): educational-attainment
          Elder Abuse Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): elder-abuse
          Unemployment Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): employment-status
          Financial Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): financial-insecurity
          Food Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): food-insecurity
          Health Insurance Coverage Status Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): health-insurance-coverage-status
          Homelessness Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): homelessness
          Housing Instability Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): housing-instability
          Inadequate Housing Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): inadequate-housing
          Intimate Partner Violence Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): intimate-partner-violence
          Material Hardship Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): material-hardship
          Medical Cost Burden Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): medical-cost-burden
          Health Literacy Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): personal-health-literacy
          Social Connection Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): social-connection
          Stress Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): stress
          Transportation Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): transportation-insecurity
          Utility Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): utility-insecurity
          Veteran Status Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): veteran-status
          SDOHCC ValueSet LOINC SNOMEDCTPreferredGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): sdoh-category-unspecified
          TypeCodeableConcept
          Is Modifierfalse
          Must Supporttrue
          Summarytrue
          Requirements

          Without a description of what's trying to be achieved, element has no purpose.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          16. Goal.subject
          Definition

          Identifies the patient for whom the goal is being established.


          Identifies the patient, group or organization for whom the goal is being established.

          ShortWho this goal is intended for
          Control1..1
          TypeReference(US Core Patient Profile, Patient, Group, Organization)
          Is Modifierfalse
          Must Supporttrue
          Summarytrue
          Requirements

          Subject is optional to support annonymized reporting.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          18. Goal.target
          Definition

          Indicates what should be done by when.

          ShortTarget outcome for the goal
          Comments

          When multiple targets are present for a single goal instance, all targets must be met for the overall goal to be met.

          Control0..*
          This element is affected by the following invariants: gol-1
          TypeBackboneElement
          Is Modifierfalse
          Must Supporttrue
          Summaryfalse
          Requirements

          Allows the progress of the goal to be monitored against an observation or due date. Target is 0..* to support Observations with multiple components, such as blood pressure goals with both a systolic and diastolic target.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          gol-1: Goal.target.measure is required if Goal.target.detail is populated ((detail.exists() and measure.exists()) or detail.exists().not())
          gol-1: Goal.target.measure is required if Goal.target.detail is populated ((detail.exists() and measure.exists()) or detail.exists().not())
          20. Goal.target.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          22. Goal.target.measure
          Definition

          The parameter whose value is being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level.

          ShortThe parameter whose value is being tracked
          Control0..1
          This element is affected by the following invariants: gol-1
          BindingThe codes SHOULD be taken from For example codes, see LOINCCodeshttp://hl7.org/fhir/ValueSet/observation-codes
          (preferred to http://hl7.org/fhir/ValueSet/observation-codes)

          Codes to identify the value being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level.

          TypeCodeableConcept
          Is Modifierfalse
          Summarytrue
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          24. Goal.target.due[x]
          Definition

          Indicates either the date or the duration after start by which the goal should be met.

          ShortReach goal on or before
          Control0..1
          Typedate, Duration
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summarytrue
          Requirements

          Identifies when the goal should be evaluated.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          SlicingThis element introduces a set of slices on Goal.target.due[x]. The slices areUnordered and Closed, and can be differentiated using the following discriminators:
          • type @ $this
          • 26. Goal.target.due[x]:dueDate
            Slice NamedueDate
            Definition

            Indicates either the date or the duration after start by which the goal should be met.

            ShortReach goal on or before
            Control0..1
            Typedate, Duration
            [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
            Is Modifierfalse
            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
            Must Supporttrue
            Summarytrue
            Requirements

            Identifies when the goal should be evaluated.

            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
            28. Goal.statusDate
            Definition

            Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc.

            ShortWhen goal status took effect
            Comments

            To see the date for past statuses, query history.

            The Goal Resource does not clearly specify whether Goal.statusDate applies to Goal.achievementStatus or to Goal.lifecycleStatus. For consistent use in the SDOH context, it is recommended that Goal.statusDate be synchronized with Goal.achievementStatus.


            To see the date for past statuses, query history.

            Control0..1
            Typedate
            Is Modifierfalse
            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
            Summarytrue
            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
            30. Goal.addresses
            Definition

            The identified conditions and other health record elements that are intended to be addressed by the goal.

            ShortIssues addressed by this goal
            Control0..*
            TypeReference(Condition, Observation, RiskAssessment, MedicationStatement, NutritionOrder, ServiceRequest)
            Is Modifierfalse
            Summaryfalse
            Requirements

            Allows specific goals to explicitly linked to the concerns they're dealing with - makes the goal more understandable.

            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
            SlicingThis element introduces a set of slices on Goal.addresses. The slices areUnordered and Open, and can be differentiated using the following discriminators:
            • profile @ resolve()
            • 32. Goal.addresses:SupportedAddresses
              Slice NameSupportedAddresses
              Definition

              The identified conditions and other health record elements that are intended to be addressed by the goal.

              ShortIssues addressed by this goal
              Control0..*
              TypeReference(SDOHCC Condition, SDOHCC Observation Screening Response, SDOHCC Observation Assessment, Condition, Observation, MedicationStatement, NutritionOrder, ServiceRequest, RiskAssessment)
              Is Modifierfalse
              Must Supporttrue
              Must Support TypesNo must-support rules about the choice of types/profiles
              Summaryfalse
              Requirements

              When a goal addresses SDOH screening response observations generated from a survey/questionnaire, SDOH assessment observations, or SDOH conditions, Goal.addresses should reference instances that comply with the SDOHCC Observation Screening Response, SDOHCC Condition, or SDOHCC Observation Assessment profiles. However, references to other instance types are also possible.


              Allows specific goals to explicitly linked to the concerns they're dealing with - makes the goal more understandable.

              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              34. Goal.outcomeCode
              Definition

              Identifies the change (or lack of change) at the point when the status of the goal is assessed.

              ShortWhat result was achieved regarding the goal?
              Comments

              Note that this should not duplicate the goal status.

              Information represented by Goal.outcomeCode may overlap significantly with information represented by Goal.outcomeReference. Multiple approaches to representing the same information may negatively impact interoperability. Therefore, where there is significant overlap in information provided by Goal.outcomeCode and Goal.outcomeReference, it is recommended that Goal.outcomeReference should be used to provide details of goal outcomes.


              Note that this should not duplicate the goal status.

              Control0..*
              BindingThe codes SHOULD be taken from For example codes, see SDOHCC ValueSet LOINC SNOMEDCThttp://hl7.org/fhir/ValueSet/clinical-findings
              (preferred to http://hl7.org/fhir/us/sdoh-clinicalcare/ValueSet/SDOHCC-ValueSetLOINCSNOMEDCT)

              The result of the goal; e.g., "Food security", "Has access to a car ".


              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".

              TypeCodeableConcept
              Is Modifierfalse
              Summaryfalse
              Requirements

              Outcome tracking is a key aspect of care planning.

              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              36. Goal.outcomeReference
              Definition

              Details of what's changed (or not changed).

              ShortObservation that resulted from goal
              Comments

              The goal outcome is independent of the outcome of the related activities. For example, if the Goal is to achieve a target body weight of 150 lb and a care plan activity is defined to diet, then the care plan’s activity outcome could be calories consumed whereas goal outcome is an observation for the actual body weight measured.

              Additionally, see comments for Goal.outcomeCode.


              The goal outcome is independent of the outcome of the related activities. For example, if the Goal is to achieve a target body weight of 150 lb and a care plan activity is defined to diet, then the care plan’s activity outcome could be calories consumed whereas goal outcome is an observation for the actual body weight measured.

              Control0..*
              TypeReference(Observation)
              Is Modifierfalse
              Summaryfalse
              Requirements

              Outcome tracking is a key aspect of care planning.

              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              SlicingThis element introduces a set of slices on Goal.outcomeReference. The slices areUnordered and Open, and can be differentiated using the following discriminators:
              • profile @ resolve()
              • 38. Goal.outcomeReference:SupportedOutcomeReference
                Slice NameSupportedOutcomeReference
                Definition

                Details of what's changed (or not changed).

                ShortObservation that resulted from goal
                Comments

                The goal outcome is independent of the outcome of the related activities. For example, if the Goal is to achieve a target body weight of 150 lb and a care plan activity is defined to diet, then the care plan’s activity outcome could be calories consumed whereas goal outcome is an observation for the actual body weight measured.

                Control0..*
                TypeReference(SDOHCC Observation Screening Response, SDOHCC Observation Assessment, Observation)
                Is Modifierfalse
                Must Supporttrue
                Must Support TypesNo must-support rules about the choice of types/profiles
                Summaryfalse
                Requirements

                When a goal outcome can be represented by SDOH screening response observations or SDOH assessment observations, Goal.outcome should reference instances that comply with the SDOHCC Observation Screening Response or SDOHCC Observation Assessment profiles. However, references to other instance types are also possible.


                Outcome tracking is a key aspect of care planning.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))

                Guidance on how to interpret the contents of this table can be found here

                0. Goal
                Definition

                For representation of SDOH goals.

                ShortDescribes the intended SDOH-related objective(s) for a patient.
                Comments

                Many of the SDOHCC profiles reference one another. One flow supported by this IG is that QuestionnaireResponses result in Observations that can be used as evidence for Conditions that can lead to Goals, ServiceRequests and Procedures. However, alternatives paths are also possible.

                Control0..*
                Is Modifierfalse
                Must Supportfalse
                Summaryfalse
                Invariantsdom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty())
                dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource (contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty())
                dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated (contained.meta.versionId.empty() and contained.meta.lastUpdated.empty())
                dom-5: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty())
                dom-6: A resource should have narrative for robust management (text.`div`.exists())
                2. Goal.id
                Definition

                The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

                ShortLogical id of this artifact
                Comments

                The only time that a resource does not have an id is when it is being submitted to the server using a create operation.

                Control0..1
                Typeid
                Is Modifierfalse
                Summarytrue
                4. Goal.meta
                Definition

                The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

                ShortMetadata about the resource
                Control0..1
                TypeMeta
                Is Modifierfalse
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                6. Goal.implicitRules
                Definition

                A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

                ShortA set of rules under which this content was created
                Comments

                Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

                Control0..1
                Typeuri
                Is Modifiertrue because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                8. Goal.language
                Definition

                The base language in which the resource is written.

                ShortLanguage of the resource content
                Comments

                Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

                Control0..1
                BindingThe codes SHOULD be taken from CommonLanguages
                (preferred to http://hl7.org/fhir/ValueSet/languages)

                A human language.

                Additional BindingsPurpose
                AllLanguagesMax Binding
                Typecode
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                10. Goal.text
                Definition

                A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.

                ShortText summary of the resource, for human interpretation
                Comments

                Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.

                Control0..1
                TypeNarrative
                Is Modifierfalse
                Summaryfalse
                Alternate Namesnarrative, html, xhtml, display
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                12. Goal.contained
                Definition

                These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

                ShortContained, inline Resources
                Comments

                This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.

                Control0..*
                TypeResource
                Is Modifierfalse
                Summaryfalse
                Alternate Namesinline resources, anonymous resources, contained resources
                14. Goal.extension
                Definition

                May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                ShortAdditional content defined by implementations
                Comments

                There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                Control0..*
                TypeExtension
                Is Modifierfalse
                Summaryfalse
                Alternate Namesextensions, user content
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                16. Goal.modifierExtension
                Definition

                May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                ShortExtensions that cannot be ignored
                Comments

                There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                Control0..*
                TypeExtension
                Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
                Summaryfalse
                Requirements

                Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                Alternate Namesextensions, user content
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                18. Goal.identifier
                Definition

                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.

                ShortExternal Ids for this goal
                Comments

                This is a business identifier, not a resource identifier (see discussion). It is best practice for the identifier to only appear on a single resource instance, however business practices may occasionally dictate that multiple resource instances with the same identifier can exist - possibly even with different resource types. For example, multiple Patient and a Person resource instance might share the same social insurance number.

                NoteThis is a business identifier, not a resource identifier (see discussion)
                Control0..*
                TypeIdentifier
                Is Modifierfalse
                Summaryfalse
                Requirements

                Allows identification of the goal as it is known by various participating systems and in a way that remains consistent across servers.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                20. Goal.lifecycleStatus
                Definition

                The state of the goal throughout its lifecycle.

                Shortproposed | planned | accepted | active | on-hold | completed | cancelled | entered-in-error | rejected
                Comments

                This element is labeled as a modifier because the lifecycleStatus contains codes that mark the resource as not currently valid.

                Control1..1
                BindingThe codes SHALL be taken from GoalLifecycleStatus
                (required to http://hl7.org/fhir/ValueSet/goal-status)
                Typecode
                Is Modifiertrue because This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Must Supporttrue
                Summarytrue
                Requirements

                Allows knowing whether goal needs to be further tracked.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                22. Goal.achievementStatus
                Definition

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

                Shortin-progress | improving | worsening | no-change | achieved | sustaining | not-achieved | no-progress | not-attainable
                Control0..1
                BindingThe codes SHOULD be taken from GoalAchievementStatus
                (preferred to http://hl7.org/fhir/ValueSet/goal-achievement)

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

                TypeCodeableConcept
                Is Modifierfalse
                Must Supporttrue
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                24. Goal.category
                Definition

                Indicates a category the goal falls within.

                ShortE.g. Treatment, dietary, behavioral, etc.
                Control0..*
                BindingFor example codes, see GoalCategory
                (example to http://hl7.org/fhir/ValueSet/goal-category)

                Codes for grouping and sorting goals.

                TypeCodeableConcept
                Is Modifierfalse
                Summarytrue
                Requirements

                Allows goals to be filtered and sorted.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                SlicingThis element introduces a set of slices on Goal.category. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                • value @ $this
                • 26. Goal.category:SDOH
                  Slice NameSDOH
                  Definition

                  An SDOH category assigned to the goal.

                  Shorte.g., food-insecurity | transportation-insecurity
                  Control0..*
                  BindingThe codes SHALL be taken from SDOHCC ValueSet SDOH Category
                  (required to http://hl7.org/fhir/us/sdoh-clinicalcare/ValueSet/SDOHCC-ValueSetSDOHCategory)

                  Codes for high-level SDOH categories.

                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supporttrue
                  Summarytrue
                  Requirements

                  Codes from this value set can be used to assign one or more SDOH categories (e.g., food-insecurity, transportation-insecurity, etc.) to a goal. It is recommended that SDOH category codes be used to facilitate searching for SDOH-related goals.

                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  28. Goal.priority
                  Definition

                  Identifies the mutually agreed level of importance associated with reaching/sustaining the goal.

                  Shorthigh-priority | medium-priority | low-priority
                  Comments

                  Extensions are available to track priorities as established by each participant (i.e. Priority from the patient's perspective, different practitioners' perspectives, family member's perspectives)

                  The ordinal extension on Coding can be used to convey a numerically comparable ranking to priority. (Keep in mind that different coding systems may use a "low value=important".

                  Control0..1
                  BindingThe codes SHOULD be taken from GoalPriority
                  (preferred to http://hl7.org/fhir/ValueSet/goal-priority)

                  The level of importance associated with a goal.

                  TypeCodeableConcept
                  Is Modifierfalse
                  Summarytrue
                  Requirements

                  Used for sorting and presenting goals.

                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  30. Goal.description
                  Definition

                  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".

                  ShortCode or text describing goal
                  Comments

                  If no code is available, use CodeableConcept.text.

                  Control1..1
                  BindingThe codes SHOULD be taken from SDOHCC ValueSet LOINC SNOMEDCT
                  (preferred to http://hl7.org/fhir/us/sdoh-clinicalcare/ValueSet/SDOHCC-ValueSetLOINCSNOMEDCT)

                  Codes providing the details of a particular goal. In many systems, only the text element will be used.

                  Additional BindingsPurposeUsage
                  SDOHCC ValueSet LOINC SNOMEDCTPreferredGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): digital-access
                  SDOHCC ValueSet LOINC SNOMEDCTPreferredGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): digital-literacy
                  Less Than High School Education Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): educational-attainment
                  Elder Abuse Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): elder-abuse
                  Unemployment Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): employment-status
                  Financial Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): financial-insecurity
                  Food Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): food-insecurity
                  Health Insurance Coverage Status Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): health-insurance-coverage-status
                  Homelessness Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): homelessness
                  Housing Instability Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): housing-instability
                  Inadequate Housing Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): inadequate-housing
                  Intimate Partner Violence Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): intimate-partner-violence
                  Material Hardship Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): material-hardship
                  Medical Cost Burden Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): medical-cost-burden
                  Health Literacy Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): personal-health-literacy
                  Social Connection Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): social-connection
                  Stress Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): stress
                  Transportation Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): transportation-insecurity
                  Utility Insecurity Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): utility-insecurity
                  Veteran Status Goals .ExtensibleGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): veteran-status
                  SDOHCC ValueSet LOINC SNOMEDCTPreferredGoal.category (Details: SDOHCC-Goal code Goal.category = ' Goal.category ', stated as ' null '): sdoh-category-unspecified
                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supporttrue
                  Summarytrue
                  Requirements

                  Without a description of what's trying to be achieved, element has no purpose.

                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  32. Goal.subject
                  Definition

                  Identifies the patient for whom the goal is being established.

                  ShortWho this goal is intended for
                  Control1..1
                  TypeReference(US Core Patient Profile)
                  Is Modifierfalse
                  Must Supporttrue
                  Summarytrue
                  Requirements

                  Subject is optional to support annonymized reporting.

                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  34. Goal.start[x]
                  Definition

                  The date or event after which the goal should begin being pursued.

                  ShortWhen goal pursuit begins
                  Control0..1
                  BindingFor example codes, see GoalStartEvent
                  (example to http://hl7.org/fhir/ValueSet/goal-start-event)

                  Codes describing events that can trigger the initiation of a goal.

                  TypeChoice of: date, CodeableConcept
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Summarytrue
                  Requirements

                  Goals can be established prior to there being an intention to start pursuing them; e.g. Goals for post-surgical recovery established prior to surgery.

                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  36. Goal.target
                  Definition

                  Indicates what should be done by when.

                  ShortTarget outcome for the goal
                  Comments

                  When multiple targets are present for a single goal instance, all targets must be met for the overall goal to be met.

                  Control0..*
                  This element is affected by the following invariants: gol-1
                  TypeBackboneElement
                  Is Modifierfalse
                  Must Supporttrue
                  Summaryfalse
                  Requirements

                  Allows the progress of the goal to be monitored against an observation or due date. Target is 0..* to support Observations with multiple components, such as blood pressure goals with both a systolic and diastolic target.

                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  gol-1: Goal.target.measure is required if Goal.target.detail is populated ((detail.exists() and measure.exists()) or detail.exists().not())
                  38. Goal.target.id
                  Definition

                  Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                  ShortUnique id for inter-element referencing
                  Control0..1
                  Typestring
                  Is Modifierfalse
                  XML FormatIn the XML format, this property is represented as an attribute.
                  Summaryfalse
                  40. Goal.target.extension
                  Definition

                  May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                  ShortAdditional content defined by implementations
                  Comments

                  There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                  Control0..*
                  TypeExtension
                  Is Modifierfalse
                  Summaryfalse
                  Alternate Namesextensions, user content
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  42. Goal.target.modifierExtension
                  Definition

                  May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                  Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                  ShortExtensions that cannot be ignored even if unrecognized
                  Comments

                  There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                  Control0..*
                  TypeExtension
                  Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                  Summarytrue
                  Requirements

                  Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                  Alternate Namesextensions, user content, modifiers
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  44. Goal.target.measure
                  Definition

                  The parameter whose value is being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level.

                  ShortThe parameter whose value is being tracked
                  Control0..1
                  This element is affected by the following invariants: gol-1
                  BindingThe codes SHOULD be taken from LOINCCodes
                  (preferred to http://hl7.org/fhir/ValueSet/observation-codes)

                  Codes to identify the value being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level.

                  TypeCodeableConcept
                  Is Modifierfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  46. Goal.target.detail[x]
                  Definition

                  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.

                  ShortThe target value to be achieved
                  Comments

                  A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Goal.target.measure defines a coded value.

                  Control0..1
                  This element is affected by the following invariants: gol-1
                  Binding

                  Codes to identify the target value of the focus to be achieved to signify the fulfillment of the goal.

                  TypeChoice of: Quantity, Range, CodeableConcept, string, boolean, integer, Ratio
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  48. Goal.target.due[x]
                  Definition

                  Indicates either the date or the duration after start by which the goal should be met.

                  ShortReach goal on or before
                  Control0..1
                  Typedate
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Summarytrue
                  Requirements

                  Identifies when the goal should be evaluated.

                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  SlicingThis element introduces a set of slices on Goal.target.due[x]. The slices areUnordered and Closed, and can be differentiated using the following discriminators:
                  • type @ $this
                  • 50. Goal.target.due[x]:dueDate
                    Slice NamedueDate
                    Definition

                    Indicates either the date or the duration after start by which the goal should be met.

                    ShortReach goal on or before
                    Control0..1
                    Typedate
                    [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Must Supporttrue
                    Summarytrue
                    Requirements

                    Identifies when the goal should be evaluated.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    52. Goal.statusDate
                    Definition

                    Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc.

                    ShortWhen goal status took effect
                    Comments

                    To see the date for past statuses, query history.

                    The Goal Resource does not clearly specify whether Goal.statusDate applies to Goal.achievementStatus or to Goal.lifecycleStatus. For consistent use in the SDOH context, it is recommended that Goal.statusDate be synchronized with Goal.achievementStatus.

                    Control0..1
                    Typedate
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    54. Goal.statusReason
                    Definition

                    Captures the reason for the current status.

                    ShortReason for current status
                    Comments

                    This will typically be captured for statuses such as rejected, on-hold or cancelled, but could be present for others.

                    Control0..1
                    Typestring
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    56. Goal.expressedBy
                    Definition

                    Indicates whose goal this is - patient goal, practitioner goal, etc.

                    ShortWho's responsible for creating Goal?
                    Comments

                    This is the individual responsible for establishing the goal, not necessarily who recorded it. (For that, use the Provenance resource.).

                    Control0..1
                    TypeReference(Patient, Practitioner, PractitionerRole, RelatedPerson)
                    Is Modifierfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    58. Goal.addresses
                    Definition

                    The identified conditions and other health record elements that are intended to be addressed by the goal.

                    ShortIssues addressed by this goal
                    Control0..*
                    TypeReference(Condition, Observation, RiskAssessment)
                    Is Modifierfalse
                    Summaryfalse
                    Requirements

                    Allows specific goals to explicitly linked to the concerns they're dealing with - makes the goal more understandable.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    SlicingThis element introduces a set of slices on Goal.addresses. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                    • profile @ resolve()
                    • 60. Goal.addresses:SupportedAddresses
                      Slice NameSupportedAddresses
                      Definition

                      The identified conditions and other health record elements that are intended to be addressed by the goal.

                      ShortIssues addressed by this goal
                      Control0..*
                      TypeReference(SDOHCC Condition, SDOHCC Observation Screening Response, SDOHCC Observation Assessment)
                      Is Modifierfalse
                      Must Supporttrue
                      Must Support TypesNo must-support rules about the choice of types/profiles
                      Summaryfalse
                      Requirements

                      When a goal addresses SDOH screening response observations generated from a survey/questionnaire, SDOH assessment observations, or SDOH conditions, Goal.addresses should reference instances that comply with the SDOHCC Observation Screening Response, SDOHCC Condition, or SDOHCC Observation Assessment profiles. However, references to other instance types are also possible.

                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      62. Goal.note
                      Definition

                      Any comments related to the goal.

                      ShortComments about the goal
                      Comments

                      May be used for progress notes, concerns or other related information that doesn't actually describe the goal itself.

                      Control0..*
                      TypeAnnotation
                      Is Modifierfalse
                      Summaryfalse
                      Requirements

                      There's a need to capture information about the goal that doesn't actually describe the goal.

                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      64. Goal.outcomeCode
                      Definition

                      Identifies the change (or lack of change) at the point when the status of the goal is assessed.

                      ShortWhat result was achieved regarding the goal?
                      Comments

                      Note that this should not duplicate the goal status.

                      Information represented by Goal.outcomeCode may overlap significantly with information represented by Goal.outcomeReference. Multiple approaches to representing the same information may negatively impact interoperability. Therefore, where there is significant overlap in information provided by Goal.outcomeCode and Goal.outcomeReference, it is recommended that Goal.outcomeReference should be used to provide details of goal outcomes.

                      Control0..*
                      BindingThe codes SHOULD be taken from SDOHCC ValueSet LOINC SNOMEDCT
                      (preferred to http://hl7.org/fhir/us/sdoh-clinicalcare/ValueSet/SDOHCC-ValueSetLOINCSNOMEDCT)

                      The result of the goal; e.g., "Food security", "Has access to a car ".

                      TypeCodeableConcept
                      Is Modifierfalse
                      Summaryfalse
                      Requirements

                      Outcome tracking is a key aspect of care planning.

                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      66. Goal.outcomeReference
                      Definition

                      Details of what's changed (or not changed).

                      ShortObservation that resulted from goal
                      Comments

                      The goal outcome is independent of the outcome of the related activities. For example, if the Goal is to achieve a target body weight of 150 lb and a care plan activity is defined to diet, then the care plan’s activity outcome could be calories consumed whereas goal outcome is an observation for the actual body weight measured.

                      Additionally, see comments for Goal.outcomeCode.

                      Control0..*
                      TypeReference(Observation)
                      Is Modifierfalse
                      Summaryfalse
                      Requirements

                      Outcome tracking is a key aspect of care planning.

                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      SlicingThis element introduces a set of slices on Goal.outcomeReference. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                      • profile @ resolve()
                      • 68. Goal.outcomeReference:SupportedOutcomeReference
                        Slice NameSupportedOutcomeReference
                        Definition

                        Details of what's changed (or not changed).

                        ShortObservation that resulted from goal
                        Comments

                        The goal outcome is independent of the outcome of the related activities. For example, if the Goal is to achieve a target body weight of 150 lb and a care plan activity is defined to diet, then the care plan’s activity outcome could be calories consumed whereas goal outcome is an observation for the actual body weight measured.

                        Control0..*
                        TypeReference(SDOHCC Observation Screening Response, SDOHCC Observation Assessment)
                        Is Modifierfalse
                        Must Supporttrue
                        Must Support TypesNo must-support rules about the choice of types/profiles
                        Summaryfalse
                        Requirements

                        When a goal outcome can be represented by SDOH screening response observations or SDOH assessment observations, Goal.outcome should reference instances that comply with the SDOHCC Observation Screening Response or SDOHCC Observation Assessment profiles. However, references to other instance types are also possible.

                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))