Charting
Building out a charting experience requires composing multiple FHIR resources into an experience that meets the requirements of practitioners. There are three primary interactions that developers should consider when building out a custom charting experience:
- Summarizing patient history and status
- Capturing clinical notes
- Placing orders for medications, labs, imaging, etc.
Patient History
Here is a sample of what a charting experience might look like - to be clear, charting can look however you want it to. A sample charting application built off of Medplum React components and be found on medplum-chart-demo github.
When summarizing patient history, gathering demographic data from the Patient resource is a basic first step. You can also query all resources related to a given patient from the Patient $everything
endpoint.
Depending on your use case, $everything
may be verbose to summarize in a chart, so queries for specific resources like active CarePlans, MedicationRequests, Conditions may be more appropriate. Search is useful to construct the specific queries that will give the context needed for a chart.
React components are available to aid in building a quick charting experience. PatientTimeline, Timeline, Search control, ResourceAvatar, FhirPathDisplay and Tabs are potential components that can speed development of the summarized history.
Key Resources
Resource | Description |
---|---|
Observation | A structured representation of point-in-time clinical measurements. |
Condition | A record of a long-term diagnosis for a patient. |
RiskAssessment | A specialized form of an Observation used to model propensity for an adverse outcome. |
AllergyIntolerance | Used for a specific type of risk: adverse reaction to a drug or substance. |
Immunization | A summary statement of vaccination records. |
Medication | A representation of an instance of a given drug. The Medication lifecycle also includes the below resources. |
MedicationRequest | An order or prescription. |
MedicationAdministration | A lifecycle resource representing when the Patient ingests the drug. |
MedicationStatement | A summary statement of the drug. |
Key Code Systems
Code System | Description |
---|---|
LOINC | Used in Observation and RiskAssessment resources for compliance, billing, and reporting. |
ICD-10 | Used in Condition resources for interoperability and billing. |
RXNORM | Used in AllergyIntolerance resources to track drug intolerances and MedicationRequest resources to track requested drugs. |
SNOMED | Used in AllergyIntolerance resources to track substance intolerances. |
CVX | Used in Immunization resources to track vaccine types. |
Encounter & Charting
Capturing Notes
A wide variety of notes experiences are possible, and customizability is one of the key reasons to use a headless system. From a technical perspective, after a practitioner/patient interaction is complete, a set of appropriate FHIR resources should be created.
Some implementations have a simple text box and allow the practitioner to enter text free form, then construct Encounter and/or ClinicalImpression resources.
Some implementations have a library of Questionnaires that practitioners fill out and use Bots to drive workflow and create resources in a specific way.
Key Resources
Resource | Description |
---|---|
Encounter | Primary tracking resource for a visit (either in-person or virtual). |
ClinicalImpression | Medplum-advised resource for recording unstructured notes. |
Condition | A record of a long-term diagnosis for a Patient . The outcome of an Encounter can be a Condition with a type of 'encounter diagnosis'. For more details see the Representing Diagnoses docs. |
Observation | A structured representation of point-in-time clinical measurements. |
RiskAssessment | A specialized form of an Observation that is used to model propensity for an adverse outcome. |
Key Code Systems
Code System | Description |
---|---|
CPT | Used to annotate Encounter resources for billing. |
ICD-10 | Used to annotate Encounter resources for billing. |
- CPT: Used to annotate
Encounter
resources for billing. - ICD-10: Used to annotate
Encounter
resources for billing.
Placing Orders
Placing orders requires constructing the right resources, which can be created directly or via Questionnaires
and Bots
. Refer to our section on Labs and Imaging or Prescriptions for more details.
Reference
- Sample application Charting Demo Source Code
- Charting Demo Video on Youtube (3 min)
- Medical condition/diagnosis 1CD-9 sample ValueSet bundle
- Charting Features and Fixes on Github