SDOH Clinical Care
3.0.0-ballot - STU 3 Ballot

SDOH Clinical Care - Downloaded Version 3.0.0-ballot See the Directory of published versions

## Resource Profile: SDOHCC Observation Personal Characteristic ( Abstract )

Official URL: http://hl7.org/fhir/us/sdoh-clinicalcare/StructureDefinition/SDOHCC-ObservationPersonalCharacteristic | Version: 3.0.0-ballot
Standards status: Trial-use Active as of 2025-12-13 | Maturity Level: 1 | Computable Name: SDOHCCObservationPersonalCharacteristic

Defines constraints that represent the minimum requirement for personal characteristic observations which are observations that are usually self-attested but may be attested to on behalf of the subject and are generally only verifiable by the source of attestation (e.g., race, ethnicity, sexual orientation, gender identity and personal pronouns), but may sometimes be verifiable by someone other than the source of attestation (e.g., recorded sex). For further details on this profile see Specifications for Personal Characteristics.

Usages:

- Derived from this Profile: SDOHCC Observation Ethnicity OMB, SDOHCC Observation Gender Identity, SDOHCC Observation Personal Pronouns, SDOHCC Observation Race OMB and SDOHCC Observation Recorded Sex Gender
- CapabilityStatements using this Profile: SDOHCC Coordination Platform, SDOHCC Referral Recipient, SDOHCC Referral Recipient - Light and SDOHCC Referral Source

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | USCoreSimpleObservationProfile(7.0.0) | This is an abstract profile. Child profiles: SDOHCCObservationEthnicityOMB, SDOHCCObservationGenderIdentity, SDOHCCObservationPersonalPronouns, SDOHCCObservationRaceOMB, SDOHCCObservationRecordedSexGender Personal characteristic observation Constraints: obs-6, obs-7, SDOH-Obs-1, SDOH-Obs-2, SDOH-Obs-3
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:OtherSubject | S C | 0..1 | (Complex) | Allows the observation to reference a Practitioner as the subject when the observation is about a practitioner rather than a patient. URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject"
value[x] |  | 1..1 | Reference(US Core Practitioner Profile(7.0.0)) | Value of extension
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 1..1 | code | final | corrected | entered-in-error | unknown Binding: SDOHCC ValueSet Observation Status (required)
Slices for category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
category:us-core | S | 0..* | CodeableConcept | Classification of type of observation Binding: USCoreSimpleObservationCategory (7.0.0) (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets
category:PersonalCharacteristic | S | 1..1 | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: personal-characteristic
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
code | S Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred): Codes identifying names of simple observations.
subject | S Σ C | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Who and/or what the observation is about
focus | Σ C | 0..1 | Reference(RelatedPerson) | What the observation is about, when it is not about the subject of record
effective[x] | S Σ | 0..1 |  | Clinically relevant time/time-period for observation
effectiveDateTime |  |  | dateTime S |
effectivePeriod |  |  | Period |
performer | S Σ C | 0..* | Reference(US Core Practitioner Profile(7.0.0) | US Core Organization Profile(7.0.0) | US Core Patient Profile(7.0.0) | PractitionerRole | US Core CareTeam Profile(7.0.0) | US Core RelatedPerson Profile(7.0.0)) | Who is responsible for the observation
value[x] | S Σ C | 0..1 | CodeableConcept S | Actual result
derivedFrom | S Σ C | 0..* | Reference(US Core DocumentReference Profile(7.0.0) | US Core QuestionnaireResponse Profile(7.0.0) | Observation) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: US Core Profiles or other resource the observation is made from
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.status | Base | required | SDOHCC ValueSet Observation Status | 📦3.0.0-ballot | This IG
Observation.category | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std.
Observation.category:us-core | Base | required | US Core Simple Observation Category | 📍7.0.0 | US Core v7.0
Observation.category:PersonalCharacteristic | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std.
Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
SDOH-Obs-1 | error | Observation | Either subject or extension-Observation.subject must exist but not both | `subject.exists() xor extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject').exists()`
SDOH-Obs-2 | error | Observation | Focus is only allowed if subject is present | `focus.exists() implies subject.exists()`
SDOH-Obs-3 | error | Observation | Must have either performer or derivedFrom | `performer.exists() or derivedFrom.exists()`
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Observation | 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 | error | Observation | 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 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Observation | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present | `dataAbsentReason.empty() or value.empty()`
obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | USCoreSimpleObservationProfile(7.0.0) | This is an abstract profile. Child profiles: SDOHCCObservationEthnicityOMB, SDOHCCObservationGenderIdentity, SDOHCCObservationPersonalPronouns, SDOHCCObservationRaceOMB, SDOHCCObservationRecordedSexGender Personal characteristic observation Constraints: SDOH-Obs-1, SDOH-Obs-2, SDOH-Obs-3
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:OtherSubject | S C | 0..1 | (Complex) | Allows the observation to reference a Practitioner as the subject when the observation is about a practitioner rather than a patient. URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject
value[x] |  | 1..1 | Reference(US Core Practitioner Profile(7.0.0)) | Value of extension
status |  | 1..1 | code | final | corrected | entered-in-error | unknown Binding: SDOHCC ValueSet Observation Status (required)
Slices for category |  |  |  | Content/Rules for all slices
category:PersonalCharacteristic | S | 1..1 | CodeableConcept | Classification of type of observation Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: personal-characteristic
code |  | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred): Codes identifying names of simple observations.
subject | C | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Who and/or what the observation is about
focus | C | 0..1 | Reference(RelatedPerson) | What the observation is about, when it is not about the subject of record
effective[x] |  | 0..1 |  | Clinically relevant time/time-period for observation
effectiveDateTime |  |  | dateTime |
effectivePeriod |  |  | Period |
performer | C | 0..* | Reference(US Core Practitioner Profile(7.0.0) | US Core Organization Profile(7.0.0) | US Core Patient Profile(7.0.0) | PractitionerRole | US Core CareTeam Profile(7.0.0) | US Core RelatedPerson Profile(7.0.0)) | Who is responsible for the observation
value[x] |  | 0..1 | CodeableConcept | Actual result
interpretation |  | 0..0 |  | High, low, normal, etc.
bodySite |  | 0..0 |  | Observed body part
specimen |  | 0..0 |  | Specimen used for this observation
referenceRange |  | 0..0 |  | Provides guide for interpretation
derivedFrom | S C | 0..* | Reference(US Core DocumentReference Profile(7.0.0) | US Core QuestionnaireResponse Profile(7.0.0) | Observation) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: US Core Profiles or other resource the observation is made from
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Observation.status | Base | required | SDOHCC ValueSet Observation Status | 📦3.0.0-ballot | This IG
Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
SDOH-Obs-1 | error | Observation | Either subject or extension-Observation.subject must exist but not both | `subject.exists() xor extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject').exists()`
SDOH-Obs-2 | error | Observation | Focus is only allowed if subject is present | `focus.exists() implies subject.exists()`
SDOH-Obs-3 | error | Observation | Must have either performer or derivedFrom | `performer.exists() or derivedFrom.exists()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | USCoreSimpleObservationProfile(7.0.0) | This is an abstract profile. Child profiles: SDOHCCObservationEthnicityOMB, SDOHCCObservationGenderIdentity, SDOHCCObservationPersonalPronouns, SDOHCCObservationRaceOMB, SDOHCCObservationRecordedSexGender Personal characteristic observation Constraints: obs-6, obs-7, SDOH-Obs-1, SDOH-Obs-2, SDOH-Obs-3
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 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.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:OtherSubject | S C | 0..1 | (Complex) | Allows the observation to reference a Practitioner as the subject when the observation is about a practitioner rather than a patient. URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject"
value[x] |  | 1..1 | Reference(US Core Practitioner Profile(7.0.0)) | Value of extension
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | Business Identifier for observation
basedOn | Σ | 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
status | ?!S Σ | 1..1 | code | final | corrected | entered-in-error | unknown Binding: SDOHCC ValueSet Observation Status (required)
Slices for category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
category:us-core | S | 0..* | CodeableConcept | Classification of type of observation Binding: USCoreSimpleObservationCategory (7.0.0) (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets
category:PersonalCharacteristic | S | 1..1 | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: personal-characteristic
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
code | S Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred): Codes identifying names of simple observations.
subject | S Σ C | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Who and/or what the observation is about
focus | Σ C | 0..1 | Reference(RelatedPerson) | 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
effective[x] | S Σ | 0..1 |  | Clinically relevant time/time-period for observation
effectiveDateTime |  |  | dateTime S |
effectivePeriod |  |  | Period |
issued | Σ | 0..1 | instant | Date/Time this version was made available
performer | S Σ C | 0..* | Reference(US Core Practitioner Profile(7.0.0) | US Core Organization Profile(7.0.0) | US Core Patient Profile(7.0.0) | PractitionerRole | US Core CareTeam Profile(7.0.0) | US Core RelatedPerson Profile(7.0.0)) | Who is responsible for the observation
value[x] | S Σ C | 0..1 | CodeableConcept S | Actual result
dataAbsentReason | C | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
note |  | 0..* | Annotation | Comments about the observation
method |  | 0..1 | CodeableConcept | How it was done Binding: ObservationMethods (example): Methods for simple observations.
device |  | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device
hasMember | Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group
derivedFrom | S Σ C | 0..* | Reference(US Core DocumentReference Profile(7.0.0) | US Core QuestionnaireResponse Profile(7.0.0) | Observation) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: US Core Profiles or other resource the observation is made from
component | Σ | 0..* | BackboneElement | Component results
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example): Codes identifying names of simple observations.
value[x] | Σ | 0..1 |  | Actual component result
valueQuantity |  |  | Quantity |
valueCodeableConcept |  |  | CodeableConcept |
valueString |  |  | string |
valueBoolean |  |  | boolean |
valueInteger |  |  | integer |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueSampledData |  |  | SampledData |
valueTime |  |  | time |
valueDateTime |  |  | dateTime |
valuePeriod |  |  | Period |
dataAbsentReason | 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..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
referenceRange |  | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
Observation.status | Base | required | SDOHCC ValueSet Observation Status | 📦3.0.0-ballot | This IG
Observation.category | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std.
Observation.category:us-core | Base | required | US Core Simple Observation Category | 📍7.0.0 | US Core v7.0
Observation.category:PersonalCharacteristic | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std.
Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std.
Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std.
Observation.method | Base | example | Observation Methods | 📦4.0.1 | FHIR Std.
Observation.referenceRange.​type | Base | preferred | Observation Reference Range Meaning Codes | 📦4.0.1 | FHIR Std.
Observation.referenceRange.​appliesTo | Base | example | Observation Reference Range Applies To Codes | 📦4.0.1 | FHIR Std.
Observation.component.​code | Base | example | LOINC Codes | 📦4.0.1 | FHIR Std.
Observation.component.​dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std.
Observation.component.​interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
SDOH-Obs-1 | error | Observation | Either subject or extension-Observation.subject must exist but not both | `subject.exists() xor extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject').exists()`
SDOH-Obs-2 | error | Observation | Focus is only allowed if subject is present | `focus.exists() implies subject.exists()`
SDOH-Obs-3 | error | Observation | Must have either performer or derivedFrom | `performer.exists() or derivedFrom.exists()`
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Observation | 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 | error | Observation | 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 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Observation | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present | `dataAbsentReason.empty() or value.empty()`
obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()`

Summary

Mandatory: 1 element(1 nested mandatory element)
Must-Support: 3 elements
Prohibited: 4 elements

Structures

This structure refers to these other structures:

- US Core Practitioner Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner|7.0.0)
- US Core Patient Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0)
- US Core DocumentReference Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-documentreference|7.0.0)
- US Core QuestionnaireResponse Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-questionnaireresponse|7.0.0)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject

Maturity: 1

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | USCoreSimpleObservationProfile(7.0.0) | This is an abstract profile. Child profiles: SDOHCCObservationEthnicityOMB, SDOHCCObservationGenderIdentity, SDOHCCObservationPersonalPronouns, SDOHCCObservationRaceOMB, SDOHCCObservationRecordedSexGender Personal characteristic observation Constraints: obs-6, obs-7, SDOH-Obs-1, SDOH-Obs-2, SDOH-Obs-3
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:OtherSubject | S C | 0..1 | (Complex) | Allows the observation to reference a Practitioner as the subject when the observation is about a practitioner rather than a patient. URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject"
value[x] |  | 1..1 | Reference(US Core Practitioner Profile(7.0.0)) | Value of extension
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 1..1 | code | final | corrected | entered-in-error | unknown Binding: SDOHCC ValueSet Observation Status (required)
Slices for category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
category:us-core | S | 0..* | CodeableConcept | Classification of type of observation Binding: USCoreSimpleObservationCategory (7.0.0) (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets
category:PersonalCharacteristic | S | 1..1 | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: personal-characteristic
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
code | S Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred): Codes identifying names of simple observations.
subject | S Σ C | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Who and/or what the observation is about
focus | Σ C | 0..1 | Reference(RelatedPerson) | What the observation is about, when it is not about the subject of record
effective[x] | S Σ | 0..1 |  | Clinically relevant time/time-period for observation
effectiveDateTime |  |  | dateTime S |
effectivePeriod |  |  | Period |
performer | S Σ C | 0..* | Reference(US Core Practitioner Profile(7.0.0) | US Core Organization Profile(7.0.0) | US Core Patient Profile(7.0.0) | PractitionerRole | US Core CareTeam Profile(7.0.0) | US Core RelatedPerson Profile(7.0.0)) | Who is responsible for the observation
value[x] | S Σ C | 0..1 | CodeableConcept S | Actual result
derivedFrom | S Σ C | 0..* | Reference(US Core DocumentReference Profile(7.0.0) | US Core QuestionnaireResponse Profile(7.0.0) | Observation) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: US Core Profiles or other resource the observation is made from
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.status | Base | required | SDOHCC ValueSet Observation Status | 📦3.0.0-ballot | This IG
Observation.category | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std.
Observation.category:us-core | Base | required | US Core Simple Observation Category | 📍7.0.0 | US Core v7.0
Observation.category:PersonalCharacteristic | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std.
Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
SDOH-Obs-1 | error | Observation | Either subject or extension-Observation.subject must exist but not both | `subject.exists() xor extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject').exists()`
SDOH-Obs-2 | error | Observation | Focus is only allowed if subject is present | `focus.exists() implies subject.exists()`
SDOH-Obs-3 | error | Observation | Must have either performer or derivedFrom | `performer.exists() or derivedFrom.exists()`
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Observation | 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 | error | Observation | 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 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Observation | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present | `dataAbsentReason.empty() or value.empty()`
obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()`

Differential View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | USCoreSimpleObservationProfile(7.0.0) | This is an abstract profile. Child profiles: SDOHCCObservationEthnicityOMB, SDOHCCObservationGenderIdentity, SDOHCCObservationPersonalPronouns, SDOHCCObservationRaceOMB, SDOHCCObservationRecordedSexGender Personal characteristic observation Constraints: SDOH-Obs-1, SDOH-Obs-2, SDOH-Obs-3
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:OtherSubject | S C | 0..1 | (Complex) | Allows the observation to reference a Practitioner as the subject when the observation is about a practitioner rather than a patient. URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject
value[x] |  | 1..1 | Reference(US Core Practitioner Profile(7.0.0)) | Value of extension
status |  | 1..1 | code | final | corrected | entered-in-error | unknown Binding: SDOHCC ValueSet Observation Status (required)
Slices for category |  |  |  | Content/Rules for all slices
category:PersonalCharacteristic | S | 1..1 | CodeableConcept | Classification of type of observation Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: personal-characteristic
code |  | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred): Codes identifying names of simple observations.
subject | C | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Who and/or what the observation is about
focus | C | 0..1 | Reference(RelatedPerson) | What the observation is about, when it is not about the subject of record
effective[x] |  | 0..1 |  | Clinically relevant time/time-period for observation
effectiveDateTime |  |  | dateTime |
effectivePeriod |  |  | Period |
performer | C | 0..* | Reference(US Core Practitioner Profile(7.0.0) | US Core Organization Profile(7.0.0) | US Core Patient Profile(7.0.0) | PractitionerRole | US Core CareTeam Profile(7.0.0) | US Core RelatedPerson Profile(7.0.0)) | Who is responsible for the observation
value[x] |  | 0..1 | CodeableConcept | Actual result
interpretation |  | 0..0 |  | High, low, normal, etc.
bodySite |  | 0..0 |  | Observed body part
specimen |  | 0..0 |  | Specimen used for this observation
referenceRange |  | 0..0 |  | Provides guide for interpretation
derivedFrom | S C | 0..* | Reference(US Core DocumentReference Profile(7.0.0) | US Core QuestionnaireResponse Profile(7.0.0) | Observation) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: US Core Profiles or other resource the observation is made from
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Observation.status | Base | required | SDOHCC ValueSet Observation Status | 📦3.0.0-ballot | This IG
Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
SDOH-Obs-1 | error | Observation | Either subject or extension-Observation.subject must exist but not both | `subject.exists() xor extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject').exists()`
SDOH-Obs-2 | error | Observation | Focus is only allowed if subject is present | `focus.exists() implies subject.exists()`
SDOH-Obs-3 | error | Observation | Must have either performer or derivedFrom | `performer.exists() or derivedFrom.exists()`

Snapshot ViewView

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | USCoreSimpleObservationProfile(7.0.0) | This is an abstract profile. Child profiles: SDOHCCObservationEthnicityOMB, SDOHCCObservationGenderIdentity, SDOHCCObservationPersonalPronouns, SDOHCCObservationRaceOMB, SDOHCCObservationRecordedSexGender Personal characteristic observation Constraints: obs-6, obs-7, SDOH-Obs-1, SDOH-Obs-2, SDOH-Obs-3
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 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.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:OtherSubject | S C | 0..1 | (Complex) | Allows the observation to reference a Practitioner as the subject when the observation is about a practitioner rather than a patient. URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject"
value[x] |  | 1..1 | Reference(US Core Practitioner Profile(7.0.0)) | Value of extension
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | Business Identifier for observation
basedOn | Σ | 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
status | ?!S Σ | 1..1 | code | final | corrected | entered-in-error | unknown Binding: SDOHCC ValueSet Observation Status (required)
Slices for category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
category:us-core | S | 0..* | CodeableConcept | Classification of type of observation Binding: USCoreSimpleObservationCategory (7.0.0) (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets
category:PersonalCharacteristic | S | 1..1 | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: personal-characteristic
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
code | S Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred): Codes identifying names of simple observations.
subject | S Σ C | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Who and/or what the observation is about
focus | Σ C | 0..1 | Reference(RelatedPerson) | 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
effective[x] | S Σ | 0..1 |  | Clinically relevant time/time-period for observation
effectiveDateTime |  |  | dateTime S |
effectivePeriod |  |  | Period |
issued | Σ | 0..1 | instant | Date/Time this version was made available
performer | S Σ C | 0..* | Reference(US Core Practitioner Profile(7.0.0) | US Core Organization Profile(7.0.0) | US Core Patient Profile(7.0.0) | PractitionerRole | US Core CareTeam Profile(7.0.0) | US Core RelatedPerson Profile(7.0.0)) | Who is responsible for the observation
value[x] | S Σ C | 0..1 | CodeableConcept S | Actual result
dataAbsentReason | C | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
note |  | 0..* | Annotation | Comments about the observation
method |  | 0..1 | CodeableConcept | How it was done Binding: ObservationMethods (example): Methods for simple observations.
device |  | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device
hasMember | Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group
derivedFrom | S Σ C | 0..* | Reference(US Core DocumentReference Profile(7.0.0) | US Core QuestionnaireResponse Profile(7.0.0) | Observation) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: US Core Profiles or other resource the observation is made from
component | Σ | 0..* | BackboneElement | Component results
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example): Codes identifying names of simple observations.
value[x] | Σ | 0..1 |  | Actual component result
valueQuantity |  |  | Quantity |
valueCodeableConcept |  |  | CodeableConcept |
valueString |  |  | string |
valueBoolean |  |  | boolean |
valueInteger |  |  | integer |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueSampledData |  |  | SampledData |
valueTime |  |  | time |
valueDateTime |  |  | dateTime |
valuePeriod |  |  | Period |
dataAbsentReason | 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..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
referenceRange |  | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
Observation.status | Base | required | SDOHCC ValueSet Observation Status | 📦3.0.0-ballot | This IG
Observation.category | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std.
Observation.category:us-core | Base | required | US Core Simple Observation Category | 📍7.0.0 | US Core v7.0
Observation.category:PersonalCharacteristic | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std.
Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std.
Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std.
Observation.method | Base | example | Observation Methods | 📦4.0.1 | FHIR Std.
Observation.referenceRange.​type | Base | preferred | Observation Reference Range Meaning Codes | 📦4.0.1 | FHIR Std.
Observation.referenceRange.​appliesTo | Base | example | Observation Reference Range Applies To Codes | 📦4.0.1 | FHIR Std.
Observation.component.​code | Base | example | LOINC Codes | 📦4.0.1 | FHIR Std.
Observation.component.​dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std.
Observation.component.​interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
SDOH-Obs-1 | error | Observation | Either subject or extension-Observation.subject must exist but not both | `subject.exists() xor extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject').exists()`
SDOH-Obs-2 | error | Observation | Focus is only allowed if subject is present | `focus.exists() implies subject.exists()`
SDOH-Obs-3 | error | Observation | Must have either performer or derivedFrom | `performer.exists() or derivedFrom.exists()`
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Observation | 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 | error | Observation | 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 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Observation | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present | `dataAbsentReason.empty() or value.empty()`
obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()`

Summary

Mandatory: 1 element(1 nested mandatory element)
Must-Support: 3 elements
Prohibited: 4 elements

Structures

This structure refers to these other structures:

- US Core Practitioner Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner|7.0.0)
- US Core Patient Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0)
- US Core DocumentReference Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-documentreference|7.0.0)
- US Core QuestionnaireResponse Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-questionnaireresponse|7.0.0)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.subject

Maturity: 1

Other representations of profile: CSV, Excel, Schematron