Skip to main content

Clinical Foundation — How it works

Overview

The clinical engine records the core clinical record: visits and the encounters within them, coded observations, the problem list (diagnoses, conditions, allergies), clinical notes and care plans, and a patient clinical summary. It is concept-backed and references patients by id (logical, no cross-engine FK); dates and statuses are relational and indexed for query.

Data model & ownership

TablePurpose
visitA patient visit; relational status (ACTIVE/ENDED), start/stop.
encounterAn interaction within a visit.
observationA coded observation (concept-bound).
diagnosis / condition / allergyProblem list, with certainty/severity/status.
clinical_note / care_planNarrative + plans.

Key rules & invariants

  • A visit is ACTIVE from creation until ended; encounters/observations attach to it.
  • Clinical facts bind to concept ids; statuses (ClinicalStatus, DiagnosisCertainty, AllergyCategory/AllergySeverity, CarePlanStatus) are relational.
  • Reads are access-scope filtered; the patient reference is logical (owned by demographic).

API

See the API Reference. Endpoint groups under /api/v1/clinical: visits, encounters, observations, diagnoses, conditions, allergies, notes, care plans, and the patient clinical summary.

Configuration & feature flags

None (clinical PHI encryption is a future follow-up beyond SEC-001).