> ## Documentation Index
> Fetch the complete documentation index at: https://docs.metriport.com/llms.txt
> Use this file to discover all available pages before exploring further.

# observation

Measurements and simple assertions made about a patient, device or other subject. See the [HL7 FHIR R4 spec](https://hl7.org/fhir/R4/observation.html) for full details.

**Previous version:** [observation](/medical-api/handling-data/schema-v000/observation)

**Tables in this resource:**

* **observation** – Main observation record (this page)
* [observation\_category](/medical-api/handling-data/schema-v100/observation/category) – Backbone for category
* [observation\_category\_coding](/medical-api/handling-data/schema-v100/observation/category_coding)
* [observation\_code\_coding](/medical-api/handling-data/schema-v100/observation/code_coding)
* [observation\_interpretation](/medical-api/handling-data/schema-v100/observation/interpretation) – Interpretation per observation (text)
* [observation\_interpretation\_coding](/medical-api/handling-data/schema-v100/observation/interpretation_coding)
* [observation\_bodysite\_coding](/medical-api/handling-data/schema-v100/observation/bodysite_coding)
* [observation\_referencerange](/medical-api/handling-data/schema-v100/observation/referencerange) – Reference ranges per observation
* [observation\_vcc\_coding](/medical-api/handling-data/schema-v100/observation/vcc_coding) – valueCodeableConcept.coding\[] entries
* [observation\_extension](/medical-api/handling-data/schema-v100/observation/extension)
* [observation\_extension\_vcc\_coding](/medical-api/handling-data/schema-v100/observation/extension_vcc_coding)
* **observation\_references** – Normalized references; see [Reference Tables](/medical-api/handling-data/schema-v100/reference_tables)

**Reference Table:**

The `observation_references` table contains normalized references from the observation to other entities. It supports the following reference properties:

* **subject** (required): links to the patient who is the subject of the observation
* **encounter**: links to the encounter where the observation was made
* **performer**: links to practitioners who performed the observation

For detailed information about reference table structure and indexing, see the [Reference Tables documentation](/medical-api/handling-data/schema-v100/reference_tables).

**Primary Keys:**

* observation\_id

**Foreign Keys:**

* patient\_id - links to the [patient](/medical-api/handling-data/schema-v100/patient/base) table (subject)

<div style={{textAlign: 'right'}}><sub>† Metriport Platform added</sub></div>

| Column | Data Type | Description |
| - | - | - |
| observation\_id | varchar | Unique identifier for the observation |
| patient\_id | varchar | Unique identifier for the patient (subject) |
| status | varchar | Status of the observation (e.g. final, preliminary) |
| effectivedatetime | datetime | Effective date/time if provided directly |
| effectiveperiod\_start | datetime | Start of effective period |
| effective\_date† | datetime | Coalesced effective date (effectivedatetime or effectiveperiod\_start) |
| effectiveperiod\_end | datetime | End of effective period |
| code\_text | varchar | Free-text description of the observation type |
| code\_loinc\_code† | varchar | LOINC code for the observation |
| code\_loinc\_display† | varchar | Human-readable LOINC description |
| valuequantity\_value | varchar | Quantity value when observation value is a Quantity |
| valuequantity\_comparator | varchar | Comparator for quantity value (e.g. \<, \<=, >=, >) |
| valuestring | varchar | String value when observation value is a string |
| valuecodeableconcept\_text | varchar | Text when observation value is a CodeableConcept |
| value† | varchar | Coalesced value (quantity, string, or codeable concept text) |
| valuerange\_high\_value | varchar | High value when the observation value is a Range |
| valuerange\_high\_unit | varchar | Unit for high range value |
| valuerange\_low\_value | varchar | Low value when the observation value is a Range |
| valuerange\_low\_unit | varchar | Unit for low range value |
| valuequantity\_unit | varchar | Unit when observation value is a Quantity |
| units† | varchar | Coalesced unit of measurement |
| referencerange\_low\_value† | varchar | Lower bound of the reference range (first range) |
| referencerange\_high\_value† | varchar | Upper bound of the reference range (first range) |
| interpretation\_hl7\_code† | varchar | HL7 interpretation code (ObservationInterpretation) |
| interpretation\_hl7\_display† | varchar | Human-readable description of HL7 interpretation |
| category\_hl7\_code† | varchar | HL7 category code (observation-category, preferred binding) |
| category\_hl7\_display† | varchar | Human-readable description of HL7 category |
| bodysite\_text | varchar | Free-text body site |
| note\_text† | varchar | Additional notes about the observation (first note) |
| meta\_source | varchar | Source document filename from FHIR meta.source |
| data\_source\_ext† | varchar | Integration source of the data, derived from FHIR extension |

**Related Tables:**

**Parent:**

* [patient](/medical-api/handling-data/schema-v100/patient/base)

**Child:**

* [observation\_bodysite\_coding](/medical-api/handling-data/schema-v100/observation/bodysite_coding)
* [observation\_category](/medical-api/handling-data/schema-v100/observation/category)
* [observation\_code\_coding](/medical-api/handling-data/schema-v100/observation/code_coding)
* [observation\_extension](/medical-api/handling-data/schema-v100/observation/extension)
* [observation\_interpretation](/medical-api/handling-data/schema-v100/observation/interpretation)
* [observation\_interpretation\_coding](/medical-api/handling-data/schema-v100/observation/interpretation_coding)
* [observation\_referencerange](/medical-api/handling-data/schema-v100/observation/referencerange)

## Version diff

**Renamed**

* `end_date` → `effectiveperiod_end`
* `reference_range_low` → `referencerange_low_value`
* `reference_range_high` → `referencerange_high_value`
* `loinc_code` → `code_loinc_code`
* `loinc_display` → `code_loinc_display`
* `data_source` → `meta_source`

**Moved to separate tables**

* `bodysite_snomed_ct_code` → [`observation_bodysite_coding.code`](/medical-api/handling-data/schema-v100/observation/bodysite_coding) w/ `system = 'http://snomed.info/sct'`
* `bodysite_snomed_ct_display` → [`observation_bodysite_coding.display`](/medical-api/handling-data/schema-v100/observation/bodysite_coding) w/ `system = 'http://snomed.info/sct'`
* `source_code_code` → [`observation_code_coding.code`](/medical-api/handling-data/schema-v100/observation/code_coding) w/ `code_rank = 1`
* `source_code_display` → [`observation_code_coding.display`](/medical-api/handling-data/schema-v100/observation/code_coding) w/ `code_rank = 1`
* `source_code_system` → [`observation_code_coding.system`](/medical-api/handling-data/schema-v100/observation/code_coding) w/ `code_rank = 1`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.