Release 4 FHIR CI-Build

This page is part of the Continuous Integration Build of FHIR Specification (v4.0.1: R4 - Mixed Normative and STU ) in it's permanent home (it will always (will be available incorrect/inconsistent at this URL). The current version which supercedes this version is 5.0.0 . For a full list of available versions, see times).
See the Directory of published versions icon . Page versions: R5 R4B R4 R3 R2

8.11 Resource Encounter - Content

Responsible Owner: Patient Administration icon Work Group Maturity Level : 2   Trial Use Security Category : Patient Compartments : Encounter , Group , 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. Encounter is primarily used to record information about the actual activities that occurred, where Appointment is used to record planned activities.

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 admission 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. admission. 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 admission component is intended to store the extended information relating to a hospitalization an admission 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) Encounter.reason) 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 and subject statuses. Typically these are in order or the organization's workflow: organization/department's workflow(s) e.g. planned, in-progress, finished/cancelled. completed/cancelled. In general terms the Encounter and Appointment both align with the Clinical Workflow Process Life Cycle pattern.
The status property tracks the (current) overall status of the encounter, whereas the subjectStatus property more closely tracks the patient explicitly. For example in a hospital emergency department the subjectStatus would reflect the patient's status e.g. arrived (when the patient first presents to the ED), triaged (when the patient is assessed by a triage nurse), etc.
This status information is often used for other things, and often an analysis of the status history is required. required for things like billing. This could be done by scanning through all the resource history versions of the encounter, checking the period of each, and then doing some form of post processing. To ease the burden of However, this information is not always completed in real-time (or where even in the same system) and needs to be updated over time - as a system doesn't support result the resource histories) a status history component is included. not adequate to satisfy these needs, and subsequently the new EncounterHistory icon resource provides this information

Note to Implementers: In FHIR R4 and earlier this was done using the statusHistory and classHistory backbone elements, however with longer duration encounters (where a patient encounter might be considered active for years) this would become increasingly inefficient, and EncounterHistory remediates this issue.

There is no direct indication purely by the status or subjectStatus 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 Subject statuses of "arrived", "triaged" or "in progress" "receiving-care" could be considered the start of the admission, and also have the presence of the hospitalization admission sub-component entered.
The "discharged" status can be used when the patient care is complete but the encounter itself is not yet completed, such as while collating required information for billing or other purposes, or could be skipped and go direct to "completed". Refer to the appointment page for some sample possible workflows.
Also note that the binding for subjectStatus is "example" so that local use-cases could also include their own states to capture things like a "waiting" status if they decide to capture this in their specific workflow.

Subjects that have left without being seen would have a subjectStatus of departed, or possibly an implementer-specific code, while the Encounter.status could be completed or cancelled, depending on whether the patient had received some care before leaving, or other local business rules that could impact billing.

The "on leave" "on-leave" subject 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.
During this time the encounter status itself might be marked as "on-hold". Local systems may have multiple different types of leave/hold and these can use appropriate combinations fo the status/subjectStatus fields to represent this.
The location is also likely to be filled in with a location status of "present". "active".
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

Structure

List planned | arrived | triaged | in-progress | onleave | finished | cancelled + Σ 1..1 Classification 0..* List of past 1..1 inpatient | 1..1 The time that 0..1 Indicates the urgency 0..* Episode(s) of care that 0..* Persons involved Quantity Coded reason 1..1 0..1 0..1 Details about 0..1 0..1 From where patient was admitted (physician referral, transfer) The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission 0..* CodeableConcept 0..* Special courtesies (VIP, board member) 0..* Wheelchair, translator, stretcher, etc.
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . 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 on-hold | finished discharged | completed | cancelled + | discontinued | entered-in-error | unknown
EncounterStatus Binding: Encounter Status ( Required )
. . . statusHistory businessStatus 0..* BackboneElement A granular, workflows specific set of past encounter statuses that apply to the encounter

. . . status . code 1..1 code CodeableConcept The current business status
EncounterStatus Binding: BusinessStatus ( Required Example ) period Period
Additional Bindings Purpose
Encounter Business Status - Inpatient Starter
Encounter Business Status - Outpatient Starter 1..1
Encounter Business Status - Emergency Starter The time that the episode was in the specified status

. . . class . type 0..1 Coding The kind of patient encounter workflow the status is tracking
V3 Value SetActEncounterCode Binding: Encounter Business Status Type ( Extensible Example )
. . classHistory . . effectiveDate 0..1 BackboneElement dateTime When the encounter classes entered this business status
. . . class Σ 0..* Coding CodeableConcept Classification of patient encounter context - e.g. Inpatient, outpatient | ambulatory | emergency +
Binding: Encounter class icon V3 Value SetActEncounterCode ( Extensible Preferred )

. . period . priority 0..1 Period CodeableConcept Indicates the episode was in urgency of the specified class encounter
Binding: ActPriority icon ( Example )
. . . type Σ 0..* CodeableConcept Specific type of encounter (e.g. e-mail consultation, surgical day-care, ...)
Binding: Encounter type Type ( Example )

. . . serviceType Σ 0..* CodeableConcept CodeableReference ( HealthcareService ) Specific type of service
Binding: Service type Type ( Example )

. . priority . subject Σ 0..1 Reference ( Patient | Group ) The patient or group related to this encounter
... subjectStatus 0..1 CodeableConcept The current status of the encounter subject in relation to the Encounter
v3 Code System ActPriority Binding: Encounter Subject Status ( Example )
. . . subject episodeOfCare Σ 0..* Reference ( EpisodeOfCare ) Episode(s) of care that this encounter should be recorded against

... basedOn 0..1 0..* Reference ( Patient CarePlan | Group DeviceRequest | MedicationRequest | ServiceRequest | RequestOrchestration | NutritionOrder | VisionPrescription ) The patient or group present at the request that initiated this encounter

. . episodeOfCare . careTeam 0..* Σ Reference ( CareTeam ) The group(s) that are allocated to participate in this encounter

. . . partOf 0..1 Reference ( EpisodeOfCare Encounter ) Another Encounter this encounter should be recorded against is part of
. . . basedOn serviceProvider 0..1 Reference ( ServiceRequest Organization ) The ServiceRequest that initiated organization (facility) responsible for this encounter
. . . participant Σ C 0..* BackboneElement List of participants involved in the encounter
+ Rule: A type must be provided when no explicit actor is specified
+ Rule: A type cannot be provided for a patient or group participant

. . . . type Σ C 0..* CodeableConcept Role of participant in encounter
Binding: Participant type Type ( Extensible )

. . . . period 0..1 Period Period of time during the encounter that the participant participated
. . . . individual actor Σ C 0..1 Reference ( Patient | Group | RelatedPerson | Practitioner | PractitionerRole | RelatedPerson Device | HealthcareService ) The individual, device, or service participating in the encounter other than the patient
. . . appointment Σ 0..* Reference ( Appointment ) The appointment that scheduled this encounter

. . . period virtualService 0..* VirtualServiceDetail Connection details of a virtual service (e.g. conference call)

0..1
. . . actualPeriod 0..1 Period The actual start and end time of the encounter
. . length . plannedStartDate 0..1 dateTime The planned start date/time (or admission date) of the encounter
. . . plannedEndDate 0..1 dateTime The planned end date/time (or discharge date) of the encounter
... length 0..1 Duration Actual quantity of time the encounter lasted (less time absent)
. . . reason Σ 0..* BackboneElement The list of medical reasons that are expected to be addressed during the episode of care

. . . . reasonCode use Σ 0..* CodeableConcept What the encounter takes place reason value should be used for/as
Binding: Encounter Reason Codes Use ( Preferred Example )

. . . . reasonReference value Σ 0..* Reference CodeableReference ( Condition | Procedure DiagnosticReport | Observation | ImmunizationRecommendation Procedure ) Reason the encounter takes place (reference) (core or reference)
Binding: Encounter Reason Codes ( Preferred )

. . . diagnosis Σ 0..* BackboneElement The list of diagnosis relevant to this encounter

. . . . condition Σ 0..* Reference CodeableReference ( Condition | Procedure ) The diagnosis or procedure relevant to the encounter
Binding: Condition/Problem/Diagnosis Codes ( Example )

. . . . use 0..* CodeableConcept Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
DiagnosisRole Binding: Encounter Diagnosis Use ( 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 . dietPreference 0..* BackboneElement CodeableConcept Diet preferences reported by the admission to a healthcare service patient
Binding: Diet ( Example )

. . preAdmissionIdentifier . specialArrangement 0..* Identifier CodeableConcept Wheelchair, translator, stretcher, etc
Binding: Special Arrangements ( Preferred )

Pre-admission identifier
. . origin . specialCourtesy 0..* CodeableConcept Reference Special courtesies (VIP, board member)
Binding: Special Courtesy ( Location | Organization Preferred )

The location/organization from which the patient came before admission
. . admitSource . admission 0..1 CodeableConcept BackboneElement Details about the admission to a healthcare service
Admit source ( Preferred )
. . . reAdmission . preAdmissionIdentifier 0..1 CodeableConcept Identifier Pre-admission identifier
v2 RE-ADMISSION INDICATOR ( Example )
. . . dietPreference . origin 0..1 Diet preferences reported by the patient Diet Reference ( Example Location | Organization ) The location/organization from which the patient came before admission
. . . specialCourtesy . admitSource 0..1 CodeableConcept From where patient was admitted (physician referral, transfer)
Special courtesy Binding: Admit Source ( Preferred )
. . . specialArrangement . reAdmission 0..1 CodeableConcept Indicates that the patient is being re-admitted
Binding: hl7VS-re-admissionIndicator icon Special arrangements ( Preferred Example )
. . . . 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
Binding: Discharge disposition Disposition ( 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 Binding: Encounter Location Status ( Required )
. . . physicalType . form 0..1 CodeableConcept The physical type of the location (usually the level in the location hierachy hierarchy - bed room ward bed, room, ward, virtual etc.)
Binding: Location type Form ( 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

doco Documentation for this format icon

See the Extensions for this resource

UML Diagram ( Legend )

Encounter ( DomainResource ) Identifier(s) by which this encounter is known identifier : Identifier [0..*] planned | arrived | triaged | in-progress | onleave | finished | cancelled + The current state of the encounter (not the state of the patient within the encounter - that is subjectState) (this element modifies the meaning of other elements) status : code [1..1] « Current state of the encounter. null (Strength=Required) EncounterStatus ! » Concepts representing classification of patient encounter such as ambulatory (outpatient), inpatient, emergency, home health or others due to local variations class : Coding CodeableConcept [1..1] [0..*] « Classification null (Strength=Preferred) EncounterClass ? » Indicates the urgency of the encounter. (Strength=Extensible) encounter v3.ActEncounterCode priority + : CodeableConcept [0..1] « null (Strength=Example) ActPriority ?? » Specific type of encounter (e.g. e-mail consultation, surgical day-care, skilled nursing, rehabilitation) type : CodeableConcept [0..*] « The type of encounter. (Strength=Example) EncounterType ?? » Broad categorization of the service that is to be provided (e.g. cardiology) serviceType : CodeableConcept CodeableReference [0..1] [0..*] « HealthcareService ; Broad categorization of the service that is to be provided. null (Strength=Example) ServiceType ?? » Indicates the urgency of The patient or group related to this encounter. In some use-cases the encounter patient MAY not be present, such as a case meeting about a patient between several practitioners or a careteam priority subject : CodeableConcept Reference [0..1] « Indicates the urgency of the encounter. (Strength=Example) v3.ActPriority Patient | Group ?? » The subjectStatus value can be used to track the patient's status within the encounter. It details whether the patient has arrived or group present at the encounter departed, has been triaged or is currently in a waiting status subject subjectStatus : Reference CodeableConcept [0..1] « Patient | Group null (Strength=Example) EncounterSubjectStatus ?? » Where a specific encounter should be classified as a part of a specific episode(s) of care this field should be used. This association can facilitate grouping of related encounters together for a specific purpose, such as government reporting, issue tracking, association via a common problem. The association is recorded on the encounter as these are typically created after the episode of care and grouped on entry rather than editing the episode of care to append another encounter to it (the episode of care could span years) episodeOfCare : Reference [0..*] « EpisodeOfCare » The request this encounter satisfies (e.g. incoming referral or procedure request) basedOn : Reference [0..*] « ServiceRequest CarePlan » | DeviceRequest | The appointment that scheduled this encounter appointment MedicationRequest : Reference | ServiceRequest [0..*] « Appointment | RequestOrchestration » | The start and end time of the encounter period NutritionOrder : Period | VisionPrescription [0..1] » Quantity of time the encounter lasted. This excludes the time during leaves The group(s) of absence length : Duration [0..1] Reason the encounter takes place, expressed as a code. For admissions, individuals, organizations that are allocated to participate in this can be used for a coded admission diagnosis reasonCode : CodeableConcept [0..*] « Reason why encounter. The participants backbone will record the encounter takes place. (Strength=Preferred) EncounterReasonCodes ? » Reason actuals of when these individuals participated during the encounter takes place, expressed as a code. For admissions, this can be used for a coded admission diagnosis reasonReference careTeam : Reference [0..*] « Condition | Procedure | Observation | ImmunizationRecommendation CareTeam » The set Another Encounter of accounts that may be used for billing for which this Encounter encounter is a part of (administratively or in time) account partOf : Reference [0..*] [0..1] « Account Encounter » The organization that is primarily responsible for this Encounter's services. This MAY be the same as the organization on the Patient record, however it could be different, such as if the actor performing the services was from an external organization (which may be billed seperately) for an external consultation. Refer to the example bundle showing an abbreviated set of Encounters for a colonoscopy example on the Encounter examples tab serviceProvider : Reference [0..1] « Organization » Another Encounter of which The appointment that scheduled this encounter is a part of (administratively or in time) partOf appointment : Reference [0..1] [0..*] « Encounter Appointment » Connection details of a virtual service (e.g. conference call) virtualService : VirtualServiceDetail [0..*] The actual start and end time of the encounter actualPeriod : Period [0..1] StatusHistory The planned start date/time (or admission date) of the encounter plannedStartDate : dateTime [0..1] The planned | arrived | triaged | in-progress | onleave | finished | cancelled + end date/time (or discharge date) of the encounter status plannedEndDate : code dateTime [1..1] « [0..1] Current state Actual quantity of time the encounter. (Strength=Required) encounter lasted. This excludes the time during leaves of absence. When missing it is the time in between the start and end values EncounterStatus ! » length : Duration [0..1] The time set of accounts that may be used for billing for this Encounter account : Reference [0..*] « Account » Diet preferences reported by the episode was in patient dietPreference : CodeableConcept [0..*] « null (Strength=Example) EncounterDiet ?? » Any special requests that have been made for this encounter, such as the specified status provision of specific equipment or other things period specialArrangement : Period CodeableConcept [1..1] [0..*] « null (Strength=Preferred) SpecialArrangements ? » Special courtesies that may be provided to the patient during the encounter (VIP, board member, professional courtesy) specialCourtesy : CodeableConcept [0..*] « null (Strength=Preferred) SpecialCourtesy ? » ClassHistory BusinessStatus inpatient | outpatient | ambulatory | emergency + The current business status class code : Coding CodeableConcept [1..1] « null (Strength=Example) BusinessStatus?? » Classification The kind of workflow the encounter. (Strength=Extensible) status is tracking v3.ActEncounterCode type + : Coding [0..1] « null (Strength=Example) EncounterBusinessStatusType ?? » The time that the episode was in date/time when the specified class encounter entered this business status period effectiveDate : Period dateTime [1..1] [0..1] Participant Role of participant in encounter type : CodeableConcept [0..*] « Role of participant in encounter. null (Strength=Extensible) ParticipantType + » « This element has or is affected by some invariants C » The period of time that the specified participant participated in the encounter. These can overlap or be sub-sets of the overall encounter's period period : Period [0..1] Persons Person involved in the encounter other than encounter, the patient/group is also included here to indicate that the patient was actually participating in the encounter. Not including the patient here covers use cases such as a case meeting between practitioners about a patient - non contact times individual actor : Reference [0..1] « Patient | Group | RelatedPerson | Practitioner | PractitionerRole | Device | HealthcareService » « RelatedPerson This element has or is affected by some invariants C » Diagnosis Reason What the reason value should be used as e.g. Chief Complaint, Health Concern, Health Maintenance (including screening) use : CodeableConcept [0..*] « null (Strength=Example) EncounterReasonUse ?? » Reason the encounter takes place, expressed as specified using information from a code or a reference to another resource. For admissions, this is the can be used for a coded admission diagnosis. diagnosis value : CodeableReference [0..*] « Condition | DiagnosticReport | Observation | Procedure ; null (Strength=Preferred) EncounterReasonCodes ? » Diagnosis The indication will typically be coded diagnosis or a reference to a Condition (with other resources referenced in the evidence.detail), or a Procedure the use property will indicate the purpose of this specific diagnosis condition : Reference CodeableReference [1..1] [0..*] « Condition | Procedure ; null (Strength=Example) ConditionProblemDiagnosisCodes ?? » Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) use : CodeableConcept [0..1] [0..*] « The type of diagnosis this condition represents. null (Strength=Preferred) DiagnosisRole EncounterDiagnosisUse ? » Ranking of the diagnosis (for each role type) rank : positiveInt [0..1] Hospitalization Admission Pre-admission identifier preAdmissionIdentifier : Identifier [0..1] The location/organization from which the patient came before admission origin : Reference [0..1] « Location | Organization » From where patient was admitted (physician referral, transfer) admitSource : CodeableConcept [0..1] « From where the patient was admitted. null (Strength=Preferred) AdmitSource ? » Whether Indicates that this hospitalization encounter is directly related to a readmission and why if known prior admission, often because the conditions addressed in the prior admission were not fully addressed reAdmission : CodeableConcept [0..1] « The reason for re-admission of this hospitalization encounter. (Strength=Example) v2.0092 ?? » Diet preferences reported by the patient dietPreference : CodeableConcept [0..*] « Medical, cultural or ethical food preferences to help with catering requirements. null (Strength=Example) Diet Hl7VSReAdmissionIndicator ?? » Special courtesies (VIP, board member) specialCourtesy : CodeableConcept [0..*] « Special courtesies. (Strength=Preferred) SpecialCourtesy ? » Any special requests that have been made for this hospitalization encounter, such as the provision of specific equipment or other things specialArrangement : CodeableConcept [0..*] « Special arrangements. (Strength=Preferred) SpecialArrangements ? » Location/organization to which the patient is discharged destination : Reference [0..1] « Location | Organization » Category or kind of location after discharge dischargeDisposition : CodeableConcept [0..1] « Discharge Disposition. null (Strength=Example) DischargeDisposition ?? » Location The location where the encounter takes place location : Reference [1..1] « Location » The status of the participants' presence at the specified location during the period specified. If the participant is no longer at the location, then the period will have an end date/time status : code [0..1] « The status of the location. null (Strength=Required) EncounterLocationStatus ! » This will be used to specify the required levels (bed/ward/room/etc.) desired to be recorded to simplify either messaging or query physicalType form : CodeableConcept [0..1] « Physical form of the location. null (Strength=Example) LocationType LocationForm ?? » Time period during which the patient was present at the location period : Period [0..1] The status history permits the encounter resource to contain the status history without needing to read through the historical versions A granular, workflows specific set of statuses that apply to the resource, or even have the server store them encounter statusHistory businessStatus [0..*] The class history permits the tracking list of the encounters transitions without needing to go through the resource history. This would be used people responsible for a case where an admission starts of as an emergency encounter, then transitions into an inpatient scenario. Doing this and not restarting a new encounter ensures that any lab/diagnostic results can more easily follow providing the patient and not require re-processing and not get lost or cancelled during a kind of discharge from emergency to inpatient service classHistory participant [0..*] The list of people responsible for providing medical reasons that are expected to be addressed during the service episode of care participant reason [0..*] The list of diagnosis relevant to this encounter diagnosis [0..*] Details about the admission to stay during which a healthcare service is provided. This does not describe the event of admitting the patient, but rather any information that is relevant from the time of admittance until the time of discharge hospitalization admission [0..1] List of locations where the patient has been during this encounter location [0..*]

XML Template

<

<Encounter xmlns="http://hl7.org/fhir"> doco

 <!-- 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>
 <
 <
  <
  <</period>
 </statusHistory>
 <</class>
 <
  <</class>
  <</period>
 </classHistory>
 <</type>
 <</serviceType>
 <</priority>
 <</subject>

 <status value="[code]"/><!-- 1..1 planned | in-progress | on-hold | discharged | completed | cancelled | discontinued | entered-in-error | unknown -->
 <businessStatus>  <!-- 0..* A granular, workflows specific set of statuses that apply to the encounter -->
  <code><!-- 1..1 CodeableConcept The current business status --></code>
  <type><!-- 0..1 Coding The kind of workflow the status is tracking --></type>
  <effectiveDate value="[dateTime]"/><!-- 0..1 When the encounter entered this business status -->
 </businessStatus>
 <class><!-- 0..* CodeableConcept Classification of patient encounter context - e.g. Inpatient, outpatient icon --></class>
 <priority><!-- 0..1 CodeableConcept Indicates the urgency of the encounter icon --></priority>
 <type><!-- 0..* CodeableConcept Specific type of encounter (e.g. e-mail consultation, surgical day-care, ...) --></type>
 <serviceType><!-- 0..* CodeableReference(HealthcareService) Specific type of service --></serviceType>
 <subject><!-- 0..1 Reference(Group|Patient) The patient or group related to this encounter --></subject>
 <subjectStatus><!-- 0..1 CodeableConcept The current status of the subject in relation to the Encounter --></subjectStatus>

 <episodeOfCare><!-- 0..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against --></episodeOfCare>
 <</basedOn>

 <basedOn><!-- 0..* Reference(CarePlan|DeviceRequest|MedicationRequest|
   NutritionOrder|RequestOrchestration|ServiceRequest|VisionPrescription) The request that initiated this encounter --></basedOn>

 <careTeam><!-- 0..* Reference(CareTeam) The group(s) that are allocated to participate in this encounter --></careTeam>
 <partOf><!-- 0..1 Reference(Encounter) Another Encounter this encounter is part of --></partOf>
 <serviceProvider><!-- 0..1 Reference(Organization) The organization (facility) responsible for this encounter --></serviceProvider>

 <participant>  <!-- 0..* List of participants involved in the encounter -->
  <</type>

  <type><!-- I 0..* CodeableConcept Role of participant in encounter --></type>

  <period><!-- 0..1 Period Period of time during the encounter that the participant participated --></period>
  <</individual>

  <actor><!-- I 0..1 Reference(Device|Group|HealthcareService|Patient|Practitioner|
    PractitionerRole|RelatedPerson) The individual, device, or service participating in the encounter --></actor>
 </participant>
 <appointment><!-- 0..* Reference(Appointment) The appointment that scheduled this encounter --></appointment>
 <</period>
 <</length>
 <</reasonCode>
 <|
   </reasonReference>

 <virtualService><!-- 0..* VirtualServiceDetail Connection details of a virtual service (e.g. conference call) --></virtualService>
 <actualPeriod><!-- 0..1 Period The actual start and end time of the encounter --></actualPeriod>
 <plannedStartDate value="[dateTime]"/><!-- 0..1 The planned start date/time (or admission date) of the encounter -->
 <plannedEndDate value="[dateTime]"/><!-- 0..1 The planned end date/time (or discharge date) of the encounter -->
 <length><!-- 0..1 Duration Actual quantity of time the encounter lasted (less time absent) --></length>
 <reason>  <!-- 0..* The list of medical reasons that are expected to be addressed during the episode of care -->
  <use><!-- 0..* CodeableConcept What the reason value should be used for/as --></use>
  <value><!-- 0..* CodeableReference(Condition|DiagnosticReport|Observation|
    Procedure) Reason the encounter takes place (core or reference) --></value>

 </reason>

 <diagnosis>  <!-- 0..* The list of diagnosis relevant to this encounter -->
  <</condition>
  <</use>
  <

  <condition><!-- 0..* CodeableReference(Condition) The diagnosis relevant to the encounter --></condition>
  <use><!-- 0..* CodeableConcept Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) --></use>

 </diagnosis>
 <account><!-- 0..* Reference(Account) The set of accounts that may be used for billing for this Encounter --></account>
 <
  <</preAdmissionIdentifier>
  <</origin>
  <</admitSource>
  <</reAdmission>
  <</dietPreference>
  <</specialCourtesy>
  <</specialArrangement>
  <</destination>
  <</dischargeDisposition>
 </hospitalization>

 <dietPreference><!-- 0..* CodeableConcept Diet preferences reported by the patient --></dietPreference>
 <specialArrangement><!-- 0..* CodeableConcept Wheelchair, translator, stretcher, etc --></specialArrangement>
 <specialCourtesy><!-- 0..* CodeableConcept Special courtesies (VIP, board member) --></specialCourtesy>
 <admission>  <!-- 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 Indicates that the patient is being re-admitted icon --></reAdmission>
  <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>
 </admission>

 <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>

  <form><!-- 0..1 CodeableConcept The physical type of the location (usually the level in the location hierarchy - bed, room, ward, virtual etc.) --></form>

  <period><!-- 0..1 Period Time period during which the patient was present at the location --></period>
 </location>
 <</serviceProvider>
 <</partOf>

</Encounter>

JSON Template

{doco
  "resourceType" : "",

  "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 | in-progress | on-hold | discharged | completed | cancelled | discontinued | entered-in-error | unknown
  "businessStatus" : [{ // A granular, workflows specific set of statuses that apply to the encounter
    "code" : { CodeableConcept }, // R!  The current business status
    "type" : { Coding }, // The kind of workflow the status is tracking
    "effectiveDate" : "<dateTime>" // When the encounter entered this business status

  }],
  "
  "
  "
  "

  "class" : [{ CodeableConcept }], // Classification of patient encounter context - e.g. Inpatient, outpatient icon
  "priority" : { CodeableConcept }, // Indicates the urgency of the encounter icon
  "type" : [{ CodeableConcept }], // Specific type of encounter (e.g. e-mail consultation, surgical day-care, ...)
  "serviceType" : [{ CodeableReference(HealthcareService) }], // Specific type of service
  "subject" : { Reference(Group|Patient) }, // The patient or group related to this encounter
  "subjectStatus" : { CodeableConcept }, // The current status of the subject in relation to the Encounter

  "episodeOfCare" : [{ Reference(EpisodeOfCare) }], // Episode(s) of care that this encounter should be recorded against
  "

  "basedOn" : [{ Reference(CarePlan|DeviceRequest|MedicationRequest|
   NutritionOrder|RequestOrchestration|ServiceRequest|VisionPrescription) }], // The request that initiated this encounter

  "careTeam" : [{ Reference(CareTeam) }], // The group(s) that are allocated to participate in this encounter
  "partOf" : { Reference(Encounter) }, // Another Encounter this encounter is part of
  "serviceProvider" : { Reference(Organization) }, // The organization (facility) responsible for this encounter

  "participant" : [{ // List of participants involved in the encounter
    "

    "type" : [{ CodeableConcept }], // I Role of participant in encounter

    "period" : { Period }, // Period of time during the encounter that the participant participated
    "

    "actor" : { Reference(Device|Group|HealthcareService|Patient|Practitioner|
    PractitionerRole|RelatedPerson) } // I The individual, device, or service participating in the encounter
  }],
  "appointment" : [{ Reference(Appointment) }], // The appointment that scheduled this encounter
  "
  "
  "
  "|
   

  "virtualService" : [{ VirtualServiceDetail }], // Connection details of a virtual service (e.g. conference call)
  "actualPeriod" : { Period }, // The actual start and end time of the encounter
  "plannedStartDate" : "<dateTime>", // The planned start date/time (or admission date) of the encounter
  "plannedEndDate" : "<dateTime>", // The planned end date/time (or discharge date) of the encounter
  "length" : { Duration }, // Actual quantity of time the encounter lasted (less time absent)
  "reason" : [{ // The list of medical reasons that are expected to be addressed during the episode of care
    "use" : [{ CodeableConcept }], // What the reason value should be used for/as
    "value" : [{ CodeableReference(Condition|DiagnosticReport|Observation|
    Procedure) }] // Reason the encounter takes place (core or reference)

  }],

  "diagnosis" : [{ // The list of diagnosis relevant to this encounter
    "
    "
    "

    "condition" : [{ CodeableReference(Condition) }], // The diagnosis relevant to the encounter
    "use" : [{ CodeableConcept }] // Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)

  }],
  "account" : [{ Reference(Account) }], // The set of accounts that may be used for billing for this Encounter
  "
    "
    "
    "
    "
    "
    "
    "
    "
    "

  "dietPreference" : [{ CodeableConcept }], // Diet preferences reported by the patient
  "specialArrangement" : [{ CodeableConcept }], // Wheelchair, translator, stretcher, etc
  "specialCourtesy" : [{ CodeableConcept }], // Special courtesies (VIP, board member)
  "admission" : { // 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 }, // Indicates that the patient is being re-admitted icon
    "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
    "

    "form" : { CodeableConcept }, // The physical type of the location (usually the level in the location hierarchy - bed, room, ward, virtual etc.)

    "period" : { Period } // Time period during which the patient was present at the location
  }],
  "
  "

  }]

}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:;

[ a fhir:Encounter;

  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from 
  # from 
  fhir:
  fhir:
  fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
  ];
  fhir:
    fhir:
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:

  # from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language
  # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* Identifier(s) by which this encounter is known
  fhir:status [ code ] ; # 1..1 planned | in-progress | on-hold | discharged | completed | cancelled | discontinued | entered-in-error | unknown
  fhir:businessStatus ( [ # 0..* A granular, workflows specific set of statuses that apply to the encounter
    fhir:code [ CodeableConcept ] ; # 1..1 The current business status
    fhir:type [ Coding ] ; # 0..1 The kind of workflow the status is tracking
    fhir:effectiveDate [ dateTime ] ; # 0..1 When the encounter entered this business status
  ] ... ) ;
  fhir:class  ( [ CodeableConcept ] ... ) ; # 0..* Classification of patient encounter context - e.g. Inpatient, outpatient
  fhir:priority [ CodeableConcept ] ; # 0..1 Indicates the urgency of the encounter
  fhir:type  ( [ CodeableConcept ] ... ) ; # 0..* Specific type of encounter (e.g. e-mail consultation, surgical day-care, ...)
  fhir:serviceType  ( [ CodeableReference(HealthcareService) ] ... ) ; # 0..* Specific type of service
  fhir:subject [ Reference(Group|Patient) ] ; # 0..1 The patient or group related to this encounter
  fhir:subjectStatus [ CodeableConcept ] ; # 0..1 The current status of the subject in relation to the Encounter
  fhir:episodeOfCare  ( [ Reference(EpisodeOfCare) ] ... ) ; # 0..* Episode(s) of care that this encounter should be recorded against
  fhir:basedOn  ( [ Reference(CarePlan|DeviceRequest|MedicationRequest|NutritionOrder|RequestOrchestration|
  ServiceRequest|VisionPrescription) ] ... ) ; # 0..* The request that initiated this encounter

  fhir:careTeam  ( [ Reference(CareTeam) ] ... ) ; # 0..* The group(s) that are allocated to participate in this encounter
  fhir:partOf [ Reference(Encounter) ] ; # 0..1 Another Encounter this encounter is part of
  fhir:serviceProvider [ Reference(Organization) ] ; # 0..1 The organization (facility) responsible for this encounter
  fhir:participant ( [ # 0..* List of participants involved in the encounter
    fhir:type  ( [ CodeableConcept ] ... ) ; # 0..* I Role of participant in encounter
    fhir:period [ Period ] ; # 0..1 Period of time during the encounter that the participant participated
    fhir:actor [ Reference(Device|Group|HealthcareService|Patient|Practitioner|PractitionerRole|
  RelatedPerson) ] ; # 0..1 I The individual, device, or service participating in the encounter

  ] ... ) ;
  fhir:appointment  ( [ Reference(Appointment) ] ... ) ; # 0..* The appointment that scheduled this encounter
  fhir:virtualService  ( [ VirtualServiceDetail ] ... ) ; # 0..* Connection details of a virtual service (e.g. conference call)
  fhir:actualPeriod [ Period ] ; # 0..1 The actual start and end time of the encounter
  fhir:plannedStartDate [ dateTime ] ; # 0..1 The planned start date/time (or admission date) of the encounter
  fhir:plannedEndDate [ dateTime ] ; # 0..1 The planned end date/time (or discharge date) of the encounter
  fhir:length [ Duration ] ; # 0..1 Actual quantity of time the encounter lasted (less time absent)
  fhir:reason ( [ # 0..* The list of medical reasons that are expected to be addressed during the episode of care
    fhir:use  ( [ CodeableConcept ] ... ) ; # 0..* What the reason value should be used for/as
    fhir:value  ( [ CodeableReference(Condition|DiagnosticReport|Observation|Procedure) ] ... ) ; # 0..* Reason the encounter takes place (core or reference)
  ] ... ) ;
  fhir:diagnosis ( [ # 0..* The list of diagnosis relevant to this encounter
    fhir:condition  ( [ CodeableReference(Condition) ] ... ) ; # 0..* The diagnosis relevant to the encounter
    fhir:use  ( [ CodeableConcept ] ... ) ; # 0..* Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
  ] ... ) ;
  fhir:account  ( [ Reference(Account) ] ... ) ; # 0..* The set of accounts that may be used for billing for this Encounter
  fhir:dietPreference  ( [ CodeableConcept ] ... ) ; # 0..* Diet preferences reported by the patient
  fhir:specialArrangement  ( [ CodeableConcept ] ... ) ; # 0..* Wheelchair, translator, stretcher, etc
  fhir:specialCourtesy  ( [ CodeableConcept ] ... ) ; # 0..* Special courtesies (VIP, board member)
  fhir:admission [ # 0..1 Details about the admission to a healthcare service
    fhir:preAdmissionIdentifier [ Identifier ] ; # 0..1 Pre-admission identifier
    fhir:origin [ Reference(Location|Organization) ] ; # 0..1 The location/organization from which the patient came before admission
    fhir:admitSource [ CodeableConcept ] ; # 0..1 From where patient was admitted (physician referral, transfer)
    fhir:reAdmission [ CodeableConcept ] ; # 0..1 Indicates that the patient is being re-admitted
    fhir:destination [ Reference(Location|Organization) ] ; # 0..1 Location/organization to which the patient is discharged
    fhir:dischargeDisposition [ CodeableConcept ] ; # 0..1 Category or kind of location after discharge
  ] ;
  fhir:location ( [ # 0..* List of locations where the patient has been
    fhir:location [ Reference(Location) ] ; # 1..1 Location the encounter takes place
    fhir:status [ code ] ; # 0..1 planned | active | reserved | completed
    fhir:form [ CodeableConcept ] ; # 0..1 The physical type of the location (usually the level in the location hierarchy - bed, room, ward, virtual etc.)
    fhir:period [ Period ] ; # 0..1 Time period during which the patient was present at the location
  ] ... ) ;

]

Changes since R3 from both R4 and R4B

Encounter
Encounter.status
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-status to http://hl7.org/fhir/ValueSet/encounter-status|4.0.1 Remove codes arrived , triaged , onleave , finished
  • Add codes on-hold , discharged , completed , discontinued
Encounter.statusHistory.status Encounter.businessStatus
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-status to http://hl7.org/fhir/ValueSet/encounter-status|4.0.1 Added Element
Encounter.businessStatus.code
  • Added Mandatory Element
Encounter.businessStatus.type
  • Added Element
Encounter.businessStatus.effectiveDate
  • Added Element
Encounter.class
  • Min Cardinality changed from 1 to 0
  • Max Cardinality changed from 1 to *
  • Type changed from Coding to CodeableConcept
  • Remove Binding `http://terminology.hl7.org/ValueSet/v3-ActEncounterCode` (extensible)
Encounter.serviceType
  • Max Cardinality changed from 1 to *
  • Type changed from CodeableConcept to CodeableReference
Encounter.serviceType Encounter.subjectStatus
  • Added Element
Encounter.basedOn
    Renamed from incomingReferral to basedOn
  • Type Reference: Added Target Type ServiceRequest Types CarePlan, DeviceRequest, MedicationRequest, RequestOrchestration, NutritionOrder, VisionPrescription
Encounter.careTeam
  • Type Reference: Removed Target Type ReferralRequest Added Element
Encounter.participant.individual Encounter.participant.actor
  • Renamed from individual to actor
  • Type Reference: Added Target Type PractitionerRole Types Patient, Group, Device, HealthcareService
Encounter.appointment Encounter.virtualService
  • Max Cardinality changed Added Element
Encounter.actualPeriod
  • Renamed from 1 period to * actualPeriod
Encounter.reasonCode Encounter.plannedStartDate
  • Added Element
Encounter.reasonReference Encounter.plannedEndDate
  • Added Element
Encounter.reason
  • Renamed from reasonCode to reason
  • Type changed from CodeableConcept to BackboneElement
Encounter.diagnosis.use Encounter.reason.use
  • Added Element
Encounter.hospitalization.origin Encounter.reason.value
  • Type Reference: Added Target Type Organization Element
Encounter.hospitalization.destination Encounter.diagnosis.condition
  • Min Cardinality changed from 1 to 0
  • Max Cardinality changed from 1 to *
  • Type Reference: Added Target Type Organization changed from Reference(Condition | Procedure) to CodeableReference
Encounter.location.status Encounter.diagnosis.use
  • Change value set Max Cardinality changed from http://hl7.org/fhir/ValueSet/encounter-location-status 1 to http://hl7.org/fhir/ValueSet/encounter-location-status|4.0.1 *
Encounter.location.physicalType Encounter.dietPreference
  • Added Element Moved from Encounter.hospitalization to Encounter
Encounter.specialArrangement
  • Moved from Encounter.hospitalization to Encounter
Encounter.specialCourtesy
  • Moved from Encounter.hospitalization to Encounter
Encounter.admission
  • Renamed from hospitalization to admission
Encounter.admission.preAdmissionIdentifier
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.origin
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.admitSource
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.reAdmission
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.destination
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.dischargeDisposition
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.location.form
  • Renamed from physicalType to form
Encounter.reason Encounter.statusHistory
  • deleted Deleted (-> EncounterHistory.status)
Encounter.diagnosis.role Encounter.classHistory
  • deleted Deleted (-> EncounterHistory.class)
Encounter.reasonReference
  • Deleted (-> Encounter.reason.reference)
Encounter.diagnosis.rank
  • Deleted (-> Account.diagnosis.sequence)

See the Full Difference for further information

This analysis is available for R4 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). ) for R4B as XML or JSON .

Structure

List planned | arrived | triaged | in-progress | onleave | finished | cancelled + Σ 1..1 Classification 0..* List of past 1..1 inpatient | 1..1 The time that 0..1 Indicates the urgency 0..* Episode(s) of care that 0..* Persons involved Quantity Coded reason 1..1 0..1 Ranking of the diagnosis (for each role type) 0..1 Details about 0..1 0..1 From where patient was admitted (physician referral, transfer) The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission 0..* CodeableConcept 0..* Special courtesies (VIP, board member) 0..* Wheelchair, translator, stretcher, etc.
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . 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 on-hold | finished discharged | completed | cancelled + | discontinued | entered-in-error | unknown
EncounterStatus Binding: Encounter Status ( Required )
. . . statusHistory businessStatus 0..* BackboneElement A granular, workflows specific set of past encounter statuses that apply to the encounter

. . . status . code 1..1 code CodeableConcept The current business status
EncounterStatus Binding: BusinessStatus ( Required Example ) period Period
Additional Bindings Purpose
Encounter Business Status - Inpatient Starter
Encounter Business Status - Outpatient Starter 1..1
Encounter Business Status - Emergency Starter The time that the episode was in the specified status

. . . class . type 0..1 Coding The kind of patient encounter workflow the status is tracking
V3 Value SetActEncounterCode Binding: Encounter Business Status Type ( Extensible Example )
. . classHistory . . effectiveDate 0..1 BackboneElement dateTime When the encounter classes entered this business status
. . . class Σ 0..* Coding CodeableConcept Classification of patient encounter context - e.g. Inpatient, outpatient | ambulatory | emergency +
Binding: Encounter class icon V3 Value SetActEncounterCode ( Extensible Preferred )

. . period . priority 0..1 Period CodeableConcept Indicates the episode was in urgency of the specified class encounter
Binding: ActPriority icon ( Example )
. . . type Σ 0..* CodeableConcept Specific type of encounter (e.g. e-mail consultation, surgical day-care, ...)
Binding: Encounter type Type ( Example )

. . . serviceType Σ 0..* CodeableConcept CodeableReference ( HealthcareService ) Specific type of service
Binding: Service type Type ( Example )

. . priority . subject Σ 0..1 Reference ( Patient | Group ) The patient or group related to this encounter
... subjectStatus 0..1 CodeableConcept The current status of the encounter subject in relation to the Encounter
v3 Code System ActPriority Binding: Encounter Subject Status ( Example )
. . . subject episodeOfCare Σ 0..* 0..1 Reference ( EpisodeOfCare ) Episode(s) of care that this encounter should be recorded against

. . . basedOn 0..* Reference ( Patient CarePlan | Group DeviceRequest | MedicationRequest | ServiceRequest | RequestOrchestration | NutritionOrder | VisionPrescription ) The patient or group present at the request that initiated this encounter

. . episodeOfCare . careTeam 0..* Σ Reference ( CareTeam ) The group(s) that are allocated to participate in this encounter

. . . partOf 0..1 Reference ( EpisodeOfCare Encounter ) Another Encounter this encounter should be recorded against is part of
. . . basedOn serviceProvider 0..1 Reference ( ServiceRequest Organization ) The ServiceRequest that initiated organization (facility) responsible for this encounter
. . . participant Σ C 0..* BackboneElement List of participants involved in the encounter
+ Rule: A type must be provided when no explicit actor is specified
+ Rule: A type cannot be provided for a patient or group participant

. . . . type Σ C 0..* CodeableConcept Role of participant in encounter
Binding: Participant type Type ( Extensible )

. . . . period 0..1 Period Period of time during the encounter that the participant participated
. . . . individual actor Σ C 0..1 Reference ( Patient | Group | RelatedPerson | Practitioner | PractitionerRole | RelatedPerson Device | HealthcareService ) The individual, device, or service participating in the encounter other than the patient
. . . appointment Σ 0..* Reference ( Appointment ) The appointment that scheduled this encounter

. . . period virtualService 0..* VirtualServiceDetail Connection details of a virtual service (e.g. conference call)

0..1
. . . actualPeriod 0..1 Period The actual start and end time of the encounter
. . length . plannedStartDate 0..1 dateTime The planned start date/time (or admission date) of the encounter
. . . plannedEndDate 0..1 dateTime The planned end date/time (or discharge date) of the encounter
... length 0..1 Duration Actual quantity of time the encounter lasted (less time absent)
. . . reason Σ 0..* BackboneElement The list of medical reasons that are expected to be addressed during the episode of care

. . . . reasonCode use Σ 0..* CodeableConcept What the encounter takes place reason value should be used for/as
Binding: Encounter Reason Codes Use ( Preferred Example )

. . . . reasonReference value Σ 0..* Reference CodeableReference ( Condition | Procedure DiagnosticReport | Observation | ImmunizationRecommendation Procedure ) Reason the encounter takes place (reference) (core or reference)
Binding: Encounter Reason Codes ( Preferred )

. . . diagnosis Σ 0..* BackboneElement The list of diagnosis relevant to this encounter

. . . . condition Σ 0..* Reference CodeableReference ( Condition | Procedure ) The diagnosis or procedure relevant to the encounter
Binding: Condition/Problem/Diagnosis Codes ( Example )

. . . . use 0..* CodeableConcept Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
DiagnosisRole Binding: Encounter Diagnosis Use ( Preferred ) rank 0..1
positiveInt
. . . account 0..* Reference ( Account ) The set of accounts that may be used for billing for this Encounter

. . hospitalization . dietPreference 0..* BackboneElement CodeableConcept Diet preferences reported by the admission to a healthcare service patient
Binding: Diet ( Example )

. . preAdmissionIdentifier . specialArrangement 0..* Identifier CodeableConcept Wheelchair, translator, stretcher, etc
Binding: Special Arrangements ( Preferred )

Pre-admission identifier
. . origin . specialCourtesy 0..* CodeableConcept Reference Special courtesies (VIP, board member)
Binding: Special Courtesy ( Location | Organization Preferred )

The location/organization from which the patient came before admission
. . admitSource . admission 0..1 CodeableConcept BackboneElement Details about the admission to a healthcare service
Admit source ( Preferred )
. . . reAdmission . preAdmissionIdentifier 0..1 CodeableConcept Identifier Pre-admission identifier
v2 RE-ADMISSION INDICATOR ( Example )
. . . dietPreference . origin 0..1 Diet preferences reported by the patient Diet Reference ( Example Location | Organization ) The location/organization from which the patient came before admission
. . . specialCourtesy . admitSource 0..1 CodeableConcept From where patient was admitted (physician referral, transfer)
Special courtesy Binding: Admit Source ( Preferred )
. . . specialArrangement . reAdmission 0..1 CodeableConcept Indicates that the patient is being re-admitted
Binding: hl7VS-re-admissionIndicator icon Special arrangements ( Preferred Example )
. . . . 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
Binding: Discharge disposition Disposition ( 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 Binding: Encounter Location Status ( Required )
. . . physicalType . form 0..1 CodeableConcept The physical type of the location (usually the level in the location hierachy hierarchy - bed room ward bed, room, ward, virtual etc.)
Binding: Location type Form ( 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

doco Documentation for this format icon

See the Extensions for this resource

UML Diagram ( Legend )

Encounter ( DomainResource ) Identifier(s) by which this encounter is known identifier : Identifier [0..*] planned | arrived | triaged | in-progress | onleave | finished | cancelled + The current state of the encounter (not the state of the patient within the encounter - that is subjectState) (this element modifies the meaning of other elements) status : code [1..1] « Current state of the encounter. null (Strength=Required) EncounterStatus ! » Concepts representing classification of patient encounter such as ambulatory (outpatient), inpatient, emergency, home health or others due to local variations class : Coding CodeableConcept [1..1] [0..*] « Classification null (Strength=Preferred) EncounterClass ? » Indicates the urgency of the encounter. (Strength=Extensible) encounter v3.ActEncounterCode priority + : CodeableConcept [0..1] « null (Strength=Example) ActPriority ?? » Specific type of encounter (e.g. e-mail consultation, surgical day-care, skilled nursing, rehabilitation) type : CodeableConcept [0..*] « The type of encounter. (Strength=Example) EncounterType ?? » Broad categorization of the service that is to be provided (e.g. cardiology) serviceType : CodeableConcept CodeableReference [0..1] [0..*] « HealthcareService ; Broad categorization of the service that is to be provided. null (Strength=Example) ServiceType ?? » Indicates the urgency of The patient or group related to this encounter. In some use-cases the encounter patient MAY not be present, such as a case meeting about a patient between several practitioners or a careteam priority subject : CodeableConcept Reference [0..1] « Indicates the urgency of the encounter. (Strength=Example) v3.ActPriority Patient | Group ?? » The subjectStatus value can be used to track the patient's status within the encounter. It details whether the patient has arrived or group present at the encounter departed, has been triaged or is currently in a waiting status subject subjectStatus : Reference CodeableConcept [0..1] « Patient | Group null (Strength=Example) EncounterSubjectStatus ?? » Where a specific encounter should be classified as a part of a specific episode(s) of care this field should be used. This association can facilitate grouping of related encounters together for a specific purpose, such as government reporting, issue tracking, association via a common problem. The association is recorded on the encounter as these are typically created after the episode of care and grouped on entry rather than editing the episode of care to append another encounter to it (the episode of care could span years) episodeOfCare : Reference [0..*] « EpisodeOfCare » The request this encounter satisfies (e.g. incoming referral or procedure request) basedOn : Reference [0..*] « ServiceRequest CarePlan » | DeviceRequest | The appointment that scheduled this encounter appointment MedicationRequest : Reference | ServiceRequest [0..*] « Appointment | RequestOrchestration » | The start and end time of the encounter period NutritionOrder : Period | VisionPrescription [0..1] » Quantity of time the encounter lasted. This excludes the time during leaves The group(s) of absence length : Duration [0..1] Reason the encounter takes place, expressed as a code. For admissions, individuals, organizations that are allocated to participate in this can be used for a coded admission diagnosis reasonCode : CodeableConcept [0..*] « Reason why encounter. The participants backbone will record the encounter takes place. (Strength=Preferred) EncounterReasonCodes ? » Reason actuals of when these individuals participated during the encounter takes place, expressed as a code. For admissions, this can be used for a coded admission diagnosis reasonReference careTeam : Reference [0..*] « Condition | Procedure | Observation | ImmunizationRecommendation CareTeam » The set Another Encounter of accounts that may be used for billing for which this Encounter encounter is a part of (administratively or in time) account partOf : Reference [0..*] [0..1] « Account Encounter » The organization that is primarily responsible for this Encounter's services. This MAY be the same as the organization on the Patient record, however it could be different, such as if the actor performing the services was from an external organization (which may be billed seperately) for an external consultation. Refer to the example bundle showing an abbreviated set of Encounters for a colonoscopy example on the Encounter examples tab serviceProvider : Reference [0..1] « Organization » Another Encounter of which The appointment that scheduled this encounter is a part of (administratively or in time) partOf appointment : Reference [0..1] [0..*] « Encounter Appointment » Connection details of a virtual service (e.g. conference call) virtualService : VirtualServiceDetail [0..*] The actual start and end time of the encounter actualPeriod : Period [0..1] StatusHistory The planned start date/time (or admission date) of the encounter plannedStartDate : dateTime [0..1] The planned | arrived | triaged | in-progress | onleave | finished | cancelled + end date/time (or discharge date) of the encounter status plannedEndDate : code dateTime [1..1] « [0..1] Current state Actual quantity of time the encounter. (Strength=Required) encounter lasted. This excludes the time during leaves of absence. When missing it is the time in between the start and end values EncounterStatus ! » length : Duration [0..1] The time set of accounts that may be used for billing for this Encounter account : Reference [0..*] « Account » Diet preferences reported by the episode was in patient dietPreference : CodeableConcept [0..*] « null (Strength=Example) EncounterDiet ?? » Any special requests that have been made for this encounter, such as the specified status provision of specific equipment or other things period specialArrangement : Period CodeableConcept [1..1] [0..*] « null (Strength=Preferred) SpecialArrangements ? » Special courtesies that may be provided to the patient during the encounter (VIP, board member, professional courtesy) specialCourtesy : CodeableConcept [0..*] « null (Strength=Preferred) SpecialCourtesy ? » ClassHistory BusinessStatus inpatient | outpatient | ambulatory | emergency + The current business status class code : Coding CodeableConcept [1..1] « null (Strength=Example) BusinessStatus?? » Classification The kind of workflow the encounter. (Strength=Extensible) status is tracking v3.ActEncounterCode type + : Coding [0..1] « null (Strength=Example) EncounterBusinessStatusType ?? » The time that the episode was in date/time when the specified class encounter entered this business status period effectiveDate : Period dateTime [1..1] [0..1] Participant Role of participant in encounter type : CodeableConcept [0..*] « Role of participant in encounter. null (Strength=Extensible) ParticipantType + » « This element has or is affected by some invariants C » The period of time that the specified participant participated in the encounter. These can overlap or be sub-sets of the overall encounter's period period : Period [0..1] Persons Person involved in the encounter other than encounter, the patient/group is also included here to indicate that the patient was actually participating in the encounter. Not including the patient here covers use cases such as a case meeting between practitioners about a patient - non contact times individual actor : Reference [0..1] « Patient | Group | RelatedPerson | Practitioner | PractitionerRole | Device | HealthcareService » « RelatedPerson This element has or is affected by some invariants C » Diagnosis Reason What the reason value should be used as e.g. Chief Complaint, Health Concern, Health Maintenance (including screening) use : CodeableConcept [0..*] « null (Strength=Example) EncounterReasonUse ?? » Reason the encounter takes place, expressed as specified using information from a code or a reference to another resource. For admissions, this is the can be used for a coded admission diagnosis. diagnosis value : CodeableReference [0..*] « Condition | DiagnosticReport | Observation | Procedure ; null (Strength=Preferred) EncounterReasonCodes ? » Diagnosis The indication will typically be coded diagnosis or a reference to a Condition (with other resources referenced in the evidence.detail), or a Procedure the use property will indicate the purpose of this specific diagnosis condition : Reference CodeableReference [1..1] [0..*] « Condition | Procedure ; null (Strength=Example) ConditionProblemDiagnosisCodes ?? » Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) use : CodeableConcept [0..1] [0..*] « The type of diagnosis this condition represents. null (Strength=Preferred) DiagnosisRole EncounterDiagnosisUse ? » Ranking of the diagnosis (for each role type) rank : positiveInt [0..1] Hospitalization Admission Pre-admission identifier preAdmissionIdentifier : Identifier [0..1] The location/organization from which the patient came before admission origin : Reference [0..1] « Location | Organization » From where patient was admitted (physician referral, transfer) admitSource : CodeableConcept [0..1] « From where the patient was admitted. null (Strength=Preferred) AdmitSource ? » Whether Indicates that this hospitalization encounter is directly related to a readmission and why if known prior admission, often because the conditions addressed in the prior admission were not fully addressed reAdmission : CodeableConcept [0..1] « The reason for re-admission of this hospitalization encounter. (Strength=Example) v2.0092 ?? » Diet preferences reported by the patient dietPreference : CodeableConcept [0..*] « Medical, cultural or ethical food preferences to help with catering requirements. null (Strength=Example) Diet Hl7VSReAdmissionIndicator ?? » Special courtesies (VIP, board member) specialCourtesy : CodeableConcept [0..*] « Special courtesies. (Strength=Preferred) SpecialCourtesy ? » Any special requests that have been made for this hospitalization encounter, such as the provision of specific equipment or other things specialArrangement : CodeableConcept [0..*] « Special arrangements. (Strength=Preferred) SpecialArrangements ? » Location/organization to which the patient is discharged destination : Reference [0..1] « Location | Organization » Category or kind of location after discharge dischargeDisposition : CodeableConcept [0..1] « Discharge Disposition. null (Strength=Example) DischargeDisposition ?? » Location The location where the encounter takes place location : Reference [1..1] « Location » The status of the participants' presence at the specified location during the period specified. If the participant is no longer at the location, then the period will have an end date/time status : code [0..1] « The status of the location. null (Strength=Required) EncounterLocationStatus ! » This will be used to specify the required levels (bed/ward/room/etc.) desired to be recorded to simplify either messaging or query physicalType form : CodeableConcept [0..1] « Physical form of the location. null (Strength=Example) LocationType LocationForm ?? » Time period during which the patient was present at the location period : Period [0..1] The status history permits the encounter resource to contain the status history without needing to read through the historical versions A granular, workflows specific set of statuses that apply to the resource, or even have the server store them encounter statusHistory businessStatus [0..*] The class history permits the tracking list of the encounters transitions without needing to go through the resource history. This would be used people responsible for a case where an admission starts of as an emergency encounter, then transitions into an inpatient scenario. Doing this and not restarting a new encounter ensures that any lab/diagnostic results can more easily follow providing the patient and not require re-processing and not get lost or cancelled during a kind of discharge from emergency to inpatient service classHistory participant [0..*] The list of people responsible for providing medical reasons that are expected to be addressed during the service episode of care participant reason [0..*] The list of diagnosis relevant to this encounter diagnosis [0..*] Details about the admission to stay during which a healthcare service is provided. This does not describe the event of admitting the patient, but rather any information that is relevant from the time of admittance until the time of discharge hospitalization admission [0..1] List of locations where the patient has been during this encounter location [0..*]

XML Template

<

<Encounter xmlns="http://hl7.org/fhir"> doco

 <!-- 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>
 <
 <
  <
  <</period>
 </statusHistory>
 <</class>
 <
  <</class>
  <</period>
 </classHistory>
 <</type>
 <</serviceType>
 <</priority>
 <</subject>

 <status value="[code]"/><!-- 1..1 planned | in-progress | on-hold | discharged | completed | cancelled | discontinued | entered-in-error | unknown -->
 <businessStatus>  <!-- 0..* A granular, workflows specific set of statuses that apply to the encounter -->
  <code><!-- 1..1 CodeableConcept The current business status --></code>
  <type><!-- 0..1 Coding The kind of workflow the status is tracking --></type>
  <effectiveDate value="[dateTime]"/><!-- 0..1 When the encounter entered this business status -->
 </businessStatus>
 <class><!-- 0..* CodeableConcept Classification of patient encounter context - e.g. Inpatient, outpatient icon --></class>
 <priority><!-- 0..1 CodeableConcept Indicates the urgency of the encounter icon --></priority>
 <type><!-- 0..* CodeableConcept Specific type of encounter (e.g. e-mail consultation, surgical day-care, ...) --></type>
 <serviceType><!-- 0..* CodeableReference(HealthcareService) Specific type of service --></serviceType>
 <subject><!-- 0..1 Reference(Group|Patient) The patient or group related to this encounter --></subject>
 <subjectStatus><!-- 0..1 CodeableConcept The current status of the subject in relation to the Encounter --></subjectStatus>

 <episodeOfCare><!-- 0..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against --></episodeOfCare>
 <</basedOn>

 <basedOn><!-- 0..* Reference(CarePlan|DeviceRequest|MedicationRequest|
   NutritionOrder|RequestOrchestration|ServiceRequest|VisionPrescription) The request that initiated this encounter --></basedOn>

 <careTeam><!-- 0..* Reference(CareTeam) The group(s) that are allocated to participate in this encounter --></careTeam>
 <partOf><!-- 0..1 Reference(Encounter) Another Encounter this encounter is part of --></partOf>
 <serviceProvider><!-- 0..1 Reference(Organization) The organization (facility) responsible for this encounter --></serviceProvider>

 <participant>  <!-- 0..* List of participants involved in the encounter -->
  <</type>

  <type><!-- I 0..* CodeableConcept Role of participant in encounter --></type>

  <period><!-- 0..1 Period Period of time during the encounter that the participant participated --></period>
  <</individual>

  <actor><!-- I 0..1 Reference(Device|Group|HealthcareService|Patient|Practitioner|
    PractitionerRole|RelatedPerson) The individual, device, or service participating in the encounter --></actor>
 </participant>
 <appointment><!-- 0..* Reference(Appointment) The appointment that scheduled this encounter --></appointment>
 <</period>
 <</length>
 <</reasonCode>
 <|
   </reasonReference>

 <virtualService><!-- 0..* VirtualServiceDetail Connection details of a virtual service (e.g. conference call) --></virtualService>
 <actualPeriod><!-- 0..1 Period The actual start and end time of the encounter --></actualPeriod>
 <plannedStartDate value="[dateTime]"/><!-- 0..1 The planned start date/time (or admission date) of the encounter -->
 <plannedEndDate value="[dateTime]"/><!-- 0..1 The planned end date/time (or discharge date) of the encounter -->
 <length><!-- 0..1 Duration Actual quantity of time the encounter lasted (less time absent) --></length>
 <reason>  <!-- 0..* The list of medical reasons that are expected to be addressed during the episode of care -->
  <use><!-- 0..* CodeableConcept What the reason value should be used for/as --></use>
  <value><!-- 0..* CodeableReference(Condition|DiagnosticReport|Observation|
    Procedure) Reason the encounter takes place (core or reference) --></value>

 </reason>

 <diagnosis>  <!-- 0..* The list of diagnosis relevant to this encounter -->
  <</condition>
  <</use>
  <

  <condition><!-- 0..* CodeableReference(Condition) The diagnosis relevant to the encounter --></condition>
  <use><!-- 0..* CodeableConcept Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) --></use>

 </diagnosis>
 <account><!-- 0..* Reference(Account) The set of accounts that may be used for billing for this Encounter --></account>
 <
  <</preAdmissionIdentifier>
  <</origin>
  <</admitSource>
  <</reAdmission>
  <</dietPreference>
  <</specialCourtesy>
  <</specialArrangement>
  <</destination>
  <</dischargeDisposition>
 </hospitalization>

 <dietPreference><!-- 0..* CodeableConcept Diet preferences reported by the patient --></dietPreference>
 <specialArrangement><!-- 0..* CodeableConcept Wheelchair, translator, stretcher, etc --></specialArrangement>
 <specialCourtesy><!-- 0..* CodeableConcept Special courtesies (VIP, board member) --></specialCourtesy>
 <admission>  <!-- 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 Indicates that the patient is being re-admitted icon --></reAdmission>
  <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>
 </admission>

 <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>

  <form><!-- 0..1 CodeableConcept The physical type of the location (usually the level in the location hierarchy - bed, room, ward, virtual etc.) --></form>

  <period><!-- 0..1 Period Time period during which the patient was present at the location --></period>
 </location>
 <</serviceProvider>
 <</partOf>

</Encounter>

JSON Template

{doco
  "resourceType" : "",

  "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 | in-progress | on-hold | discharged | completed | cancelled | discontinued | entered-in-error | unknown
  "businessStatus" : [{ // A granular, workflows specific set of statuses that apply to the encounter
    "code" : { CodeableConcept }, // R!  The current business status
    "type" : { Coding }, // The kind of workflow the status is tracking
    "effectiveDate" : "<dateTime>" // When the encounter entered this business status

  }],
  "
  "
  "
  "

  "class" : [{ CodeableConcept }], // Classification of patient encounter context - e.g. Inpatient, outpatient icon
  "priority" : { CodeableConcept }, // Indicates the urgency of the encounter icon
  "type" : [{ CodeableConcept }], // Specific type of encounter (e.g. e-mail consultation, surgical day-care, ...)
  "serviceType" : [{ CodeableReference(HealthcareService) }], // Specific type of service
  "subject" : { Reference(Group|Patient) }, // The patient or group related to this encounter
  "subjectStatus" : { CodeableConcept }, // The current status of the subject in relation to the Encounter

  "episodeOfCare" : [{ Reference(EpisodeOfCare) }], // Episode(s) of care that this encounter should be recorded against
  "

  "basedOn" : [{ Reference(CarePlan|DeviceRequest|MedicationRequest|
   NutritionOrder|RequestOrchestration|ServiceRequest|VisionPrescription) }], // The request that initiated this encounter

  "careTeam" : [{ Reference(CareTeam) }], // The group(s) that are allocated to participate in this encounter
  "partOf" : { Reference(Encounter) }, // Another Encounter this encounter is part of
  "serviceProvider" : { Reference(Organization) }, // The organization (facility) responsible for this encounter

  "participant" : [{ // List of participants involved in the encounter
    "

    "type" : [{ CodeableConcept }], // I Role of participant in encounter

    "period" : { Period }, // Period of time during the encounter that the participant participated
    "

    "actor" : { Reference(Device|Group|HealthcareService|Patient|Practitioner|
    PractitionerRole|RelatedPerson) } // I The individual, device, or service participating in the encounter
  }],
  "appointment" : [{ Reference(Appointment) }], // The appointment that scheduled this encounter
  "
  "
  "
  "|
   

  "virtualService" : [{ VirtualServiceDetail }], // Connection details of a virtual service (e.g. conference call)
  "actualPeriod" : { Period }, // The actual start and end time of the encounter
  "plannedStartDate" : "<dateTime>", // The planned start date/time (or admission date) of the encounter
  "plannedEndDate" : "<dateTime>", // The planned end date/time (or discharge date) of the encounter
  "length" : { Duration }, // Actual quantity of time the encounter lasted (less time absent)
  "reason" : [{ // The list of medical reasons that are expected to be addressed during the episode of care
    "use" : [{ CodeableConcept }], // What the reason value should be used for/as
    "value" : [{ CodeableReference(Condition|DiagnosticReport|Observation|
    Procedure) }] // Reason the encounter takes place (core or reference)

  }],

  "diagnosis" : [{ // The list of diagnosis relevant to this encounter
    "
    "
    "

    "condition" : [{ CodeableReference(Condition) }], // The diagnosis relevant to the encounter
    "use" : [{ CodeableConcept }] // Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)

  }],
  "account" : [{ Reference(Account) }], // The set of accounts that may be used for billing for this Encounter
  "
    "
    "
    "
    "
    "
    "
    "
    "
    "

  "dietPreference" : [{ CodeableConcept }], // Diet preferences reported by the patient
  "specialArrangement" : [{ CodeableConcept }], // Wheelchair, translator, stretcher, etc
  "specialCourtesy" : [{ CodeableConcept }], // Special courtesies (VIP, board member)
  "admission" : { // 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 }, // Indicates that the patient is being re-admitted icon
    "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
    "

    "form" : { CodeableConcept }, // The physical type of the location (usually the level in the location hierarchy - bed, room, ward, virtual etc.)

    "period" : { Period } // Time period during which the patient was present at the location
  }],
  "
  "

  }]

}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:;

[ a fhir:Encounter;

  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from 
  # from 
  fhir:
  fhir:
  fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
  ];
  fhir:
    fhir:
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:

  # from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language
  # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* Identifier(s) by which this encounter is known
  fhir:status [ code ] ; # 1..1 planned | in-progress | on-hold | discharged | completed | cancelled | discontinued | entered-in-error | unknown
  fhir:businessStatus ( [ # 0..* A granular, workflows specific set of statuses that apply to the encounter
    fhir:code [ CodeableConcept ] ; # 1..1 The current business status
    fhir:type [ Coding ] ; # 0..1 The kind of workflow the status is tracking
    fhir:effectiveDate [ dateTime ] ; # 0..1 When the encounter entered this business status
  ] ... ) ;
  fhir:class  ( [ CodeableConcept ] ... ) ; # 0..* Classification of patient encounter context - e.g. Inpatient, outpatient
  fhir:priority [ CodeableConcept ] ; # 0..1 Indicates the urgency of the encounter
  fhir:type  ( [ CodeableConcept ] ... ) ; # 0..* Specific type of encounter (e.g. e-mail consultation, surgical day-care, ...)
  fhir:serviceType  ( [ CodeableReference(HealthcareService) ] ... ) ; # 0..* Specific type of service
  fhir:subject [ Reference(Group|Patient) ] ; # 0..1 The patient or group related to this encounter
  fhir:subjectStatus [ CodeableConcept ] ; # 0..1 The current status of the subject in relation to the Encounter
  fhir:episodeOfCare  ( [ Reference(EpisodeOfCare) ] ... ) ; # 0..* Episode(s) of care that this encounter should be recorded against
  fhir:basedOn  ( [ Reference(CarePlan|DeviceRequest|MedicationRequest|NutritionOrder|RequestOrchestration|
  ServiceRequest|VisionPrescription) ] ... ) ; # 0..* The request that initiated this encounter

  fhir:careTeam  ( [ Reference(CareTeam) ] ... ) ; # 0..* The group(s) that are allocated to participate in this encounter
  fhir:partOf [ Reference(Encounter) ] ; # 0..1 Another Encounter this encounter is part of
  fhir:serviceProvider [ Reference(Organization) ] ; # 0..1 The organization (facility) responsible for this encounter
  fhir:participant ( [ # 0..* List of participants involved in the encounter
    fhir:type  ( [ CodeableConcept ] ... ) ; # 0..* I Role of participant in encounter
    fhir:period [ Period ] ; # 0..1 Period of time during the encounter that the participant participated
    fhir:actor [ Reference(Device|Group|HealthcareService|Patient|Practitioner|PractitionerRole|
  RelatedPerson) ] ; # 0..1 I The individual, device, or service participating in the encounter

  ] ... ) ;
  fhir:appointment  ( [ Reference(Appointment) ] ... ) ; # 0..* The appointment that scheduled this encounter
  fhir:virtualService  ( [ VirtualServiceDetail ] ... ) ; # 0..* Connection details of a virtual service (e.g. conference call)
  fhir:actualPeriod [ Period ] ; # 0..1 The actual start and end time of the encounter
  fhir:plannedStartDate [ dateTime ] ; # 0..1 The planned start date/time (or admission date) of the encounter
  fhir:plannedEndDate [ dateTime ] ; # 0..1 The planned end date/time (or discharge date) of the encounter
  fhir:length [ Duration ] ; # 0..1 Actual quantity of time the encounter lasted (less time absent)
  fhir:reason ( [ # 0..* The list of medical reasons that are expected to be addressed during the episode of care
    fhir:use  ( [ CodeableConcept ] ... ) ; # 0..* What the reason value should be used for/as
    fhir:value  ( [ CodeableReference(Condition|DiagnosticReport|Observation|Procedure) ] ... ) ; # 0..* Reason the encounter takes place (core or reference)
  ] ... ) ;
  fhir:diagnosis ( [ # 0..* The list of diagnosis relevant to this encounter
    fhir:condition  ( [ CodeableReference(Condition) ] ... ) ; # 0..* The diagnosis relevant to the encounter
    fhir:use  ( [ CodeableConcept ] ... ) ; # 0..* Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
  ] ... ) ;
  fhir:account  ( [ Reference(Account) ] ... ) ; # 0..* The set of accounts that may be used for billing for this Encounter
  fhir:dietPreference  ( [ CodeableConcept ] ... ) ; # 0..* Diet preferences reported by the patient
  fhir:specialArrangement  ( [ CodeableConcept ] ... ) ; # 0..* Wheelchair, translator, stretcher, etc
  fhir:specialCourtesy  ( [ CodeableConcept ] ... ) ; # 0..* Special courtesies (VIP, board member)
  fhir:admission [ # 0..1 Details about the admission to a healthcare service
    fhir:preAdmissionIdentifier [ Identifier ] ; # 0..1 Pre-admission identifier
    fhir:origin [ Reference(Location|Organization) ] ; # 0..1 The location/organization from which the patient came before admission
    fhir:admitSource [ CodeableConcept ] ; # 0..1 From where patient was admitted (physician referral, transfer)
    fhir:reAdmission [ CodeableConcept ] ; # 0..1 Indicates that the patient is being re-admitted
    fhir:destination [ Reference(Location|Organization) ] ; # 0..1 Location/organization to which the patient is discharged
    fhir:dischargeDisposition [ CodeableConcept ] ; # 0..1 Category or kind of location after discharge
  ] ;
  fhir:location ( [ # 0..* List of locations where the patient has been
    fhir:location [ Reference(Location) ] ; # 1..1 Location the encounter takes place
    fhir:status [ code ] ; # 0..1 planned | active | reserved | completed
    fhir:form [ CodeableConcept ] ; # 0..1 The physical type of the location (usually the level in the location hierarchy - bed, room, ward, virtual etc.)
    fhir:period [ Period ] ; # 0..1 Time period during which the patient was present at the location
  ] ... ) ;

]

Changes since Release 3 from both R4 and R4B

Encounter
Encounter.status
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-status to http://hl7.org/fhir/ValueSet/encounter-status|4.0.1 Remove codes arrived , triaged , onleave , finished
  • Add codes on-hold , discharged , completed , discontinued
Encounter.statusHistory.status Encounter.businessStatus
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-status to http://hl7.org/fhir/ValueSet/encounter-status|4.0.1 Added Element
Encounter.businessStatus.code
  • Added Mandatory Element
Encounter.businessStatus.type
  • Added Element
Encounter.businessStatus.effectiveDate
  • Added Element
Encounter.class
  • Min Cardinality changed from 1 to 0
  • Max Cardinality changed from 1 to *
  • Type changed from Coding to CodeableConcept
  • Remove Binding `http://terminology.hl7.org/ValueSet/v3-ActEncounterCode` (extensible)
Encounter.serviceType
  • Max Cardinality changed from 1 to *
  • Type changed from CodeableConcept to CodeableReference
Encounter.serviceType Encounter.subjectStatus
  • Added Element
Encounter.basedOn
    Renamed from incomingReferral to basedOn
  • Type Reference: Added Target Type ServiceRequest Types CarePlan, DeviceRequest, MedicationRequest, RequestOrchestration, NutritionOrder, VisionPrescription
Encounter.careTeam
  • Type Reference: Removed Target Type ReferralRequest Added Element
Encounter.participant.individual Encounter.participant.actor
  • Renamed from individual to actor
  • Type Reference: Added Target Type PractitionerRole Types Patient, Group, Device, HealthcareService
Encounter.appointment Encounter.virtualService
  • Max Cardinality changed Added Element
Encounter.actualPeriod
  • Renamed from 1 period to * actualPeriod
Encounter.reasonCode Encounter.plannedStartDate
  • Added Element
Encounter.reasonReference Encounter.plannedEndDate
  • Added Element
Encounter.reason
  • Renamed from reasonCode to reason
  • Type changed from CodeableConcept to BackboneElement
Encounter.diagnosis.use Encounter.reason.use
  • Added Element
Encounter.hospitalization.origin Encounter.reason.value
  • Type Reference: Added Target Type Organization Element
Encounter.hospitalization.destination Encounter.diagnosis.condition
  • Min Cardinality changed from 1 to 0
  • Max Cardinality changed from 1 to *
  • Type Reference: Added Target Type Organization changed from Reference(Condition | Procedure) to CodeableReference
Encounter.location.status Encounter.diagnosis.use
  • Change value set Max Cardinality changed from http://hl7.org/fhir/ValueSet/encounter-location-status 1 to http://hl7.org/fhir/ValueSet/encounter-location-status|4.0.1 *
Encounter.location.physicalType Encounter.dietPreference
  • Added Element Moved from Encounter.hospitalization to Encounter
Encounter.specialArrangement
  • Moved from Encounter.hospitalization to Encounter
Encounter.specialCourtesy
  • Moved from Encounter.hospitalization to Encounter
Encounter.admission
  • Renamed from hospitalization to admission
Encounter.admission.preAdmissionIdentifier
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.origin
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.admitSource
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.reAdmission
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.destination
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.admission.dischargeDisposition
  • Moved from Encounter.hospitalization to Encounter.admission
Encounter.location.form
  • Renamed from physicalType to form
Encounter.reason Encounter.statusHistory
  • deleted Deleted (-> EncounterHistory.status)
Encounter.diagnosis.role Encounter.classHistory
  • deleted Deleted (-> EncounterHistory.class)
Encounter.reasonReference
  • Deleted (-> Encounter.reason.reference)
Encounter.diagnosis.rank
  • Deleted (-> Account.diagnosis.sequence)

See the Full Difference for further information

This analysis is available for R4 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). ) for R4B as XML or JSON .

 

See the Profiles & Extensions and the alternate Additional definitions: Master Definition XML + JSON , XML Schema / Schematron + JSON Schema , ShEx (for Turtle ) + see the extensions , the spreadsheet version & the dependency analysis

Encounter.type Encounter.serviceType Encounter.priority Encounter.diagnosis.use Encounter.hospitalization.admitSource Encounter.hospitalization.reAdmission Encounter.hospitalization.dietPreference Encounter.hospitalization.specialCourtesy Encounter.hospitalization.specialArrangement Encounter.hospitalization.dischargeDisposition
Path Definition ValueSet Type Reference Documentation
Encounter.status Encounter.statusHistory.status EncounterStatus Required

Current state of the encounter.

Encounter.businessStatus.code Required Example
  EncounterStatus Encounter Business Status - Inpatient starter

Inpatient business statuses: pre-admit | pend-admit | admit | discharge | unknown

  Encounter Business Status - Outpatient Encounter.class Encounter.classHistory.class starter Classification of the encounter.

Outpatient business statuses: check-in | check-out

  Extensible Encounter Business Status - Emergency v3.ActEncounterCode starter

Emergency business statuses: arrived | triaged | dismissed | unknown

Encounter.businessStatus.type The type of encounter. EncounterBusinessStatusType Example EncounterType

The kind of workflow the business status is tracking.

Encounter.class EncounterClass icon Preferred Broad categorization

This value set defines a set of the service codes that is to can be used to indicate the class of encounter: a specific code indicating class of service provided.

Encounter.priority ActPriority icon Example ServiceType

A code or set of codes (e.g., for routine, emergency,) specifying the urgency under which the Act happened, can happen, is happening, is intended to happen, or is requested/demanded to happen.

Discussion: This attribute is used in orders to indicate the ordered priority, and in event documentation it indicates the actual priority used to perform the act. In definition mood it indicates the available priorities.

Encounter.type EncounterType Example Indicates the urgency

This example value set defines a set of codes that can be used to indicate the encounter. type of encounter: a specific code indicating type of service provided.

Encounter.serviceType ServiceType Example

This value set defines an example set of codes of service-types.

Encounter.subjectStatus v3.ActPriority EncounterSubjectStatus Example

This example value set defines a set of codes that can be used to indicate the status of the subject within the encounter

Encounter.participant.type ParticipantType Extensible Role

This value set defines a set of participant codes that can be used to indicate how an individual participates in an encounter.

Encounter.reason.use EncounterReasonUse Extensible Example ParticipantType

What a specific Encounter/EpisodeOfCare reason.value is to be used for.

Encounter.reasonCode Encounter.reason.value Reason why the encounter takes place. EncounterReasonCodes Preferred EncounterReasonCodes

This examples value set defines the set of codes that can be used to indicate reasons for an encounter.

Encounter.diagnosis.condition The type of diagnosis this condition represents. ConditionProblemDiagnosisCodes Preferred Example DiagnosisRole

Example value set for Condition/Problem/Diagnosis codes.

Encounter.diagnosis.use From where the patient was admitted. EncounterDiagnosisUse Preferred AdmitSource

What a specific Encounter/EpisodeOfCare diagnosis.condition is to be used for.

Encounter.dietPreference The reason for re-admission of this hospitalization encounter. EncounterDiet (a valid code from Diet icon ) Example v2.0092

This value set defines a set of codes that can be used to indicate dietary preferences or restrictions a patient may have.

Encounter.specialArrangement Medical, cultural or ethical food preferences to help with catering requirements. SpecialArrangements Example Preferred Diet

This value set defines a set of codes that can be used to indicate the kinds of special arrangements in place for a patients visit.

Encounter.specialCourtesy Special courtesies. SpecialCourtesy Preferred SpecialCourtesy

This value set defines a set of codes that can be used to indicate special courtesies provided to the patient.

Encounter.admission.admitSource Special arrangements. AdmitSource Preferred SpecialArrangements

This value set defines a set of codes that can be used to indicate from where the patient came in.

Encounter.admission.reAdmission Discharge Disposition. Hl7VSReAdmissionIndicator icon (a valid code from re-admissionIndicator icon ) Example

Value Set of codes which are used to specify that a patient is being re-admitted to a healthcare facility from which they were discharged, and indicates the circumstances around such re-admission.

Encounter.admission.dischargeDisposition DischargeDisposition Example

This value set defines a set of codes that can be used to where the patient left the hospital.

Encounter.location.status EncounterLocationStatus Required

The status of the location.

Encounter.location.form Required LocationForm (a valid code from Location type icon ) Example EncounterLocationStatus

This example value set defines a set of codes that can be used to indicate the physical form of the Location.

Encounter.location.physicalType Physical form of the location. LocationType
UniqueKey Level Example Location Description Expression
img  enc-1 Rule Encounter.participant A type must be provided when no explicit actor is specified actor.exists() or type.exists()
img  enc-2 Rule Encounter.participant A type cannot be provided for a patient or group participant actor.exists(resolve() is Patient or resolve() is Group) implies type.exists().not()

  • The class element describes the setting (in/outpatient etc.) in which the Encounter took place. Since this is important for interpreting the context of the encounter, choosing the appropriate business rules to enforce and for the management of the process, this element is required. In future versions of FHIR, some kind of charge posting vehicle (e.g. Account) will should be added. provided.

As stated, Encounter allows a flexible nesting of Encounters using the partOf element. For example:

  • A patient is admitted for two weeks - This could be modeled using a single Encounter instance, in which the start and length are given for the duration of the whole stay. The admitting doctor and the responsible doctor during the stay are specified using the Participant component.
  • During the encounter, the patient moves from the admitting department to the Intensive Care unit and back - Three more detailed additional Encounters can be created, one for each location in which the patient stayed. Each of these Encounters has a single location (twice the admitting department and once the Intensive Care unit) and one or more participants at that location. These Encounters may use the partOf relationship to indicate these movements occurred during the longer overarching Encounter.
  • During the last part of the stay, the patient is visited by the members of the multi-disciplinary team that treated him for final evaluation - If relevant, for each of these short visits, an Encounter may be created with a single participant. Since these took place during the last part of the stay, the partOf element can be used to associate these short visits with either the third patient movement or the bigger overall encounter.

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. See also the full list of search parameters for this resource , and check the Extensions registry for search parameters on extensions related to 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
( CarePlan , MedicationRequest , RequestOrchestration , NutritionOrder , VisionPrescription , DeviceRequest , ServiceRequest )
business-status token The current business status of the Encounter Encounter.businessStatus.code
careteam reference Careteam allocated to participate in the encounter Encounter.careTeam
( CareTeam )
class token Classification of patient encounter Encounter.class
date date A date within the period actualPeriod the Encounter lasted Encounter.period Encounter.actualPeriod 17 23 Resources
date-start date The actual start date of the Encounter Encounter.actualPeriod.start
diagnosis-code token The diagnosis or procedure relevant to the encounter (coded) Encounter.diagnosis.condition.concept
diagnosis-reference reference The diagnosis or procedure relevant to the encounter (resource reference) Encounter.diagnosis.condition ( Condition , Procedure Encounter.diagnosis.condition.reference
) end-date date The actual end date of the Encounter Encounter.actualPeriod.end
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 30 59 Resources
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 a location (generally used via composite location-period) Encounter.location.period
location-value-period composite Time period during which the patient was present at the location On Encounter.location:
  location: location
  location-period: 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 Encounter.participant.actor
( Practitioner , Group , Device , Patient , HealthcareService , 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)
( Patient )
33 61 Resources
practitioner reference Persons involved in the encounter other than the patient Encounter.participant.individual.where(resolve() Encounter.participant.actor.where(resolve() is Practitioner)
( Practitioner )
reason-code token Coded reason the encounter takes place Reference to a concept (coded) Encounter.reasonCode Encounter.reason.value.concept
reason-reference reference Reason the encounter takes place (reference) Reference to a resource (resource reference) Encounter.reasonReference ( Condition , Observation , Procedure , ImmunizationRecommendation ) Encounter.reason.value.reference
service-provider reference The organization (facility) responsible for this encounter Encounter.serviceProvider
( Organization )
special-arrangement token Wheelchair, translator, stretcher, etc. Encounter.hospitalization.specialArrangement Encounter.specialArrangement
status token planned | arrived | triaged | in-progress | onleave on-hold | finished completed | cancelled + | entered-in-error | unknown Encounter.status
subject reference The patient or group present at the encounter Encounter.subject
( Group , Patient )
subject-status token The current status of the subject in relation to the Encounter Encounter.subjectStatus
type token Specific type of encounter Encounter.type 5 10 Resources