This page is part of the FHIR Specification v4.3.0-snapshot1: R4B Snapshot to support the Jan 2022 Connectathon. About the R4B version of FHIR. The current officially released version is 4.3.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
Patient Administration Work Group | Maturity Level: 2 | Trial Use | Security Category: Patient | Compartments: Encounter, Patient, Practitioner, RelatedPerson |
An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.
A patient encounter is further characterized by the setting in which it takes place. Amongst them are ambulatory, emergency, home health, inpatient and virtual encounters. An Encounter encompasses the lifecycle from pre-admission, the actual encounter (for ambulatory encounters), and admission, stay and discharge (for inpatient encounters). During the encounter the patient may move from practitioner to practitioner and location to location.
Because of the broad scope of Encounter, not all elements will be relevant in all settings. For this reason, admission/discharge related information is kept in a separate Hospitalization component within Encounter. The class element is used to distinguish between these settings, which will guide further validation and application of business rules.
There is also substantial variance from organization to organization (and between jurisdictions and countries) on which business events translate to the start of a new Encounter, or what level of aggregation is used for Encounter. For example, each single visit of a practitioner during a hospitalization may lead to a new instance of Encounter, but depending on local practice and the systems involved, it may well be that this is aggregated to a single instance for a whole hospitalization. Even more aggregation may occur where jurisdictions introduce groups of Encounters for financial or other reasons. Encounters can be aggregated or grouped under other Encounters using the partOf element. See below for examples.
Encounter instances may exist before the actual encounter takes place to convey pre-admission information, including using Encounters elements to reflect the planned start date or planned encounter locations. In this case the status element is set to 'planned'.
The Hospitalization component is intended to store the extended information relating to a hospitalization event. It is always expected to be the same period as the encounter itself. Where the period is different, another encounter instance should be used to capture this information as a partOf this encounter instance.
The Procedure and encounter have references to each other, and these should be to different procedures; one for the procedure that was performed during the encounter (stored in Procedure.encounter), and another for cases where an encounter is a result of another procedure (stored in Encounter.indication) such as a follow-up encounter to resolve complications from an earlier procedure.
During the life-cycle of an encounter it will pass through many statuses. Typically these are in order or the
organization's workflow: planned, in-progress, finished/cancelled.
This status information is often used for other things, and often an analysis of the status history is required.
This could be done by scanning through all the versions of the encounter, checking the period of each,
and then doing some form of post processing. To ease the burden of this (or where a system doesn't support resource
histories) a status history component is included.
There is no direct indication purely by the status field as to whether an encounter is considered "admitted".
The context of the encounter and business practices/policies/workflows/types can influence this definition.
(e.g., acute care facility, aged care center, outpatient clinic, emergency department, community-based clinic).
Statuses of "arrived", "triaged" or "in progress" could be considered the start of the admission, and also have the
presence of the hospitalization sub-component entered.
The "on leave" status might or might not be a part of the admission, for example if the patient
was permitted to go home for a weekend or some other form of external event.
The location is also likely to be filled in with a location status of "present".
For other examples such as an outpatient visit (day procedure - colonoscopy), the patient could also be
considered to be admitted, hence the encounter doesn't have a fixed definition of admitted.
At a minimum, we do believe that a patient IS admitted when the status is in-progress.
The Encounter resource is not to be used to store appointment information, the Appointment resource is intended to be used for that.
Note that in many systems outpatient encounters (which are in scope for Encounter) and Appointment are used
concurrently. In FHIR, Appointment is used for establishing a date for the encounter, while Encounter is
applicable to information about the actual Encounter, i.e., the patient showing up.
As such, an encounter in the "planned" status is not identical to the appointment that scheduled it,
but it is the encounter prior to its actual occurrence, with the expectation that encounter will be
updated as it progresses to completion. Patient arrival at a location does not necessarily mean the
start of the encounter (e.g. a patient arrives an hour earlier than he is actually seen by a practitioner).
An appointment is normally used for the planning stage of an appointment, searching, locating an available time, then
making the appointment. Once this process is completed and the appointment is about to start, then the appointment
will be marked as fulfilled, and linked to the newly created encounter.
This new encounter may start in an "arrived" status when they are admitted at a location of the facility, and then will
move to the ward where another part-of encounter may begin.
Communication resources are used for a simultaneous interaction between a practitioner and a patient where there is no
direct contact. Examples include a phone message, or transmission of some correspondence documentation.
There is no duration recorded for a communication resource, but it could contain sent and received times.
Standard Extension: Associated Encounter
This extension should be used to reference an encounter where there is no property that already defines this association on the resource.
This resource is referenced by AdverseEvent, AllergyIntolerance, CarePlan, CareTeam, ChargeItem, Claim, ClinicalImpression, Communication, CommunicationRequest, Composition, Condition, Contract, DeviceRequest, DiagnosticReport, DocumentReference, itself, ExplanationOfBenefit, Flag, GuidanceResponse, ImagingStudy, Immunization, List, Media, MedicationAdministration, MedicationDispense, MedicationRequest, MedicationStatement, NutritionOrder, Observation, Procedure, QuestionnaireResponse, RequestGroup, RiskAssessment, ServiceRequest, Task and VisionPrescription.
This resource implements the Event pattern.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Encounter | TU | DomainResource | An interaction during which services are provided to the patient Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Identifier(s) by which this encounter is known |
status | ?!Σ | 1..1 | code | planned | arrived | triaged | in-progress | onleave | finished | cancelled + EncounterStatus (Required) |
statusHistory | 0..* | BackboneElement | List of past encounter statuses | |
status | 1..1 | code | planned | arrived | triaged | in-progress | onleave | finished | cancelled + EncounterStatus (Required) | |
period | 1..1 | Period | The time that the episode was in the specified status | |
class | Σ | 1..1 | Coding | Classification of patient encounter ActEncounterCode (Extensible) |
classHistory | 0..* | BackboneElement | List of past encounter classes | |
class | 1..1 | Coding | inpatient | outpatient | ambulatory | emergency + ActEncounterCode (Extensible) | |
period | 1..1 | Period | The time that the episode was in the specified class | |
type | Σ | 0..* | CodeableConcept | Specific type of encounter EncounterType (Example) |
serviceType | Σ | 0..1 | CodeableConcept | Specific type of service ServiceType (Example) |
priority | 0..1 | CodeableConcept | Indicates the urgency of the encounter ActPriority (Example) | |
subject | Σ | 0..1 | Reference(Patient | Group) | The patient or group present at the encounter |
episodeOfCare | Σ | 0..* | Reference(EpisodeOfCare) | Episode(s) of care that this encounter should be recorded against |
basedOn | 0..* | Reference(ServiceRequest) | The ServiceRequest that initiated this encounter | |
participant | Σ | 0..* | BackboneElement | List of participants involved in the encounter |
type | Σ | 0..* | CodeableConcept | Role of participant in encounter ParticipantType (Extensible) |
period | 0..1 | Period | Period of time during the encounter that the participant participated | |
individual | Σ | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson) | Persons involved in the encounter other than the patient |
appointment | Σ | 0..* | Reference(Appointment) | The appointment that scheduled this encounter |
period | 0..1 | Period | The start and end time of the encounter | |
length | 0..1 | Duration | Quantity of time the encounter lasted (less time absent) | |
reasonCode | Σ | 0..* | CodeableConcept | Coded reason the encounter takes place Encounter Reason Codes (Preferred) |
reasonReference | Σ | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | Reason the encounter takes place (reference) |
diagnosis | Σ | 0..* | BackboneElement | The list of diagnosis relevant to this encounter |
condition | Σ | 1..1 | Reference(Condition | Procedure) | The diagnosis or procedure relevant to the encounter |
use | 0..1 | CodeableConcept | Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) DiagnosisRole (Preferred) | |
rank | 0..1 | positiveInt | Ranking of the diagnosis (for each role type) | |
account | 0..* | Reference(Account) | The set of accounts that may be used for billing for this Encounter | |
hospitalization | 0..1 | BackboneElement | Details about the admission to a healthcare service | |
preAdmissionIdentifier | 0..1 | Identifier | Pre-admission identifier | |
origin | 0..1 | Reference(Location | Organization) | The location/organization from which the patient came before admission | |
admitSource | 0..1 | CodeableConcept | From where patient was admitted (physician referral, transfer) AdmitSource (Preferred) | |
reAdmission | 0..1 | CodeableConcept | The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission hl7VS-re-admissionIndicator (Example) | |
dietPreference | 0..* | CodeableConcept | Diet preferences reported by the patient Diet (Example) | |
specialCourtesy | 0..* | CodeableConcept | Special courtesies (VIP, board member) SpecialCourtesy (Preferred) | |
specialArrangement | 0..* | CodeableConcept | Wheelchair, translator, stretcher, etc. SpecialArrangements (Preferred) | |
destination | 0..1 | Reference(Location | Organization) | Location/organization to which the patient is discharged | |
dischargeDisposition | 0..1 | CodeableConcept | Category or kind of location after discharge DischargeDisposition (Example) | |
location | 0..* | BackboneElement | List of locations where the patient has been | |
location | 1..1 | Reference(Location) | Location the encounter takes place | |
status | 0..1 | code | planned | active | reserved | completed EncounterLocationStatus (Required) | |
physicalType | 0..1 | CodeableConcept | The physical type of the location (usually the level in the location hierachy - bed room ward etc.) LocationType (Example) | |
period | 0..1 | Period | Time period during which the patient was present at the location | |
serviceProvider | 0..1 | Reference(Organization) | The organization (facility) responsible for this encounter | |
partOf | 0..1 | Reference(Encounter) | Another Encounter this encounter is part of | |
Documentation for this format |
UML Diagram (Legend)
XML Template
<Encounter xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifier(s) by which this encounter is known --></identifier> <status value="[code]"/><!-- 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + --> <statusHistory> <!-- 0..* List of past encounter statuses --> <status value="[code]"/><!-- 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + --> <period><!-- 1..1 Period The time that the episode was in the specified status --></period> </statusHistory> <class><!-- 1..1 Coding Classification of patient encounter --></class> <classHistory> <!-- 0..* List of past encounter classes --> <class><!-- 1..1 Coding inpatient | outpatient | ambulatory | emergency + --></class> <period><!-- 1..1 Period The time that the episode was in the specified class --></period> </classHistory> <type><!-- 0..* CodeableConcept Specific type of encounter --></type> <serviceType><!-- 0..1 CodeableConcept Specific type of service --></serviceType> <priority><!-- 0..1 CodeableConcept Indicates the urgency of the encounter --></priority> <subject><!-- 0..1 Reference(Group|Patient) The patient or group present at the encounter --></subject> <episodeOfCare><!-- 0..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against --></episodeOfCare> <basedOn><!-- 0..* Reference(ServiceRequest) The ServiceRequest that initiated this encounter --></basedOn> <participant> <!-- 0..* List of participants involved in the encounter --> <type><!-- 0..* CodeableConcept Role of participant in encounter --></type> <period><!-- 0..1 Period Period of time during the encounter that the participant participated --></period> <individual><!-- 0..1 Reference(Practitioner|PractitionerRole|RelatedPerson) Persons involved in the encounter other than the patient --></individual> </participant> <appointment><!-- 0..* Reference(Appointment) The appointment that scheduled this encounter --></appointment> <period><!-- 0..1 Period The start and end time of the encounter --></period> <length><!-- 0..1 Duration Quantity of time the encounter lasted (less time absent) --></length> <reasonCode><!-- 0..* CodeableConcept Coded reason the encounter takes place --></reasonCode> <reasonReference><!-- 0..* Reference(Condition|ImmunizationRecommendation| Observation|Procedure) Reason the encounter takes place (reference) --></reasonReference> <diagnosis> <!-- 0..* The list of diagnosis relevant to this encounter --> <condition><!-- 1..1 Reference(Condition|Procedure) The diagnosis or procedure relevant to the encounter --></condition> <use><!-- 0..1 CodeableConcept Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) --></use> <rank value="[positiveInt]"/><!-- 0..1 Ranking of the diagnosis (for each role type) --> </diagnosis> <account><!-- 0..* Reference(Account) The set of accounts that may be used for billing for this Encounter --></account> <hospitalization> <!-- 0..1 Details about the admission to a healthcare service --> <preAdmissionIdentifier><!-- 0..1 Identifier Pre-admission identifier --></preAdmissionIdentifier> <origin><!-- 0..1 Reference(Location|Organization) The location/organization from which the patient came before admission --></origin> <admitSource><!-- 0..1 CodeableConcept From where patient was admitted (physician referral, transfer) --></admitSource> <reAdmission><!-- 0..1 CodeableConcept The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission --></reAdmission> <dietPreference><!-- 0..* CodeableConcept Diet preferences reported by the patient --></dietPreference> <specialCourtesy><!-- 0..* CodeableConcept Special courtesies (VIP, board member) --></specialCourtesy> <specialArrangement><!-- 0..* CodeableConcept Wheelchair, translator, stretcher, etc. --></specialArrangement> <destination><!-- 0..1 Reference(Location|Organization) Location/organization to which the patient is discharged --></destination> <dischargeDisposition><!-- 0..1 CodeableConcept Category or kind of location after discharge --></dischargeDisposition> </hospitalization> <location> <!-- 0..* List of locations where the patient has been --> <location><!-- 1..1 Reference(Location) Location the encounter takes place --></location> <status value="[code]"/><!-- 0..1 planned | active | reserved | completed --> <physicalType><!-- 0..1 CodeableConcept The physical type of the location (usually the level in the location hierachy - bed room ward etc.) --></physicalType> <period><!-- 0..1 Period Time period during which the patient was present at the location --></period> </location> <serviceProvider><!-- 0..1 Reference(Organization) The organization (facility) responsible for this encounter --></serviceProvider> <partOf><!-- 0..1 Reference(Encounter) Another Encounter this encounter is part of --></partOf> </Encounter>
JSON Template
{ "resourceType" : "Encounter", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Identifier(s) by which this encounter is known "status" : "<code>", // R! planned | arrived | triaged | in-progress | onleave | finished | cancelled + "statusHistory" : [{ // List of past encounter statuses "status" : "<code>", // R! planned | arrived | triaged | in-progress | onleave | finished | cancelled + "period" : { Period } // R! The time that the episode was in the specified status }], "class" : { Coding }, // R! Classification of patient encounter "classHistory" : [{ // List of past encounter classes "class" : { Coding }, // R! inpatient | outpatient | ambulatory | emergency + "period" : { Period } // R! The time that the episode was in the specified class }], "type" : [{ CodeableConcept }], // Specific type of encounter "serviceType" : { CodeableConcept }, // Specific type of service "priority" : { CodeableConcept }, // Indicates the urgency of the encounter "subject" : { Reference(Group|Patient) }, // The patient or group present at the encounter "episodeOfCare" : [{ Reference(EpisodeOfCare) }], // Episode(s) of care that this encounter should be recorded against "basedOn" : [{ Reference(ServiceRequest) }], // The ServiceRequest that initiated this encounter "participant" : [{ // List of participants involved in the encounter "type" : [{ CodeableConcept }], // Role of participant in encounter "period" : { Period }, // Period of time during the encounter that the participant participated "individual" : { Reference(Practitioner|PractitionerRole|RelatedPerson) } // Persons involved in the encounter other than the patient }], "appointment" : [{ Reference(Appointment) }], // The appointment that scheduled this encounter "period" : { Period }, // The start and end time of the encounter "length" : { Duration }, // Quantity of time the encounter lasted (less time absent) "reasonCode" : [{ CodeableConcept }], // Coded reason the encounter takes place "reasonReference" : [{ Reference(Condition|ImmunizationRecommendation| Observation|Procedure) }], // Reason the encounter takes place (reference) "diagnosis" : [{ // The list of diagnosis relevant to this encounter "condition" : { Reference(Condition|Procedure) }, // R! The diagnosis or procedure relevant to the encounter "use" : { CodeableConcept }, // Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) "rank" : "<positiveInt>" // Ranking of the diagnosis (for each role type) }], "account" : [{ Reference(Account) }], // The set of accounts that may be used for billing for this Encounter "hospitalization" : { // Details about the admission to a healthcare service "preAdmissionIdentifier" : { Identifier }, // Pre-admission identifier "origin" : { Reference(Location|Organization) }, // The location/organization from which the patient came before admission "admitSource" : { CodeableConcept }, // From where patient was admitted (physician referral, transfer) "reAdmission" : { CodeableConcept }, // The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission "dietPreference" : [{ CodeableConcept }], // Diet preferences reported by the patient "specialCourtesy" : [{ CodeableConcept }], // Special courtesies (VIP, board member) "specialArrangement" : [{ CodeableConcept }], // Wheelchair, translator, stretcher, etc. "destination" : { Reference(Location|Organization) }, // Location/organization to which the patient is discharged "dischargeDisposition" : { CodeableConcept } // Category or kind of location after discharge }, "location" : [{ // List of locations where the patient has been "location" : { Reference(Location) }, // R! Location the encounter takes place "status" : "<code>", // planned | active | reserved | completed "physicalType" : { CodeableConcept }, // The physical type of the location (usually the level in the location hierachy - bed room ward etc.) "period" : { Period } // Time period during which the patient was present at the location }], "serviceProvider" : { Reference(Organization) }, // The organization (facility) responsible for this encounter "partOf" : { Reference(Encounter) } // Another Encounter this encounter is part of }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Encounter; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Encounter.identifier [ Identifier ], ... ; # 0..* Identifier(s) by which this encounter is known fhir:Encounter.status [ code ]; # 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + fhir:Encounter.statusHistory [ # 0..* List of past encounter statuses fhir:Encounter.statusHistory.status [ code ]; # 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + fhir:Encounter.statusHistory.period [ Period ]; # 1..1 The time that the episode was in the specified status ], ...; fhir:Encounter.class [ Coding ]; # 1..1 Classification of patient encounter fhir:Encounter.classHistory [ # 0..* List of past encounter classes fhir:Encounter.classHistory.class [ Coding ]; # 1..1 inpatient | outpatient | ambulatory | emergency + fhir:Encounter.classHistory.period [ Period ]; # 1..1 The time that the episode was in the specified class ], ...; fhir:Encounter.type [ CodeableConcept ], ... ; # 0..* Specific type of encounter fhir:Encounter.serviceType [ CodeableConcept ]; # 0..1 Specific type of service fhir:Encounter.priority [ CodeableConcept ]; # 0..1 Indicates the urgency of the encounter fhir:Encounter.subject [ Reference(Group|Patient) ]; # 0..1 The patient or group present at the encounter fhir:Encounter.episodeOfCare [ Reference(EpisodeOfCare) ], ... ; # 0..* Episode(s) of care that this encounter should be recorded against fhir:Encounter.basedOn [ Reference(ServiceRequest) ], ... ; # 0..* The ServiceRequest that initiated this encounter fhir:Encounter.participant [ # 0..* List of participants involved in the encounter fhir:Encounter.participant.type [ CodeableConcept ], ... ; # 0..* Role of participant in encounter fhir:Encounter.participant.period [ Period ]; # 0..1 Period of time during the encounter that the participant participated fhir:Encounter.participant.individual [ Reference(Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Persons involved in the encounter other than the patient ], ...; fhir:Encounter.appointment [ Reference(Appointment) ], ... ; # 0..* The appointment that scheduled this encounter fhir:Encounter.period [ Period ]; # 0..1 The start and end time of the encounter fhir:Encounter.length [ Duration ]; # 0..1 Quantity of time the encounter lasted (less time absent) fhir:Encounter.reasonCode [ CodeableConcept ], ... ; # 0..* Coded reason the encounter takes place fhir:Encounter.reasonReference [ Reference(Condition|ImmunizationRecommendation|Observation|Procedure) ], ... ; # 0..* Reason the encounter takes place (reference) fhir:Encounter.diagnosis [ # 0..* The list of diagnosis relevant to this encounter fhir:Encounter.diagnosis.condition [ Reference(Condition|Procedure) ]; # 1..1 The diagnosis or procedure relevant to the encounter fhir:Encounter.diagnosis.use [ CodeableConcept ]; # 0..1 Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) fhir:Encounter.diagnosis.rank [ positiveInt ]; # 0..1 Ranking of the diagnosis (for each role type) ], ...; fhir:Encounter.account [ Reference(Account) ], ... ; # 0..* The set of accounts that may be used for billing for this Encounter fhir:Encounter.hospitalization [ # 0..1 Details about the admission to a healthcare service fhir:Encounter.hospitalization.preAdmissionIdentifier [ Identifier ]; # 0..1 Pre-admission identifier fhir:Encounter.hospitalization.origin [ Reference(Location|Organization) ]; # 0..1 The location/organization from which the patient came before admission fhir:Encounter.hospitalization.admitSource [ CodeableConcept ]; # 0..1 From where patient was admitted (physician referral, transfer) fhir:Encounter.hospitalization.reAdmission [ CodeableConcept ]; # 0..1 The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission fhir:Encounter.hospitalization.dietPreference [ CodeableConcept ], ... ; # 0..* Diet preferences reported by the patient fhir:Encounter.hospitalization.specialCourtesy [ CodeableConcept ], ... ; # 0..* Special courtesies (VIP, board member) fhir:Encounter.hospitalization.specialArrangement [ CodeableConcept ], ... ; # 0..* Wheelchair, translator, stretcher, etc. fhir:Encounter.hospitalization.destination [ Reference(Location|Organization) ]; # 0..1 Location/organization to which the patient is discharged fhir:Encounter.hospitalization.dischargeDisposition [ CodeableConcept ]; # 0..1 Category or kind of location after discharge ]; fhir:Encounter.location [ # 0..* List of locations where the patient has been fhir:Encounter.location.location [ Reference(Location) ]; # 1..1 Location the encounter takes place fhir:Encounter.location.status [ code ]; # 0..1 planned | active | reserved | completed fhir:Encounter.location.physicalType [ CodeableConcept ]; # 0..1 The physical type of the location (usually the level in the location hierachy - bed room ward etc.) fhir:Encounter.location.period [ Period ]; # 0..1 Time period during which the patient was present at the location ], ...; fhir:Encounter.serviceProvider [ Reference(Organization) ]; # 0..1 The organization (facility) responsible for this encounter fhir:Encounter.partOf [ Reference(Encounter) ]; # 0..1 Another Encounter this encounter is part of ]
Changes since R3
Encounter | |
Encounter.status |
|
Encounter.statusHistory.status |
|
Encounter.location.status |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = 10 tests that all execute ok. All tests pass round-trip testing and 3 r3 resources are invalid (0 errors).)
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Encounter | TU | DomainResource | An interaction during which services are provided to the patient Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Identifier(s) by which this encounter is known |
status | ?!Σ | 1..1 | code | planned | arrived | triaged | in-progress | onleave | finished | cancelled + EncounterStatus (Required) |
statusHistory | 0..* | BackboneElement | List of past encounter statuses | |
status | 1..1 | code | planned | arrived | triaged | in-progress | onleave | finished | cancelled + EncounterStatus (Required) | |
period | 1..1 | Period | The time that the episode was in the specified status | |
class | Σ | 1..1 | Coding | Classification of patient encounter ActEncounterCode (Extensible) |
classHistory | 0..* | BackboneElement | List of past encounter classes | |
class | 1..1 | Coding | inpatient | outpatient | ambulatory | emergency + ActEncounterCode (Extensible) | |
period | 1..1 | Period | The time that the episode was in the specified class | |
type | Σ | 0..* | CodeableConcept | Specific type of encounter EncounterType (Example) |
serviceType | Σ | 0..1 | CodeableConcept | Specific type of service ServiceType (Example) |
priority | 0..1 | CodeableConcept | Indicates the urgency of the encounter ActPriority (Example) | |
subject | Σ | 0..1 | Reference(Patient | Group) | The patient or group present at the encounter |
episodeOfCare | Σ | 0..* | Reference(EpisodeOfCare) | Episode(s) of care that this encounter should be recorded against |
basedOn | 0..* | Reference(ServiceRequest) | The ServiceRequest that initiated this encounter | |
participant | Σ | 0..* | BackboneElement | List of participants involved in the encounter |
type | Σ | 0..* | CodeableConcept | Role of participant in encounter ParticipantType (Extensible) |
period | 0..1 | Period | Period of time during the encounter that the participant participated | |
individual | Σ | 0..1 | Reference(Practitioner | PractitionerRole | RelatedPerson) | Persons involved in the encounter other than the patient |
appointment | Σ | 0..* | Reference(Appointment) | The appointment that scheduled this encounter |
period | 0..1 | Period | The start and end time of the encounter | |
length | 0..1 | Duration | Quantity of time the encounter lasted (less time absent) | |
reasonCode | Σ | 0..* | CodeableConcept | Coded reason the encounter takes place Encounter Reason Codes (Preferred) |
reasonReference | Σ | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | Reason the encounter takes place (reference) |
diagnosis | Σ | 0..* | BackboneElement | The list of diagnosis relevant to this encounter |
condition | Σ | 1..1 | Reference(Condition | Procedure) | The diagnosis or procedure relevant to the encounter |
use | 0..1 | CodeableConcept | Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) DiagnosisRole (Preferred) | |
rank | 0..1 | positiveInt | Ranking of the diagnosis (for each role type) | |
account | 0..* | Reference(Account) | The set of accounts that may be used for billing for this Encounter | |
hospitalization | 0..1 | BackboneElement | Details about the admission to a healthcare service | |
preAdmissionIdentifier | 0..1 | Identifier | Pre-admission identifier | |
origin | 0..1 | Reference(Location | Organization) | The location/organization from which the patient came before admission | |
admitSource | 0..1 | CodeableConcept | From where patient was admitted (physician referral, transfer) AdmitSource (Preferred) | |
reAdmission | 0..1 | CodeableConcept | The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission hl7VS-re-admissionIndicator (Example) | |
dietPreference | 0..* | CodeableConcept | Diet preferences reported by the patient Diet (Example) | |
specialCourtesy | 0..* | CodeableConcept | Special courtesies (VIP, board member) SpecialCourtesy (Preferred) | |
specialArrangement | 0..* | CodeableConcept | Wheelchair, translator, stretcher, etc. SpecialArrangements (Preferred) | |
destination | 0..1 | Reference(Location | Organization) | Location/organization to which the patient is discharged | |
dischargeDisposition | 0..1 | CodeableConcept | Category or kind of location after discharge DischargeDisposition (Example) | |
location | 0..* | BackboneElement | List of locations where the patient has been | |
location | 1..1 | Reference(Location) | Location the encounter takes place | |
status | 0..1 | code | planned | active | reserved | completed EncounterLocationStatus (Required) | |
physicalType | 0..1 | CodeableConcept | The physical type of the location (usually the level in the location hierachy - bed room ward etc.) LocationType (Example) | |
period | 0..1 | Period | Time period during which the patient was present at the location | |
serviceProvider | 0..1 | Reference(Organization) | The organization (facility) responsible for this encounter | |
partOf | 0..1 | Reference(Encounter) | Another Encounter this encounter is part of | |
Documentation for this format |
XML Template
<Encounter xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifier(s) by which this encounter is known --></identifier> <status value="[code]"/><!-- 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + --> <statusHistory> <!-- 0..* List of past encounter statuses --> <status value="[code]"/><!-- 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + --> <period><!-- 1..1 Period The time that the episode was in the specified status --></period> </statusHistory> <class><!-- 1..1 Coding Classification of patient encounter --></class> <classHistory> <!-- 0..* List of past encounter classes --> <class><!-- 1..1 Coding inpatient | outpatient | ambulatory | emergency + --></class> <period><!-- 1..1 Period The time that the episode was in the specified class --></period> </classHistory> <type><!-- 0..* CodeableConcept Specific type of encounter --></type> <serviceType><!-- 0..1 CodeableConcept Specific type of service --></serviceType> <priority><!-- 0..1 CodeableConcept Indicates the urgency of the encounter --></priority> <subject><!-- 0..1 Reference(Group|Patient) The patient or group present at the encounter --></subject> <episodeOfCare><!-- 0..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against --></episodeOfCare> <basedOn><!-- 0..* Reference(ServiceRequest) The ServiceRequest that initiated this encounter --></basedOn> <participant> <!-- 0..* List of participants involved in the encounter --> <type><!-- 0..* CodeableConcept Role of participant in encounter --></type> <period><!-- 0..1 Period Period of time during the encounter that the participant participated --></period> <individual><!-- 0..1 Reference(Practitioner|PractitionerRole|RelatedPerson) Persons involved in the encounter other than the patient --></individual> </participant> <appointment><!-- 0..* Reference(Appointment) The appointment that scheduled this encounter --></appointment> <period><!-- 0..1 Period The start and end time of the encounter --></period> <length><!-- 0..1 Duration Quantity of time the encounter lasted (less time absent) --></length> <reasonCode><!-- 0..* CodeableConcept Coded reason the encounter takes place --></reasonCode> <reasonReference><!-- 0..* Reference(Condition|ImmunizationRecommendation| Observation|Procedure) Reason the encounter takes place (reference) --></reasonReference> <diagnosis> <!-- 0..* The list of diagnosis relevant to this encounter --> <condition><!-- 1..1 Reference(Condition|Procedure) The diagnosis or procedure relevant to the encounter --></condition> <use><!-- 0..1 CodeableConcept Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) --></use> <rank value="[positiveInt]"/><!-- 0..1 Ranking of the diagnosis (for each role type) --> </diagnosis> <account><!-- 0..* Reference(Account) The set of accounts that may be used for billing for this Encounter --></account> <hospitalization> <!-- 0..1 Details about the admission to a healthcare service --> <preAdmissionIdentifier><!-- 0..1 Identifier Pre-admission identifier --></preAdmissionIdentifier> <origin><!-- 0..1 Reference(Location|Organization) The location/organization from which the patient came before admission --></origin> <admitSource><!-- 0..1 CodeableConcept From where patient was admitted (physician referral, transfer) --></admitSource> <reAdmission><!-- 0..1 CodeableConcept The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission --></reAdmission> <dietPreference><!-- 0..* CodeableConcept Diet preferences reported by the patient --></dietPreference> <specialCourtesy><!-- 0..* CodeableConcept Special courtesies (VIP, board member) --></specialCourtesy> <specialArrangement><!-- 0..* CodeableConcept Wheelchair, translator, stretcher, etc. --></specialArrangement> <destination><!-- 0..1 Reference(Location|Organization) Location/organization to which the patient is discharged --></destination> <dischargeDisposition><!-- 0..1 CodeableConcept Category or kind of location after discharge --></dischargeDisposition> </hospitalization> <location> <!-- 0..* List of locations where the patient has been --> <location><!-- 1..1 Reference(Location) Location the encounter takes place --></location> <status value="[code]"/><!-- 0..1 planned | active | reserved | completed --> <physicalType><!-- 0..1 CodeableConcept The physical type of the location (usually the level in the location hierachy - bed room ward etc.) --></physicalType> <period><!-- 0..1 Period Time period during which the patient was present at the location --></period> </location> <serviceProvider><!-- 0..1 Reference(Organization) The organization (facility) responsible for this encounter --></serviceProvider> <partOf><!-- 0..1 Reference(Encounter) Another Encounter this encounter is part of --></partOf> </Encounter>
JSON Template
{ "resourceType" : "Encounter", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Identifier(s) by which this encounter is known "status" : "<code>", // R! planned | arrived | triaged | in-progress | onleave | finished | cancelled + "statusHistory" : [{ // List of past encounter statuses "status" : "<code>", // R! planned | arrived | triaged | in-progress | onleave | finished | cancelled + "period" : { Period } // R! The time that the episode was in the specified status }], "class" : { Coding }, // R! Classification of patient encounter "classHistory" : [{ // List of past encounter classes "class" : { Coding }, // R! inpatient | outpatient | ambulatory | emergency + "period" : { Period } // R! The time that the episode was in the specified class }], "type" : [{ CodeableConcept }], // Specific type of encounter "serviceType" : { CodeableConcept }, // Specific type of service "priority" : { CodeableConcept }, // Indicates the urgency of the encounter "subject" : { Reference(Group|Patient) }, // The patient or group present at the encounter "episodeOfCare" : [{ Reference(EpisodeOfCare) }], // Episode(s) of care that this encounter should be recorded against "basedOn" : [{ Reference(ServiceRequest) }], // The ServiceRequest that initiated this encounter "participant" : [{ // List of participants involved in the encounter "type" : [{ CodeableConcept }], // Role of participant in encounter "period" : { Period }, // Period of time during the encounter that the participant participated "individual" : { Reference(Practitioner|PractitionerRole|RelatedPerson) } // Persons involved in the encounter other than the patient }], "appointment" : [{ Reference(Appointment) }], // The appointment that scheduled this encounter "period" : { Period }, // The start and end time of the encounter "length" : { Duration }, // Quantity of time the encounter lasted (less time absent) "reasonCode" : [{ CodeableConcept }], // Coded reason the encounter takes place "reasonReference" : [{ Reference(Condition|ImmunizationRecommendation| Observation|Procedure) }], // Reason the encounter takes place (reference) "diagnosis" : [{ // The list of diagnosis relevant to this encounter "condition" : { Reference(Condition|Procedure) }, // R! The diagnosis or procedure relevant to the encounter "use" : { CodeableConcept }, // Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) "rank" : "<positiveInt>" // Ranking of the diagnosis (for each role type) }], "account" : [{ Reference(Account) }], // The set of accounts that may be used for billing for this Encounter "hospitalization" : { // Details about the admission to a healthcare service "preAdmissionIdentifier" : { Identifier }, // Pre-admission identifier "origin" : { Reference(Location|Organization) }, // The location/organization from which the patient came before admission "admitSource" : { CodeableConcept }, // From where patient was admitted (physician referral, transfer) "reAdmission" : { CodeableConcept }, // The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission "dietPreference" : [{ CodeableConcept }], // Diet preferences reported by the patient "specialCourtesy" : [{ CodeableConcept }], // Special courtesies (VIP, board member) "specialArrangement" : [{ CodeableConcept }], // Wheelchair, translator, stretcher, etc. "destination" : { Reference(Location|Organization) }, // Location/organization to which the patient is discharged "dischargeDisposition" : { CodeableConcept } // Category or kind of location after discharge }, "location" : [{ // List of locations where the patient has been "location" : { Reference(Location) }, // R! Location the encounter takes place "status" : "<code>", // planned | active | reserved | completed "physicalType" : { CodeableConcept }, // The physical type of the location (usually the level in the location hierachy - bed room ward etc.) "period" : { Period } // Time period during which the patient was present at the location }], "serviceProvider" : { Reference(Organization) }, // The organization (facility) responsible for this encounter "partOf" : { Reference(Encounter) } // Another Encounter this encounter is part of }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Encounter; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Encounter.identifier [ Identifier ], ... ; # 0..* Identifier(s) by which this encounter is known fhir:Encounter.status [ code ]; # 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + fhir:Encounter.statusHistory [ # 0..* List of past encounter statuses fhir:Encounter.statusHistory.status [ code ]; # 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + fhir:Encounter.statusHistory.period [ Period ]; # 1..1 The time that the episode was in the specified status ], ...; fhir:Encounter.class [ Coding ]; # 1..1 Classification of patient encounter fhir:Encounter.classHistory [ # 0..* List of past encounter classes fhir:Encounter.classHistory.class [ Coding ]; # 1..1 inpatient | outpatient | ambulatory | emergency + fhir:Encounter.classHistory.period [ Period ]; # 1..1 The time that the episode was in the specified class ], ...; fhir:Encounter.type [ CodeableConcept ], ... ; # 0..* Specific type of encounter fhir:Encounter.serviceType [ CodeableConcept ]; # 0..1 Specific type of service fhir:Encounter.priority [ CodeableConcept ]; # 0..1 Indicates the urgency of the encounter fhir:Encounter.subject [ Reference(Group|Patient) ]; # 0..1 The patient or group present at the encounter fhir:Encounter.episodeOfCare [ Reference(EpisodeOfCare) ], ... ; # 0..* Episode(s) of care that this encounter should be recorded against fhir:Encounter.basedOn [ Reference(ServiceRequest) ], ... ; # 0..* The ServiceRequest that initiated this encounter fhir:Encounter.participant [ # 0..* List of participants involved in the encounter fhir:Encounter.participant.type [ CodeableConcept ], ... ; # 0..* Role of participant in encounter fhir:Encounter.participant.period [ Period ]; # 0..1 Period of time during the encounter that the participant participated fhir:Encounter.participant.individual [ Reference(Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Persons involved in the encounter other than the patient ], ...; fhir:Encounter.appointment [ Reference(Appointment) ], ... ; # 0..* The appointment that scheduled this encounter fhir:Encounter.period [ Period ]; # 0..1 The start and end time of the encounter fhir:Encounter.length [ Duration ]; # 0..1 Quantity of time the encounter lasted (less time absent) fhir:Encounter.reasonCode [ CodeableConcept ], ... ; # 0..* Coded reason the encounter takes place fhir:Encounter.reasonReference [ Reference(Condition|ImmunizationRecommendation|Observation|Procedure) ], ... ; # 0..* Reason the encounter takes place (reference) fhir:Encounter.diagnosis [ # 0..* The list of diagnosis relevant to this encounter fhir:Encounter.diagnosis.condition [ Reference(Condition|Procedure) ]; # 1..1 The diagnosis or procedure relevant to the encounter fhir:Encounter.diagnosis.use [ CodeableConcept ]; # 0..1 Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) fhir:Encounter.diagnosis.rank [ positiveInt ]; # 0..1 Ranking of the diagnosis (for each role type) ], ...; fhir:Encounter.account [ Reference(Account) ], ... ; # 0..* The set of accounts that may be used for billing for this Encounter fhir:Encounter.hospitalization [ # 0..1 Details about the admission to a healthcare service fhir:Encounter.hospitalization.preAdmissionIdentifier [ Identifier ]; # 0..1 Pre-admission identifier fhir:Encounter.hospitalization.origin [ Reference(Location|Organization) ]; # 0..1 The location/organization from which the patient came before admission fhir:Encounter.hospitalization.admitSource [ CodeableConcept ]; # 0..1 From where patient was admitted (physician referral, transfer) fhir:Encounter.hospitalization.reAdmission [ CodeableConcept ]; # 0..1 The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission fhir:Encounter.hospitalization.dietPreference [ CodeableConcept ], ... ; # 0..* Diet preferences reported by the patient fhir:Encounter.hospitalization.specialCourtesy [ CodeableConcept ], ... ; # 0..* Special courtesies (VIP, board member) fhir:Encounter.hospitalization.specialArrangement [ CodeableConcept ], ... ; # 0..* Wheelchair, translator, stretcher, etc. fhir:Encounter.hospitalization.destination [ Reference(Location|Organization) ]; # 0..1 Location/organization to which the patient is discharged fhir:Encounter.hospitalization.dischargeDisposition [ CodeableConcept ]; # 0..1 Category or kind of location after discharge ]; fhir:Encounter.location [ # 0..* List of locations where the patient has been fhir:Encounter.location.location [ Reference(Location) ]; # 1..1 Location the encounter takes place fhir:Encounter.location.status [ code ]; # 0..1 planned | active | reserved | completed fhir:Encounter.location.physicalType [ CodeableConcept ]; # 0..1 The physical type of the location (usually the level in the location hierachy - bed room ward etc.) fhir:Encounter.location.period [ Period ]; # 0..1 Time period during which the patient was present at the location ], ...; fhir:Encounter.serviceProvider [ Reference(Organization) ]; # 0..1 The organization (facility) responsible for this encounter fhir:Encounter.partOf [ Reference(Encounter) ]; # 0..1 Another Encounter this encounter is part of ]
Changes since Release 3
Encounter | |
Encounter.status |
|
Encounter.statusHistory.status |
|
Encounter.location.status |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = 10 tests that all execute ok. All tests pass round-trip testing and 3 r3 resources are invalid (0 errors).)
See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
Encounter.status | Required | EncounterStatus | |
Encounter.statusHistory.status | Required | EncounterStatus | |
Encounter.class | Extensible | ActEncounterCode | |
Encounter.classHistory.class | Extensible | ActEncounterCode | |
Encounter.type | Example | EncounterType | |
Encounter.serviceType | Example | ServiceType | |
Encounter.priority | Example | ActPriority | |
Encounter.participant.type | Extensible | ParticipantType | |
Encounter.reasonCode | Preferred | EncounterReasonCodes | |
Encounter.diagnosis.use | Preferred | DiagnosisRole | |
Encounter.hospitalization.admitSource | Preferred | AdmitSource | |
Encounter.hospitalization.reAdmission | Example | Hl7VSReAdmissionIndicator | |
Encounter.hospitalization.dietPreference | Example | Diet | |
Encounter.hospitalization.specialCourtesy | Preferred | SpecialCourtesy | |
Encounter.hospitalization.specialArrangement | Preferred | SpecialArrangements | |
Encounter.hospitalization.dischargeDisposition | Example | DischargeDisposition | |
Encounter.location.status | Required | EncounterLocationStatus | |
Encounter.location.physicalType | Example | LocationType |
As stated, Encounter allows a flexible nesting of Encounters using the partOf element. For example:
Exactly how the Encounter is used depends on information available in the source system, the relevance of exchange of each level of Encounter and demands specific to the communicating partners. The expectation is that for each domain of exchange, profiles are used to limit the flexibility of Encounter to meet the demands of the use case.
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
account | reference | The set of accounts that may be used for billing for this Encounter | Encounter.account (Account) | |
appointment | reference | The appointment that scheduled this encounter | Encounter.appointment (Appointment) | |
based-on | reference | The ServiceRequest that initiated this encounter | Encounter.basedOn (ServiceRequest) | |
class | token | Classification of patient encounter | Encounter.class | |
date | date | A date within the period the Encounter lasted | Encounter.period | |
diagnosis | reference | The diagnosis or procedure relevant to the encounter | Encounter.diagnosis.condition (Condition, Procedure) | |
episode-of-care | reference | Episode(s) of care that this encounter should be recorded against | Encounter.episodeOfCare (EpisodeOfCare) | |
identifier | token | Identifier(s) by which this encounter is known | Encounter.identifier | |
length | quantity | Length of encounter in days | Encounter.length | |
location | reference | Location the encounter takes place | Encounter.location.location (Location) | |
location-period | date | Time period during which the patient was present at the location | Encounter.location.period | |
part-of | reference | Another Encounter this encounter is part of | Encounter.partOf (Encounter) | |
participant | reference | Persons involved in the encounter other than the patient | Encounter.participant.individual (Practitioner, PractitionerRole, RelatedPerson) | |
participant-type | token | Role of participant in encounter | Encounter.participant.type | |
patient | reference | The patient or group present at the encounter | Encounter.subject.where(resolve() is Patient) (Group, Patient) | |
practitioner | reference | Persons involved in the encounter other than the patient | Encounter.participant.individual.where(resolve() is Practitioner) (Practitioner, PractitionerRole, RelatedPerson) | |
reason-code | token | Coded reason the encounter takes place | Encounter.reasonCode | |
reason-reference | reference | Reason the encounter takes place (reference) | Encounter.reasonReference (Condition, Observation, Procedure, ImmunizationRecommendation) | |
service-provider | reference | The organization (facility) responsible for this encounter | Encounter.serviceProvider (Organization) | |
special-arrangement | token | Wheelchair, translator, stretcher, etc. | Encounter.hospitalization.specialArrangement | |
status | token | planned | arrived | triaged | in-progress | onleave | finished | cancelled + | Encounter.status | |
subject | reference | The patient or group present at the encounter | Encounter.subject (Group, Patient) | |
type | token | Specific type of encounter | Encounter.type |