Left: | SDOHCC Observation Screening Response (http://hl7.org/fhir/us/sdoh-clinicalcare/StructureDefinition/SDOHCC-ObservationScreeningResponse) |
Right: | SDOHCC Observation Screening Response (http://hl7.org/fhir/us/sdoh-clinicalcare/StructureDefinition/SDOHCC-ObservationScreeningResponse) |
Error | StructureDefinition.version | Values for version differ: '1.0.0' vs '2.0.0' |
Information | StructureDefinition.date | Values for date differ: '2021-08-05T20:07:39+00:00' vs '2022-11-21T18:34:14+00:00' |
Warning | Observation.code | Elements differ in comments: '*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation. For SDOH questions represented in LOINC that specify “check all that apply”, the LOINC question should be used for Observation.code and for Observation.component.code. For “check all that apply” questions, the answers (regardless of whether one or more are selected) should only be represented using Observation.component.value and Observation.value should be empty. As the Gravity Project continues to refine content for the SDOH categories (e.g., food, housing, transportation, etc.), this value set will be refined to codes that pertain to SDOH categories.' vs '*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation. For SDOH questions represented in LOINC that specify “check all that apply”, the LOINC question should be used for Observation.code and for Observation.component.code. For “check all that apply” questions, the answers (regardless of whether one or more are selected) should only be represented using Observation.component.value and Observation.value should be empty. As the Gravity Project continues to refine content for the SDOH categories (e.g., food, housing, transportation, etc.), this value set will be refined to codes that pertain to SDOH categories. For further guidance on external value sets vetted by the Gravity Project see: [Supplemental Guide]' |
Warning | Observation.component | Elements differ in definition: 'Some observations have multiple component observations. These component observations are expressed as separate code value pairs that share the same attributes. Examples: 1) Individuals may be multiracial. Component is used to capture one or more races. 2) “Material hardship” can be assessed based on a number of factors (adequate food, clothing, utilities, etc.). One, or all, of which can be captured using Component.' vs 'Some observations have multiple component observations. These component observations are expressed as separate code value pairs that share the same attributes. Examples include systolic and diastolic component observations for blood pressure measurement and multiple component observations for genetics observations.' |
Warning | Observation.component | Elements differ in comments: 'For a discussion on the ways Observations can be assembled in groups together see [Notes] below. For SDOH questions represented in LOINC that specify “check all that apply”, the LOINC question should be used for Observation.code and for Observation.component.code. For “check all that apply” questions, the answers (regardless of whether one or more are selected) should only be represented using Observation.component.value and Observation.value should be empty.' vs 'For a discussion on the ways Observations can be assembled in groups together see [Notes] below.' |
Warning | Observation.component.code | Elements differ in comments: '*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation. As the Gravity Project continues to refine content for the SDOH categories (e.g., food, housing, transportation, etc.), this value set will be refined to codes that pertain to SDOH categories.' vs '*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.' |
Warning | Observation.component.code | Elements differ in requirements: 'Knowing what kind of observation is being made is essential to understanding the observation. LOINC codes are required because Gravity intends to use only LOINC encoded Questionnaires to generate QuestionnaireResponses which, in turn, will generate Screening Response Observations.' vs 'Knowing what kind of observation is being made is essential to understanding the observation.' |
Warning | Observation.component.code | Elements differ in definition for mustSupport: 'true' vs 'false' |
Warning | Observation.component.value[x] | Elements differ in definition for mustSupport: 'true' vs 'false' |
Warning | Observation.component.dataAbsentReason | Elements differ in comments: ''Null' or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. The alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For a given 'check all that apply' LOINC question, if the LOINC answer list includes concepts such as 'unknown' or 'not available', they should be used for Observation.component.value. Where these concepts are not part of the value set for Observation.component.value, the Observation.component.dataAbsentReason can be used if necessary and appropriate.' vs ''Null' or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be 'detected', 'not detected', 'inconclusive', or 'test not done'. The alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code 'error' could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.' |
Warning | Observation.component.dataAbsentReason | Elements differ in definition for mustSupport: 'true' vs 'false' |
Information | Observation.component.interpretation | Element maximum cardinalities differ: '0' vs '2147483647' |
Information | Observation.component.referenceRange | Element maximum cardinalities differ: '0' vs '2147483647' |
Name | Value | Comments | |
---|---|---|---|
abstract | false | ||
baseDefinition | http://hl7.org/fhir/StructureDefinition/Observation | ||
copyright | |||
date | 2021-08-05T20:07:39+00:00 | 2022-11-21T18:34:14+00:00 |
|
description | This profile constrains the Observation resource for observations that represent question and answer pairs from SDOH screening instruments that are represented in LOINC. The Cross-Group Projects work group granted an exception to US Core on 12/03/2020 - Jira ticket 29795. | Profile for observations that represent question and answer pairs from Social Determinants of Health (SDOH) screening instruments that are represented in LOINC. The Cross-Group Projects work group granted a variance to US Core on 12/03/2020 - Jira ticket FHIR-29795. |
|
experimental | |||
fhirVersion | 4.0.1 | ||
jurisdiction | |||
jurisdiction[0] | urn:iso:std:iso:3166#US | ||
kind | resource | ||
name | SDOHCCObservationScreeningResponse | ||
publisher | HL7 International - Patient Care WG | ||
purpose | |||
status | draft | ||
title | SDOHCC Observation Screening Response | ||
type | Observation | ||
url | http://hl7.org/fhir/us/sdoh-clinicalcare/StructureDefinition/SDOHCC-ObservationScreeningResponse | ||
version | 1.0.0 | 2.0.0 |
|
Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | L Type | L Description & Constraints | Comments | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Observation | C | 0..* | Observation | SDOH screening questionnaire observations | C | 0..* | Observation | SDOH screening questionnaire observations | |||||||||
id | Σ | 0..1 | string | Logical id of this artifact | Σ | 0..1 | id | Logical id of this artifact | |||||||||
meta | Σ | 0..1 | Meta | Metadata about the resource | Σ | 0..1 | Meta | Metadata about the resource | |||||||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ?!Σ | 0..1 | uri | A set of rules under which this content was created | |||||||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||||||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||||||||
contained | 0..* | Resource | Contained, inline Resources | 0..* | Resource | Contained, inline Resources | |||||||||||
extension | 0..* | Extension | Additional content defined by implementations | 0..* | Extension | Additional content defined by implementations | |||||||||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ?! | 0..* | Extension | Extensions that cannot be ignored | |||||||||
identifier | Σ | 0..* | Identifier | Business Identifier for observation | Σ | 0..* | Identifier | Business Identifier for observation | |||||||||
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | |||||||||
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event | |||||||||
status | ?!SΣ | 1..1 | code | final | corrected | entered-in-error | unknown Binding: SDOHCCValueSetObservationStatus (required) | ?!SΣ | 1..1 | code | final | corrected | entered-in-error | unknown Binding: SDOHCC ValueSet Observation Status (required) | |||||||||
Slices for category | 2..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | 2..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | |||||||||||
code | SΣ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (required) | SΣ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (required) |
| ||||||||
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | Who and/or what the observation is about | SΣ | 1..1 | Reference(US Core Patient Profile) | Who and/or what the observation is about | |||||||||
focus | Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | |||||||||
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | |||||||||
effective[x] | SΣ | 1..1 | dateTime, Period | Clinically relevant time/time-period for observation | SΣ | 1..1 | dateTime, Period | Clinically relevant time/time-period for observation | |||||||||
issued | Σ | 0..1 | instant | Date/Time this version was made available | Σ | 0..1 | instant | Date/Time this version was made available | |||||||||
performer | SΣ | 0..* | Reference(RelatedPerson | US Core Patient Profile | US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile | US Core CareTeam Profile) | Who is responsible for the observation | SΣ | 0..* | Reference(RelatedPerson | US Core Patient Profile | US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile | US Core CareTeam Profile) | Who is responsible for the observation | |||||||||
Slices for value[x] | SΣC | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual result Slice: Unordered, Open by type:$this | SΣC | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual result Slice: Unordered, Open by type:$this | |||||||||
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | |||||||||
interpretation | 0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | 0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||||||||
note | 0..* | Annotation | Comments about the observation | 0..* | Annotation | Comments about the observation | |||||||||||
bodySite | 0..0 | 0..0 | |||||||||||||||
method | 0..1 | CodeableConcept | How it was done Binding: ObservationMethods (example): Methods for simple observations. | 0..1 | CodeableConcept | How it was done Binding: ObservationMethods (example): Methods for simple observations. | |||||||||||
specimen | 0..0 | 0..0 | |||||||||||||||
device | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | |||||||||||
referenceRange | C | 0..* | BackboneElement | Provides guide for interpretation obs-3: Must have at least a low or a high or text | C | 0..* | BackboneElement | Provides guide for interpretation | |||||||||
id | 0..1 | string | Unique id for inter-element referencing | 0..1 | string | Unique id for inter-element referencing | |||||||||||
extension | 0..* | Extension | Additional content defined by implementations | 0..* | Extension | Additional content defined by implementations | |||||||||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||||||
low | C | 0..1 | SimpleQuantity | Low Range, if relevant | C | 0..1 | SimpleQuantity | Low Range, if relevant | |||||||||
high | C | 0..1 | SimpleQuantity | High Range, if relevant | C | 0..1 | SimpleQuantity | High Range, if relevant | |||||||||
type | 0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | 0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | |||||||||||
appliesTo | 0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | 0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | |||||||||||
age | 0..1 | Range | Applicable age range, if relevant | 0..1 | Range | Applicable age range, if relevant | |||||||||||
text | 0..1 | string | Text based reference range in an observation | 0..1 | string | Text based reference range in an observation | |||||||||||
hasMember | Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group | Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group | |||||||||
Slices for derivedFrom | SΣ | 0..* | Reference(DocumentReference | QuestionnaireResponse | Observation) | Related measurements the observation is made from Slice: Unordered, Open by profile:resolve() | SΣ | 0..* | Reference(DocumentReference | QuestionnaireResponse | Observation) | Related measurements the observation is made from Slice: Unordered, Open by profile:resolve() | |||||||||
component | Σ | 0..* | BackboneElement | Component results | Σ | 0..* | BackboneElement | Component results |
| ||||||||
id | 0..1 | string | Unique id for inter-element referencing | 0..1 | string | Unique id for inter-element referencing | |||||||||||
extension | 0..* | Extension | Additional content defined by implementations | 0..* | Extension | Additional content defined by implementations | |||||||||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||||||
code | SΣ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (required) | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example): Codes identifying names of simple observations. |
| ||||||||
Slices for value[x] | SΣ | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual component result Slice: Unordered, Open by type:$this | Σ | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual component result |
| ||||||||
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | C | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
| ||||||||
interpretation | 0..0 | 0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. |
| ||||||||||||
referenceRange | 0..0 | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result |
| ||||||||||||
Documentation for this format |