Curriculum
Module 4·~55 min

Clinical Core

Condition, AllergyIntolerance, Procedure, Encounter, CareTeam, CarePlan, Goal.

4.1

Condition — problems and encounter diagnoses

US Core splits Condition into two flavours: a long-running Problem List Item and an Encounter Diagnosis. Same resource, different category.

A Condition is anything wrong with the patient that warrants attention — a diagnosis, a symptom, a concern.

US Core 5+ defines two profiles built on Condition:

  • us-core-condition-problems-health-concerns — long-running problems and concerns that span encounters.
  • us-core-condition-encounter-diagnosis — what was diagnosed/treated during a single visit.

Required elements

  • clinicalStatusactive | recurrence | relapse | inactive | remission | resolved
  • verificationStatusunconfirmed | provisional | differential | confirmed | refuted | entered-in-error
  • categoryproblem-list-item or encounter-diagnosis (this picks the profile)
  • code — SNOMED CT preferred, ICD-10-CM allowed
  • subject — reference to Patient

Onset and abatement use a x choice type: onsetDateTime | onsetAge | onsetPeriod | onsetRange | onsetString.

Example · Active problem-list condition
json
{
  "resourceType": "Condition",
  "id": "stroke",
  "meta": {
    "profile": [
      "http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition-problems-health-concerns"
    ]
  },
  "clinicalStatus": {
    "coding": [
      {
        "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
        "code": "active"
      }
    ]
  },
  "verificationStatus": {
    "coding": [
      {
        "system": "http://terminology.hl7.org/CodeSystem/condition-ver-status",
        "code": "confirmed"
      }
    ]
  },
  "category": [
    {
      "coding": [
        {
          "system": "http://terminology.hl7.org/CodeSystem/condition-category",
          "code": "problem-list-item"
        }
      ]
    }
  ],
  "code": {
    "coding": [
      {
        "system": "http://snomed.info/sct",
        "code": "422504002",
        "display": "Ischemic stroke"
      }
    ]
  },
  "subject": {
    "reference": "Patient/amy-shaw"
  },
  "onsetDateTime": "2023-03-19"
}
4.2

AllergyIntolerance

AllergyIntolerance captures both true allergies and intolerances. 'No known allergies' is encoded explicitly, not by absence.

Required: clinicalStatus (active/inactive/resolved), verificationStatus, patient, code.

Encoding "no known allergies"

Don't just send an empty list — explicitly assert it with code `no-known-allergies` (or no-known-medication-allergies / no-known-food-allergies / no-known-environmental-allergies) from the AllergyIntolerance value set.

Reactions

reaction.manifestation is a list of CodeableConcepts (anaphylaxis, hives, nausea…). reaction.severity = mild | moderate | severe. Critical for ADE alerting.

4.3

Encounter

An Encounter is the unit of care interaction — a visit, an admission, a phone call. Almost every other clinical resource references one.

Required: status (planned/in-progress/finished/cancelled…), class (AMB, IMP, EMER, HH, VR…), type, subject.

Must Support: participant (the practitioner roles involved), period (start/end), reasonCode or reasonReference, hospitalization (admit/discharge details), location.

The class codes come from v3-ActCode and dictate the workflow: AMB = ambulatory, IMP = inpatient, EMER = emergency, VR = virtual, HH = home health.

4.4

CareTeam, CarePlan, Goal, Procedure

These four wrap up the care-coordination story: who is on the team, what plan is in place, what we're aiming for, and what was done.

CareTeam — list of participant entries (Practitioner, RelatedPerson, Patient themselves) with role codes (PCP, attending, caregiver). One CareTeam per care episode.

CarePlan — the plan tying Goals, Conditions, and activities together. category + status + intent are required. Free-text description is the human-readable summary.

GoallifecycleStatus, description, optional target (e.g. "HbA1c < 7 by 2026-01-01"). Linked from CarePlan.

Procedure — something performed *on* the patient: surgery, immunization administration, screening test. Required status, code, subject. Must Support performed[x] and performer.

Checkpoint quiz

Answer all questions to check your understanding before moving on.

1. How does US Core distinguish a problem-list item from an encounter diagnosis?

2. How do you express that a patient has no known allergies?

3. Which Encounter `class` code represents an emergency department visit?