Observation
Maturity Level | Security Category | Resource Category |
---|---|---|
Normative | Patient | Clinical |
Measurements and simple assertions made about a patient, device or other subject.
Resource Content
Name | Required | Type | Description & Constraints |
---|---|---|---|
identifier | Identifier | Business Identifier for observation | |
basedOn | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | |
partOf | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event | |
status | ✓ | code | registered | preliminary | final | amended + |
category | CodeableConcept | Classification of type of observation | |
code | ✓ | CodeableConcept | Type of observation (code / type) |
subject | Reference(Patient | Group | Device | Location) | Who and/or what the observation is about | |
focus | Reference(Any) | What the observation is about, when it is not about the subject of record | |
encounter | Reference(Encounter) | Healthcare event during which this observation is made | |
effective[x] | * | Clinically relevant time/time-period for observation | |
└─ effectiveDateTime | dateTime | Date/time of observation | |
└─ effectivePeriod | Period | Period of observation | |
└─ effectiveTiming | Timing | Timing of observation | |
└─ effectiveInstant | instant | Instant of observation | |
issued | instant | Date/Time this version was made available | |
performer | Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) | Who is responsible for the observation | |
value[x] | Quantity | CodeableConcept | string | boolean | integer | Range | Ratio | SampledData | time | dateTime | Period | Actual result* | |
dataAbsentReason | CodeableConcept | Why the result is missing | |
interpretation | CodeableConcept | High, low, normal, etc. | |
note | Annotation | Comments about the observation | |
bodySite | CodeableConcept | Observed body part | |
method | CodeableConcept | How it was done | |
specimen | Reference(Specimen) | Specimen used for this observation | |
device | Reference(Device | DeviceMetric) | (Measurement) Device | |
referenceRange | * | Provides guide for interpretation | |
└─ low | Quantity | Low Range | |
└─ high | Quantity | High Range | |
└─ type | CodeableConcept | Reference range qualifier | |
└─ appliesTo | * | Reference range population | |
└─ age | Range | Applicable age range | |
└─ text | string | Text based reference range | |
hasMember | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group | |
derivedFrom | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) | Related measurements the observation is made from | |
component | * | Component results | |
└─ code | CodeableConcept | Type of component observation | |
└─ value[x] | Quantity | CodeableConcept | string | boolean | integer | Range | Ratio | SampledData | time | dateTime | Period | Actual component result* | |
└─ dataAbsentReason | CodeableConcept | Why the component result is missing | |
└─ interpretation | CodeableConcept | High, low, normal, etc. | |
└─ referenceRange | * | Provides guide for interpretation of component result | |
signature | Signature | Digital Signature |
Search Parameters
Name | Type | Description | Expression |
---|---|---|---|
code | token | The code of the observation type | Observation.code |
date | date | Obtained date/time. If the obtained element is a period, a date that falls in the period | Observation.effective |
identifier | token | The unique id for a particular observation | Observation.identifier |
patient | reference | The subject that the observation is about (if patient) | Observation.subject.where(resolve() is Patient) |
encounter | reference | Encounter related to the observation | Observation.encounter |
based-on | reference | Reference to the service request. | Observation.basedOn |
category | token | The classification of the type of observation | Observation.category |
combo-code | token | The code of the observation type or component type | Observation.code | Observation.component.code |
combo-data-absent-reason | token | The reason why the expected value in the element Observation.value[x] or Observation.component.value[x] is missing. | Observation.dataAbsentReason | Observation.component.dataAbsentReason |
combo-value-concept | token | The value or component value of the observation, if the value is a CodeableConcept | Observation.value as CodeableConcept | Observation.component.value as CodeableConcept |
combo-value-quantity | quantity | The value or component value of the observation, if the value is a Quantity, or a SampledData (just search on the bounds of the values in sampled data) | Observation.value as Quantity | Observation.value as SampledData | Observation.component.value as Quantity | Observation.component.value as SampledData |
component-code | token | The component code of the observation type | Observation.component.code |
component-data-absent-reason | token | The reason why the expected value in the element Observation.component.value[x] is missing. | Observation.component.dataAbsentReason |
component-value-concept | token | The value of the component observation, if the value is a CodeableConcept | Observation.component.value as CodeableConcept |
component-value-quantity | quantity | The value of the component observation, if the value is a Quantity, or a SampledData (just search on the bounds of the values in sampled data) | Observation.component.value as Quantity | Observation.component.value as SampledData |
data-absent-reason | token | The reason why the expected value in the element Observation.value[x] is missing. | Observation.dataAbsentReason |
derived-from | reference | Related measurements the observation is made from | Observation.derivedFrom |
device | reference | The Device that generated the observation data. | Observation.device |
focus | reference | The focus of an observation when the focus is not the patient of record. | Observation.focus |
has-member | reference | Related resource that belongs to the Observation group | Observation.hasMember |
method | token | The method used for the observation | Observation.method |
part-of | reference | Part of referenced event | Observation.partOf |
performer | reference | Who performed the observation | Observation.performer |
specimen | reference | Specimen used for this observation | Observation.specimen |
status | token | The status of the observation | Observation.status |
subject | reference | The subject that the observation is about | Observation.subject |
value-concept | token | The value of the observation, if the value is a CodeableConcept | Observation.value as CodeableConcept |
value-date | date | The value of the observation, if the value is a date or period of time | Observation.value as dateTime | Observation.value as Period |
value-quantity | quantity | The value of the observation, if the value is a Quantity, or a SampledData (just search on the bounds of the values in sampled data) | Observation.value as Quantity | Observation.value as SampledData |
value-string | string | The value of the observation, if the value is a string, and also searches in CodeableConcept.text | Observation.value as string | Observation.value as CodeableConcept.text |
code-value-concept | composite | Code and coded value parameter pair | Observation |
code-value-date | composite | Code and date/time value parameter pair | Observation |
code-value-quantity | composite | Code and quantity value parameter pair | Observation |
code-value-string | composite | Code and string value parameter pair | Observation |
combo-code-value-concept | composite | Code and coded value parameter pair, including in components | Observation.component |
combo-code-value-quantity | composite | Code and quantity value parameter pair, including in components | Observation.component |
component-code-value-concept | composite | Component code and component coded value parameter pair | Observation.component |
component-code-value-quantity | composite | Component code and component quantity value parameter pair | Observation.component |
Scope and Usage
Observations are a central element in healthcare, used to support diagnosis, monitor progress, determine baselines and patterns and even capture demographic characteristics. Most observations are simple name/value pair assertions with some metadata, but some observations group other observations together logically, or even are multi-component observations.
Common Use Cases
- Vital Signs
- Body weight
- Blood pressure
- Temperature
- Laboratory Data
- Blood glucose
- Estimated GFR
- Imaging Results
- Bone density
- Fetal measurements
- Clinical Findings*
- Abdominal tenderness
- Device Measurements
- EKG data
- Pulse Oximetry data
- Clinical Assessment Tools
- APGAR score
- Glasgow Coma Score
- Personal and Social Information
- Personal characteristics (e.g., eye color)
- Social history (e.g., tobacco use, family support)
- Core characteristics (e.g., pregnancy status, death assertion)
*Note: The boundaries between clinical findings and disorders remains a challenge in medical ontology. These boundaries can be clarified by profiling Observation for a particular use case.
Boundaries and Relationships
Primary Purpose
- Observation is intended for capturing measurements and subjective point-in-time assessments
- Supports name-value pairs or structured collections of name-value pairs
Related Resources
Instead of Observation, use these specialized resources when appropriate:
Resource Type | Use Case |
---|---|
AllergyIntolerance | Patient allergies |
MedicationStatement | Medications taken by patient |
FamilyMemberHistory | Patient's family history |
Procedure | Procedure information |
QuestionnaireResponse | Answers to questions |
Condition | Clinical diagnoses |
ClinicalImpression | Clinical assessments |
Media | Audio, video, or image data |
DiagnosticReport | Laboratory, pathology, and imaging reports |
Special Considerations
Relationship with DiagnosticReport
- DiagnosticReport provides clinical context for a set of observations
- DiagnosticReport includes:
- Additional clinical context
- Atomic results
- Images and imaging reports
- Textual and coded interpretation
- Formatted representations
- Observation is referenced by DiagnosticReport for atomic results
Edge Cases
-
Overlapping Scenarios
- Some data could fit multiple resources (e.g., illicit drug use could be MedicationStatement or Observation)
- Convention and common practice often guide the choice
-
Legacy Data
- When importing HL7 v2 data, specialized observations may appear in this resource due to limited source information
- This is considered appropriate use of Observation
-
Implementation Guidance
- If uncertain about appropriate use, consult with implementers on chat.fhir.org implementer's stream
Referenced Elements
This resource is referenced by:
- AdverseEvent
- Appointment
- CarePlan
- ChargeItem
- ClinicalImpression
- Communication
- CommunicationRequest
- Condition
- Contract
- DeviceRequest
- DeviceUseStatement
- DiagnosticReport
- Encounter
- FamilyMemberHistory
- Goal
- GuidanceResponse
- ImagingStudy
- Immunization
- MedicationAdministration
- MedicationRequest
- MedicationStatement
- MolecularSequence
- Observation
- Procedure
- QuestionnaireResponse
- RequestGroup
- RiskAssessment
- ServiceRequest
- SupplyRequest