Skip to main content
Version: 3.1

Observation

An observation is a single recorded fact about a patient — a blood pressure of 120/80, a body temperature, a coded answer to a screening question. It is the smallest unit of clinical data in Care: the structured building block that, gathered over time, becomes a patient's chart.

What it represents​

In Care's FHIR-aligned model, an observation maps to the Observation resource. Each one captures:

  • What was observed — a coded concept, typically a LOINC code, that names the thing, such as "systolic blood pressure" or "body temperature"
  • The result — the value itself: a number, a piece of text, a yes/no, or a coded answer, with a unit where one applies
  • Context — the patient it belongs to, the encounter it was recorded in, when it was effective, and who recorded it
  • Clinical qualifiers — optional detail such as the body site, the collection method, a reference range, and an interpretation of high, low, or normal

An observation is a snapshot, not a running tally. It records one fact at one point in time. A trend — a patient's temperature over a week — is many observations read together, never a single record that gets updated in place.

How it is captured​

Observations are rarely entered field by field. Most are produced as a side effect of submitting a questionnaire: each answer on the form becomes an observation, and that observation keeps a link back to the questionnaire response that produced it. This is also why every observation carries both a value and a value type — the value type tells any reader how to interpret what the form captured, whether it was a number, a date, a yes/no, or a coded choice.

Care strongly prefers structured, coded observations over free text. Downstream safety logic — allergy checks, medication interactions, alerting — reads coded values, so a temperature stored as a number with a LOINC code is far more useful than the same reading typed into a note.

Status lifecycle​

An observation's status signals how much to trust the record:

final → amended
final → entered_in_error
  • final — recorded, complete, and verified. Observations created from a questionnaire start here.
  • amended — was final, then corrected. The earlier value is superseded, but the change stays auditable.
  • entered_in_error — recorded by mistake; readers should disregard it. Care keeps the row rather than deleting it, so the audit trail stays intact.

How it connects​

An observation rarely stands alone. It links to the primitives around it:

  • Patient — every observation belongs to one patient; this anchor is what makes it part of a chart.
  • Encounter — it is normally recorded within an encounter, tying the fact to a specific visit or admission.
  • Observation definition — an observation definition can act as the template, supplying expected codes, units, and reference ranges.
  • Diagnostic report — lab and imaging results are observations grouped under a diagnostic report.
  • Other observations — observations can nest. A panel such as a blood-pressure reading is a grouping observation whose components each carry their own code and value.

Permissions​

Observations are exposed through a read-only API, so the viewset only gates reading. Access is governed by clinical-data permissions: a reader is allowed if they hold the patient-level can_view_clinical_data permission, or, when querying a specific encounter, the encounter-level can_read_encounter_clinical_data permission. Observations are recorded as a side effect of submitting questionnaires, so creating them is gated by those questionnaire flows rather than by this viewset.

PermissionDescriptionSystem Roles
can_view_clinical_dataView clinical data about a patient, including their observationsStaff, Doctor, Nurse, Admin, Facility Admin
can_read_encounter_clinical_dataRead clinical data recorded within a specific encounter; used as the encounter-scoped fallback when reading observationsAdmin, Doctor, Nurse, Facility Admin

Roles are granted through a user's organization, facility, or patient memberships, and permissions cascade down the organization tree — so access to a patient's observations follows from access to the patient.