Encounter
An interaction between a patient and healthcare provider for the purpose of providing healthcare services. Encompasses ambulatory visits, emergency care, inpatient admissions, and telemedicine sessions, supporting care coordination, billing, and clinical documentation.
Overview
Encounter is the central entity for documenting patient visits and healthcare interactions. It captures the context (class, type), timing (period), participants, reasons, and outcomes of any healthcare interaction - from a routine office visit to a multi-week hospitalization. Encounters form the foundation for clinical documentation, billing, quality measurement, and care coordination. Related entities track admission details, discharge planning, diagnoses, locations, and participating providers.
Key Concepts
Encounter Class
The class field defines the care setting and intensity:
| Class | Description | Typical Duration |
|---|---|---|
ambulatory | Outpatient office/clinic visit | Minutes to hours |
emergency | Emergency department visit | Hours |
inpatient | Hospital admission | Days to weeks |
observation | Short-stay observation | Up to 48 hours |
virtual | Telehealth/video visit | Minutes |
home-health | Care delivered at home | Variable |
field | Care outside facility (EMS, mobile) | Variable |
Encounter Status Lifecycle
Encounters progress through states:
planned → arrived → triaged → in-progress → finished
↓
onleave
| Status | Description |
|---|---|
planned | Scheduled but not yet started |
arrived | Patient has arrived at location |
triaged | Patient assessed for priority (emergency) |
in-progress | Active care being provided |
onleave | Patient temporarily away (day pass, procedure) |
finished | Encounter completed |
cancelled | Encounter cancelled before starting |
entered-in-error | Record created in error |
Encounter Priority
Urgency level for resource allocation:
| Priority | Response Time | Example |
|---|---|---|
routine | Normal scheduling | Annual physical |
urgent | Same day/next day | Acute infection |
asap | Within hours | Worsening symptoms |
stat | Immediate | Life-threatening |
Encounter Types
More granular classification via EncounterType:
AMB- Ambulatory visitEMER- Emergency visitIMP- Inpatient admissionVR- Virtual/telehealth
Reason for Visit
Two fields capture why the patient is being seen:
reasonCode- Coded reasons using Coding (SNOMED-CT)reasonText- Free-text chief complaint
Encounter Hierarchy
The partOf field links related encounters:
- Emergency visit → leads to → Inpatient admission
- Outpatient surgery → part of → Surgical episode
Use Cases
Patient Check-In
When patient arrives:
- Update status from
plannedtoarrived - Record arrival time in period.start
- Create EncounterLocation record
- Assign to provider via EncounterParticipant
Emergency Triage
In emergency department:
- Create encounter with class
emergency - Record chief complaint in reasonText
- Update status to
triaged - Set priority based on assessment
- Assign to treatment area
Inpatient Admission
When admitting patient:
- Create encounter with class
inpatient - Create Admission record with details
- Assign bed via EncounterLocation
- Link to originating encounter if transferred from ED
Visit Documentation
During the encounter:
- Add diagnoses via EncounterDiagnosis
- Track providers via EncounterParticipant
- Update locations if patient moves
- Document reason via EncounterReason
Discharge
When visit concludes:
- Update status to
finished - Set period.end to departure time
- Create Discharge record for inpatients
- Finalize encounter diagnoses for billing
Related Entities
| Entity | Relationship | Description |
|---|---|---|
| Patient | References | Patient receiving care |
| EncounterType | References | Specific type classification |
| Facility | References | Service provider facility |
| Admission | Has one | Inpatient admission details |
| Discharge | Has one | Discharge details |
| EncounterDiagnosis | Has many | Diagnoses during encounter |
| EncounterLocation | Has many | Location history |
| EncounterParticipant | Has many | Participating providers |
| EncounterReason | Has many | Reasons for visit |
| ClinicalIdentifier | Contains | Business identifiers |
| Period | Contains | Start/end times |
Calculated Fields
| Field | Type | Description |
|---|---|---|
isActive | boolean | True when status is in-progress or onleave |
isCompleted | boolean | True when status is finished |
durationMinutes | number | Duration calculated from period start/end |
Enums
status
| Value | Description |
|---|---|
planned | Encounter is scheduled but has not yet started |
arrived | Patient has arrived and check-in is complete |
triaged | Patient has been assessed for urgency (emergency) |
in-progress | Encounter is actively occurring, care being provided |
onleave | Patient temporarily away from facility during encounter |
finished | Encounter has ended, patient departed |
cancelled | Encounter was cancelled before it started |
entered-in-error | Record was created in error and should be ignored |
unknown | Status cannot be determined |
class
| Value | Description |
|---|---|
ambulatory | Outpatient visit at clinic or office |
emergency | Emergency department visit |
field | Care provided outside a facility (EMS, mobile health) |
home-health | Healthcare services delivered in patient's home |
inpatient | Hospital admission for overnight stay |
virtual | Telehealth or video visit |
observation | Short-stay observation status (typically < 48 hours) |
priority
| Value | Description |
|---|---|
routine | Normal scheduling, no urgency |
urgent | Requires attention same day or next day |
asap | As soon as possible, within hours |
stat | Immediate attention required, life-threatening |
Properties
| Property | Type | Mode | Description | Required |
|---|---|---|---|---|
| identifier | ClinicalIdentifier[] | stored | Unique business identifiers assigned to this encounter by healthcare facilities, organizations, or systems for tracking and reference purposes across multiple systems Example: | Optional |
| status | string | stored | Current state of the encounter in its lifecycle from planning through completion or cancellation Values: Example: | Required |
| class | string | stored | Classification of the encounter setting that distinguishes the care delivery context, intensity level, and expected duration - fundamental for resource allocation, billing, and care pathway determination Values: Example: | Required |
| type | EncounterType[] | stored | Specific categorization of the encounter that provides more granular detail than class - references standardized encounter type codes for scheduling, documentation, and reporting purposes Example: | Optional |
| priority | string | stored | Urgency level of the encounter that drives resource allocation, triage decisions, and expected response times in clinical workflow management Values: Example: | Optional |
| patient | Patient | stored | Reference to the patient who is the subject of this encounter and recipient of healthcare services | Required |
| period | Period | stored | Temporal boundaries defining when the encounter occurred or is scheduled to occur - start time marks patient arrival or admission, end time marks departure or discharge Example: | Optional |
| length | number | stored | Actual or estimated duration of the encounter in minutes - can be recorded explicitly or calculated from period start and end times Example: | Optional |
| reasonCode | Coding[] | stored | Coded clinical reasons or chief complaints that motivated the encounter - supports clinical decision support, quality measurement, and population health analytics using standardized terminology Example: | Optional |
| reasonText | string | stored | Free-text narrative description of why the encounter occurred - captures patient-reported chief complaints or clinical indications that may not have standardized codes Example: | Optional |
| serviceProvider | Facility | stored | Reference to the healthcare organization or facility responsible for providing services during this encounter - the legal entity accountable for care delivery and documentation Example: | Optional |
| partOf | Encounter | stored | Reference to a parent or containing encounter when this encounter is a component of a larger care episode - enables hierarchical modeling of complex encounters like emergency visits leading to admissions | Optional |
| isActive | boolean | calculated | Whether the encounter is currently active and ongoing - true when status is in-progress or onleave, indicating the patient is currently receiving care or temporarily away but not discharged | Optional |
| isCompleted | boolean | calculated | Whether the encounter has been completed - true when status is finished, indicating all care activities have concluded and the patient has been discharged or visit has ended | Optional |
| durationMinutes | number | calculated | Calculated duration in minutes derived from the difference between period start and end times - automatically computed when explicit length is not provided | Optional |
Examples
Example 1
{
"@type": "Encounter",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "ENC-2024-001234",
"clinicalSystem": "custom",
"assigner": {
"@type": "Organization",
"name": "City General Hospital"
}
}
],
"status": "finished",
"class": "ambulatory",
"type": [
{
"@type": "EncounterType",
"code": "AMB",
"label": "Ambulatory",
"class": "ambulatory",
"typicalDurationMinutes": 30
}
],
"priority": "routine",
"patient": {
"@type": "Patient",
"givenName": "John",
"familyName": "Smith",
"birthDate": "1975-05-15"
},
"period": {
"@type": "Period",
"start": "2024-11-30T09:00:00Z",
"end": "2024-11-30T09:30:00Z"
},
"length": 30,
"reasonCode": [
{
"@type": "Coding",
"code": "444814009",
"system": "SNOMED-CT",
"display": "Viral upper respiratory tract infection"
}
],
"reasonText": "Annual check-up and vaccination",
"serviceProvider": {
"@type": "Facility",
"name": "Downtown Medical Clinic"
}
}Example 2
{
"@type": "Encounter",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "ER-2024-567890",
"clinicalSystem": "custom"
}
],
"status": "in-progress",
"class": "emergency",
"type": [
{
"@type": "EncounterType",
"code": "EMER",
"label": "Emergency",
"class": "emergency",
"typicalDurationMinutes": 180
}
],
"priority": "urgent",
"patient": {
"@type": "Patient",
"givenName": "Sarah",
"familyName": "Johnson",
"birthDate": "1989-11-22"
},
"period": {
"@type": "Period",
"start": "2024-11-30T14:30:00Z"
},
"reasonCode": [
{
"@type": "Coding",
"code": "29857009",
"system": "SNOMED-CT",
"display": "Chest pain"
}
],
"reasonText": "Severe chest pain radiating to left arm",
"serviceProvider": {
"@type": "Facility",
"name": "City General Hospital Emergency Department"
}
}Example 3
{
"@type": "Encounter",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "IP-2024-987654",
"clinicalSystem": "custom"
}
],
"status": "in-progress",
"class": "inpatient",
"type": [
{
"@type": "EncounterType",
"code": "IMP",
"label": "Inpatient",
"class": "inpatient"
}
],
"priority": "routine",
"patient": {
"@type": "Patient",
"givenName": "Robert",
"familyName": "Williams",
"birthDate": "1942-03-10"
},
"period": {
"@type": "Period",
"start": "2024-11-28T08:00:00Z"
},
"reasonCode": [
{
"@type": "Coding",
"code": "195967001",
"system": "SNOMED-CT",
"display": "Asthma"
}
],
"reasonText": "Acute asthma exacerbation requiring hospitalization",
"serviceProvider": {
"@type": "Facility",
"name": "City General Hospital"
},
"partOf": {
"@type": "Encounter",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "ER-2024-555123"
}
]
}
}Example 4
{
"@type": "Encounter",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "VR-2024-445566",
"clinicalSystem": "custom"
}
],
"status": "finished",
"class": "virtual",
"type": [
{
"@type": "EncounterType",
"code": "VR",
"label": "Virtual",
"class": "virtual",
"typicalDurationMinutes": 20
}
],
"priority": "routine",
"patient": {
"@type": "Patient",
"givenName": "Emily",
"familyName": "Chen",
"birthDate": "1995-07-08"
},
"period": {
"@type": "Period",
"start": "2024-11-29T15:00:00Z",
"end": "2024-11-29T15:20:00Z"
},
"length": 20,
"reasonCode": [
{
"@type": "Coding",
"code": "162339002",
"system": "SNOMED-CT",
"display": "Hearing problem"
}
],
"reasonText": "Follow-up consultation for medication management via telemedicine",
"serviceProvider": {
"@type": "Facility",
"name": "Virtual Health Services"
}
}