FHIR Release 3 (STU)

This page is part of the FHIR Specification (v3.0.2: STU 3). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2

8.11 Resource Encounter - Content

Patient Administration Work GroupMaturity Level: 2 Trial UseCompartments: Encounter, Patient, Practitioner, RelatedPerson

An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.

A patient encounter is further characterized by the setting in which it takes place. Amongst them are ambulatory, emergency, home health, inpatient and virtual encounters. An Encounter encompasses the lifecycle from pre-admission, the actual encounter (for ambulatory encounters), and admission, stay and discharge (for inpatient encounters). During the encounter the patient may move from practitioner to practitioner and location to location.

Because of the broad scope of Encounter, not all elements will be relevant in all settings. For this reason, admission/discharge related information is kept in a separate Hospitalization component within Encounter. The class element is used to distinguish between these settings, which will guide further validation and application of business rules.

There is also substantial variance from organization to organization (and between jurisdictions and countries) on which business events translate to the start of a new Encounter, or what level of aggregation is used for Encounter. For example, each single visit of a practitioner during a hospitalization may lead to a new instance of Encounter, but depending on local practice and the systems involved, it may well be that this is aggregated to a single instance for a whole hospitalization. Even more aggregation may occur where jurisdictions introduce groups of Encounters for financial or other reasons. Encounters can be aggregated or grouped under other Encounters using the partOf element. See below for examples.

Encounter instances may exist before the actual encounter takes place to convey pre-admission information, including using Encounters elements to reflect the planned start date or planned encounter locations. In this case the status element is set to 'planned'.

The Hospitalization component is intended to store the extended information relating to a hospitalization event. It is always expected to be the same period as the encounter itself. Where the period is different, another encounter instance should be used to capture this information as a partOf this encounter instance.

The Procedure and encounter have references to each other, and these should be to different procedures; one for the procedure that was performed during the encounter (stored in Procedure.encounter), and another for cases where an encounter is a result of another procedure (stored in Encounter.indication) such as a followup encounter to resolve complications from an earlier procedure.

During the life-cycle of an encounter it will pass through many statuses. Typically these are in order or the organization's workflow: planned, in-progress, finished/cancelled.
This status information is often used for other things, and often an analysis of the status history is required. This could be done by scanning through all the versions of the encounter and then checking the period of each, and doing some form of post processing. To ease the burden of this (or where a system doesn't support resource histories) a status history component is included.

There is no direct indication purely by the status field as to whether an encounter is considered "admitted".
The context of the encounter and business practices/policies/workflows/types can influence this definition. (e.g., acute care facility, aged care center, outpatient clinic, emergency department, community based clinic).
Statuses of "arrived", "triaged" or "in progress" could be considered the start of the admission, and also have the presence of the hospitalization sub-component entered.

The "on leave" status may or may not be a part of the admission, for example if the patient was permitted to go home for a weekend or some other form of external event.
The location is also likely to be filled in with a location status of "present".
For other examples such as an outpatient visit (day procedure - colonoscopy), the patient could also be considered to be admitted, hence the encounter doesn't have a fixed definition of admitted. At a minimum, we do believe that a patient IS admitted when the status is in-progress.

The Encounter resource is not to be used to store appointment information, the Appointment resource is intended to be used for that. Note that in many systems outpatient encounters (which are in scope for Encounter) and Appointment are used concurrently. In FHIR, Appointment is used for establishing a date for the encounter, while Encounter is applicable to information about the actual Encounter, i.e., the patient showing up.
As such, an encounter in the "planned" status is not identical to the appointment that scheduled it, but it is the encounter prior to its actual occurrence, with the expectation that encounter will be updated as it progresses to completion. Patient arrival at a location does not necessarily mean the start of the encounter (e.g. a patient arrives an hour earlier than he is actually seen by a practitioner).

An appointment is normally used for the planning stage of an appointment, searching, locating an available time, then making the appointment. Once this process is completed and the appointment is about to start, then the appointment will be marked as fulfilled, and linked to the newly created encounter.
This new encounter may start in an "arrived" status when they are admitted at a location of the facility, and then will move to the ward where another part-of encounter may begin.

Communication resources are used for a simultaneous interaction between a practitioner and a patient where there is no direct contact. Examples include a phone message, or transmission of some correspondence documentation.
There is no duration recorded for a communication resource, but it could contain sent and received times.

Standard Extension: Associated Encounter
This extension should be used to reference an encounter where there is no property that already defines this association on the resource.

This resource is referenced by CarePlan, CareTeam, ChargeItem, Claim, ClinicalImpression, Communication, CommunicationRequest, Composition, Condition, DeviceRequest, DiagnosticReport, DocumentReference, ExplanationOfBenefit, Flag, GuidanceResponse, ImagingStudy, Immunization, List, Media, MedicationAdministration, MedicationDispense, MedicationRequest, MedicationStatement, NutritionOrder, Observation, Procedure, ProcedureRequest, QuestionnaireResponse, ReferralRequest, RequestGroup, RiskAssessment, Task and VisionPrescription

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter DomainResourceAn interaction during which services are provided to the patient
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierIdentifier(s) by which this encounter is known
... status ?!Σ1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
EncounterStatus (Required)
... statusHistory 0..*BackboneElementList of past encounter statuses
.... status 1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
EncounterStatus (Required)
.... period 1..1PeriodThe time that the episode was in the specified status
... class Σ0..1Codinginpatient | outpatient | ambulatory | emergency +
ActEncounterCode (Extensible)
... classHistory 0..*BackboneElementList of past encounter classes
.... class 1..1Codinginpatient | outpatient | ambulatory | emergency +
ActEncounterCode (Extensible)
.... period 1..1PeriodThe time that the episode was in the specified class
... type Σ0..*CodeableConceptSpecific type of encounter
EncounterType (Example)
... priority 0..1CodeableConceptIndicates the urgency of the encounter
v3 Code System ActPriority (Example)
... subject Σ0..1Reference(Patient | Group)The patient ro group present at the encounter
... episodeOfCare Σ0..*Reference(EpisodeOfCare)Episode(s) of care that this encounter should be recorded against
... incomingReferral 0..*Reference(ReferralRequest)The ReferralRequest that initiated this encounter
... participant Σ0..*BackboneElementList of participants involved in the encounter
.... type Σ0..*CodeableConceptRole of participant in encounter
ParticipantType (Extensible)
.... period 0..1PeriodPeriod of time during the encounter that the participant participated
.... individual Σ0..1Reference(Practitioner | RelatedPerson)Persons involved in the encounter other than the patient
... appointment Σ0..1Reference(Appointment)The appointment that scheduled this encounter
... period 0..1PeriodThe start and end time of the encounter
... length 0..1DurationQuantity of time the encounter lasted (less time absent)
... reason Σ0..*CodeableConceptReason the encounter takes place (code)
Encounter Reason Codes (Preferred)
... diagnosis Σ0..*BackboneElementThe list of diagnosis relevant to this encounter
.... condition 1..1Reference(Condition | Procedure)Reason the encounter takes place (resource)
.... role 0..1CodeableConceptRole that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
DiagnosisRole (Preferred)
.... rank 0..1positiveIntRanking of the diagnosis (for each role type)
... account 0..*Reference(Account)The set of accounts that may be used for billing for this Encounter
... hospitalization 0..1BackboneElementDetails about the admission to a healthcare service
.... preAdmissionIdentifier 0..1IdentifierPre-admission identifier
.... origin 0..1Reference(Location)The location from which the patient came before admission
.... admitSource 0..1CodeableConceptFrom where patient was admitted (physician referral, transfer)
AdmitSource (Preferred)
.... reAdmission 0..1CodeableConceptThe type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission
v2 Re-Admission Indicator (Example)
.... dietPreference 0..*CodeableConceptDiet preferences reported by the patient
Diet (Example)
.... specialCourtesy 0..*CodeableConceptSpecial courtesies (VIP, board member)
SpecialCourtesy (Preferred)
.... specialArrangement 0..*CodeableConceptWheelchair, translator, stretcher, etc.
SpecialArrangements (Preferred)
.... destination 0..1Reference(Location)Location to which the patient is discharged
.... dischargeDisposition 0..1CodeableConceptCategory or kind of location after discharge
DischargeDisposition (Example)
... location 0..*BackboneElementList of locations where the patient has been
.... location 1..1Reference(Location)Location the encounter takes place
.... status 0..1codeplanned | active | reserved | completed
EncounterLocationStatus (Required)
.... period 0..1PeriodTime period during which the patient was present at the location
... serviceProvider 0..1Reference(Organization)The custodian organization of this Encounter record
... partOf 0..1Reference(Encounter)Another Encounter this encounter is part of

doco Documentation for this format

UML Diagram (Legend)

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>
 <status value="[code]"/><!-- 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + -->
 <statusHistory>  <!-- 0..* List of past encounter statuses -->
  <status value="[code]"/><!-- 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + -->
  <period><!-- 1..1 Period The time that the episode was in the specified status --></period>
 </statusHistory>
 <class><!-- 0..1 Coding inpatient | outpatient | ambulatory | emergency + --></class>
 <classHistory>  <!-- 0..* List of past encounter classes -->
  <class><!-- 1..1 Coding inpatient | outpatient | ambulatory | emergency + --></class>
  <period><!-- 1..1 Period The time that the episode was in the specified class --></period>
 </classHistory>
 <type><!-- 0..* CodeableConcept Specific type of encounter --></type>
 <priority><!-- 0..1 CodeableConcept Indicates the urgency of the encounter --></priority>
 <subject><!-- 0..1 Reference(Patient|Group) The patient ro group present at the encounter --></subject>
 <episodeOfCare><!-- 0..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against --></episodeOfCare>
 <incomingReferral><!-- 0..* Reference(ReferralRequest) The ReferralRequest that initiated this encounter --></incomingReferral>
 <participant>  <!-- 0..* List of participants involved in the encounter -->
  <type><!-- 0..* CodeableConcept Role of participant in encounter --></type>
  <period><!-- 0..1 Period Period of time during the encounter that the participant participated --></period>
  <individual><!-- 0..1 Reference(Practitioner|RelatedPerson) Persons involved in the encounter other than the patient --></individual>
 </participant>
 <appointment><!-- 0..1 Reference(Appointment) The appointment that scheduled this encounter --></appointment>
 <period><!-- 0..1 Period The start and end time of the encounter --></period>
 <length><!-- 0..1 Duration Quantity of time the encounter lasted (less time absent) --></length>
 <reason><!-- 0..* CodeableConcept Reason the encounter takes place (code) --></reason>
 <diagnosis>  <!-- 0..* The list of diagnosis relevant to this encounter -->
  <condition><!-- 1..1 Reference(Condition|Procedure) Reason the encounter takes place (resource) --></condition>
  <role><!-- 0..1 CodeableConcept Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) --></role>
  <rank value="[positiveInt]"/><!-- 0..1 Ranking of the diagnosis (for each role type) -->
 </diagnosis>
 <account><!-- 0..* Reference(Account) The set of accounts that may be used for billing for this Encounter --></account>
 <hospitalization>  <!-- 0..1 Details about the admission to a healthcare service -->
  <preAdmissionIdentifier><!-- 0..1 Identifier Pre-admission identifier --></preAdmissionIdentifier>
  <origin><!-- 0..1 Reference(Location) The location from which the patient came before admission --></origin>
  <admitSource><!-- 0..1 CodeableConcept From where patient was admitted (physician referral, transfer) --></admitSource>
  <reAdmission><!-- 0..1 CodeableConcept The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission --></reAdmission>
  <dietPreference><!-- 0..* CodeableConcept Diet preferences reported by the patient --></dietPreference>
  <specialCourtesy><!-- 0..* CodeableConcept Special courtesies (VIP, board member) --></specialCourtesy>
  <specialArrangement><!-- 0..* CodeableConcept Wheelchair, translator, stretcher, etc. --></specialArrangement>
  <destination><!-- 0..1 Reference(Location) Location to which the patient is discharged --></destination>
  <dischargeDisposition><!-- 0..1 CodeableConcept Category or kind of location after discharge --></dischargeDisposition>
 </hospitalization>
 <location>  <!-- 0..* List of locations where the patient has been -->
  <location><!-- 1..1 Reference(Location) Location the encounter takes place --></location>
  <status value="[code]"/><!-- 0..1 planned | active | reserved | completed -->
  <period><!-- 0..1 Period Time period during which the patient was present at the location --></period>
 </location>
 <serviceProvider><!-- 0..1 Reference(Organization) The custodian organization of this Encounter record --></serviceProvider>
 <partOf><!-- 0..1 Reference(Encounter) Another Encounter this encounter is part of --></partOf>
</Encounter>

JSON Template

{doco
  "resourceType" : "Encounter",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Identifier(s) by which this encounter is known
  "status" : "<code>", // R!  planned | arrived | triaged | in-progress | onleave | finished | cancelled +
  "statusHistory" : [{ // List of past encounter statuses
    "status" : "<code>", // R!  planned | arrived | triaged | in-progress | onleave | finished | cancelled +
    "period" : { Period } // R!  The time that the episode was in the specified status
  }],
  "class" : { Coding }, // inpatient | outpatient | ambulatory | emergency +
  "classHistory" : [{ // List of past encounter classes
    "class" : { Coding }, // R!  inpatient | outpatient | ambulatory | emergency +
    "period" : { Period } // R!  The time that the episode was in the specified class
  }],
  "type" : [{ CodeableConcept }], // Specific type of encounter
  "priority" : { CodeableConcept }, // Indicates the urgency of the encounter
  "subject" : { Reference(Patient|Group) }, // The patient ro group present at the encounter
  "episodeOfCare" : [{ Reference(EpisodeOfCare) }], // Episode(s) of care that this encounter should be recorded against
  "incomingReferral" : [{ Reference(ReferralRequest) }], // The ReferralRequest that initiated this encounter
  "participant" : [{ // List of participants involved in the encounter
    "type" : [{ CodeableConcept }], // Role of participant in encounter
    "period" : { Period }, // Period of time during the encounter that the participant participated
    "individual" : { Reference(Practitioner|RelatedPerson) } // Persons involved in the encounter other than the patient
  }],
  "appointment" : { Reference(Appointment) }, // The appointment that scheduled this encounter
  "period" : { Period }, // The start and end time of the encounter
  "length" : { Duration }, // Quantity of time the encounter lasted (less time absent)
  "reason" : [{ CodeableConcept }], // Reason the encounter takes place (code)
  "diagnosis" : [{ // The list of diagnosis relevant to this encounter
    "condition" : { Reference(Condition|Procedure) }, // R!  Reason the encounter takes place (resource)
    "role" : { CodeableConcept }, // Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
    "rank" : "<positiveInt>" // Ranking of the diagnosis (for each role type)
  }],
  "account" : [{ Reference(Account) }], // The set of accounts that may be used for billing for this Encounter
  "hospitalization" : { // Details about the admission to a healthcare service
    "preAdmissionIdentifier" : { Identifier }, // Pre-admission identifier
    "origin" : { Reference(Location) }, // The location from which the patient came before admission
    "admitSource" : { CodeableConcept }, // From where patient was admitted (physician referral, transfer)
    "reAdmission" : { CodeableConcept }, // The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission
    "dietPreference" : [{ CodeableConcept }], // Diet preferences reported by the patient
    "specialCourtesy" : [{ CodeableConcept }], // Special courtesies (VIP, board member)
    "specialArrangement" : [{ CodeableConcept }], // Wheelchair, translator, stretcher, etc.
    "destination" : { Reference(Location) }, // Location 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
    "period" : { Period } // Time period during which the patient was present at the location
  }],
  "serviceProvider" : { Reference(Organization) }, // The custodian organization of this Encounter record
  "partOf" : { Reference(Encounter) } // Another Encounter this encounter is part of
}

Turtle Template

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


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

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:Encounter.identifier [ Identifier ], ... ; # 0..* Identifier(s) by which this encounter is known
  fhir:Encounter.status [ code ]; # 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled +
  fhir:Encounter.statusHistory [ # 0..* List of past encounter statuses
    fhir:Encounter.statusHistory.status [ code ]; # 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled +
    fhir:Encounter.statusHistory.period [ Period ]; # 1..1 The time that the episode was in the specified status
  ], ...;
  fhir:Encounter.class [ Coding ]; # 0..1 inpatient | outpatient | ambulatory | emergency +
  fhir:Encounter.classHistory [ # 0..* List of past encounter classes
    fhir:Encounter.classHistory.class [ Coding ]; # 1..1 inpatient | outpatient | ambulatory | emergency +
    fhir:Encounter.classHistory.period [ Period ]; # 1..1 The time that the episode was in the specified class
  ], ...;
  fhir:Encounter.type [ CodeableConcept ], ... ; # 0..* Specific type of encounter
  fhir:Encounter.priority [ CodeableConcept ]; # 0..1 Indicates the urgency of the encounter
  fhir:Encounter.subject [ Reference(Patient|Group) ]; # 0..1 The patient ro group present at the encounter
  fhir:Encounter.episodeOfCare [ Reference(EpisodeOfCare) ], ... ; # 0..* Episode(s) of care that this encounter should be recorded against
  fhir:Encounter.incomingReferral [ Reference(ReferralRequest) ], ... ; # 0..* The ReferralRequest that initiated this encounter
  fhir:Encounter.participant [ # 0..* List of participants involved in the encounter
    fhir:Encounter.participant.type [ CodeableConcept ], ... ; # 0..* Role of participant in encounter
    fhir:Encounter.participant.period [ Period ]; # 0..1 Period of time during the encounter that the participant participated
    fhir:Encounter.participant.individual [ Reference(Practitioner|RelatedPerson) ]; # 0..1 Persons involved in the encounter other than the patient
  ], ...;
  fhir:Encounter.appointment [ Reference(Appointment) ]; # 0..1 The appointment that scheduled this encounter
  fhir:Encounter.period [ Period ]; # 0..1 The start and end time of the encounter
  fhir:Encounter.length [ Duration ]; # 0..1 Quantity of time the encounter lasted (less time absent)
  fhir:Encounter.reason [ CodeableConcept ], ... ; # 0..* Reason the encounter takes place (code)
  fhir:Encounter.diagnosis [ # 0..* The list of diagnosis relevant to this encounter
    fhir:Encounter.diagnosis.condition [ Reference(Condition|Procedure) ]; # 1..1 Reason the encounter takes place (resource)
    fhir:Encounter.diagnosis.role [ CodeableConcept ]; # 0..1 Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
    fhir:Encounter.diagnosis.rank [ positiveInt ]; # 0..1 Ranking of the diagnosis (for each role type)
  ], ...;
  fhir:Encounter.account [ Reference(Account) ], ... ; # 0..* The set of accounts that may be used for billing for this Encounter
  fhir:Encounter.hospitalization [ # 0..1 Details about the admission to a healthcare service
    fhir:Encounter.hospitalization.preAdmissionIdentifier [ Identifier ]; # 0..1 Pre-admission identifier
    fhir:Encounter.hospitalization.origin [ Reference(Location) ]; # 0..1 The location from which the patient came before admission
    fhir:Encounter.hospitalization.admitSource [ CodeableConcept ]; # 0..1 From where patient was admitted (physician referral, transfer)
    fhir:Encounter.hospitalization.reAdmission [ CodeableConcept ]; # 0..1 The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission
    fhir:Encounter.hospitalization.dietPreference [ CodeableConcept ], ... ; # 0..* Diet preferences reported by the patient
    fhir:Encounter.hospitalization.specialCourtesy [ CodeableConcept ], ... ; # 0..* Special courtesies (VIP, board member)
    fhir:Encounter.hospitalization.specialArrangement [ CodeableConcept ], ... ; # 0..* Wheelchair, translator, stretcher, etc.
    fhir:Encounter.hospitalization.destination [ Reference(Location) ]; # 0..1 Location to which the patient is discharged
    fhir:Encounter.hospitalization.dischargeDisposition [ CodeableConcept ]; # 0..1 Category or kind of location after discharge
  ];
  fhir:Encounter.location [ # 0..* List of locations where the patient has been
    fhir:Encounter.location.location [ Reference(Location) ]; # 1..1 Location the encounter takes place
    fhir:Encounter.location.status [ code ]; # 0..1 planned | active | reserved | completed
    fhir:Encounter.location.period [ Period ]; # 0..1 Time period during which the patient was present at the location
  ], ...;
  fhir:Encounter.serviceProvider [ Reference(Organization) ]; # 0..1 The custodian organization of this Encounter record
  fhir:Encounter.partOf [ Reference(Encounter) ]; # 0..1 Another Encounter this encounter is part of
]

Changes since DSTU2

Encounter
Encounter.status
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-state to http://hl7.org/fhir/ValueSet/encounter-status
Encounter.statusHistory.status
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-state to http://hl7.org/fhir/ValueSet/encounter-status
Encounter.class
  • Type changed from code to Coding
  • Change binding strength from required to extensible
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-class to http://hl7.org/fhir/ValueSet/v3-ActEncounterCode
Encounter.classHistory
  • Added Element
Encounter.classHistory.class
  • Added Element
Encounter.classHistory.period
  • Added Element
Encounter.subject
  • Renamed from patient to subject
  • Add Reference(Group)
Encounter.length
  • Type changed from Quantity{http://hl7.org/fhir/StructureDefinition/Duration} to Duration
Encounter.diagnosis
  • Added Element
Encounter.diagnosis.condition
  • Added Element
Encounter.diagnosis.role
  • Added Element
Encounter.diagnosis.rank
  • Added Element
Encounter.account
  • Added Element
Encounter.indication
  • deleted
Encounter.hospitalization.admittingDiagnosis
  • deleted
Encounter.hospitalization.dischargeDiagnosis
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R2 <--> R3 Conversion Maps (status = 10 tests that all execute ok. 1 fail round-trip testing and 2 r3 resources are invalid (2 errors).).

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter DomainResourceAn interaction during which services are provided to the patient
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierIdentifier(s) by which this encounter is known
... status ?!Σ1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
EncounterStatus (Required)
... statusHistory 0..*BackboneElementList of past encounter statuses
.... status 1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
EncounterStatus (Required)
.... period 1..1PeriodThe time that the episode was in the specified status
... class Σ0..1Codinginpatient | outpatient | ambulatory | emergency +
ActEncounterCode (Extensible)
... classHistory 0..*BackboneElementList of past encounter classes
.... class 1..1Codinginpatient | outpatient | ambulatory | emergency +
ActEncounterCode (Extensible)
.... period 1..1PeriodThe time that the episode was in the specified class
... type Σ0..*CodeableConceptSpecific type of encounter
EncounterType (Example)
... priority 0..1CodeableConceptIndicates the urgency of the encounter
v3 Code System ActPriority (Example)
... subject Σ0..1Reference(Patient | Group)The patient ro group present at the encounter
... episodeOfCare Σ0..*Reference(EpisodeOfCare)Episode(s) of care that this encounter should be recorded against
... incomingReferral 0..*Reference(ReferralRequest)The ReferralRequest that initiated this encounter
... participant Σ0..*BackboneElementList of participants involved in the encounter
.... type Σ0..*CodeableConceptRole of participant in encounter
ParticipantType (Extensible)
.... period 0..1PeriodPeriod of time during the encounter that the participant participated
.... individual Σ0..1Reference(Practitioner | RelatedPerson)Persons involved in the encounter other than the patient
... appointment Σ0..1Reference(Appointment)The appointment that scheduled this encounter
... period 0..1PeriodThe start and end time of the encounter
... length 0..1DurationQuantity of time the encounter lasted (less time absent)
... reason Σ0..*CodeableConceptReason the encounter takes place (code)
Encounter Reason Codes (Preferred)
... diagnosis Σ0..*BackboneElementThe list of diagnosis relevant to this encounter
.... condition 1..1Reference(Condition | Procedure)Reason the encounter takes place (resource)
.... role 0..1CodeableConceptRole that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
DiagnosisRole (Preferred)
.... rank 0..1positiveIntRanking of the diagnosis (for each role type)
... account 0..*Reference(Account)The set of accounts that may be used for billing for this Encounter
... hospitalization 0..1BackboneElementDetails about the admission to a healthcare service
.... preAdmissionIdentifier 0..1IdentifierPre-admission identifier
.... origin 0..1Reference(Location)The location from which the patient came before admission
.... admitSource 0..1CodeableConceptFrom where patient was admitted (physician referral, transfer)
AdmitSource (Preferred)
.... reAdmission 0..1CodeableConceptThe type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission
v2 Re-Admission Indicator (Example)
.... dietPreference 0..*CodeableConceptDiet preferences reported by the patient
Diet (Example)
.... specialCourtesy 0..*CodeableConceptSpecial courtesies (VIP, board member)
SpecialCourtesy (Preferred)
.... specialArrangement 0..*CodeableConceptWheelchair, translator, stretcher, etc.
SpecialArrangements (Preferred)
.... destination 0..1Reference(Location)Location to which the patient is discharged
.... dischargeDisposition 0..1CodeableConceptCategory or kind of location after discharge
DischargeDisposition (Example)
... location 0..*BackboneElementList of locations where the patient has been
.... location 1..1Reference(Location)Location the encounter takes place
.... status 0..1codeplanned | active | reserved | completed
EncounterLocationStatus (Required)
.... period 0..1PeriodTime period during which the patient was present at the location
... serviceProvider 0..1Reference(Organization)The custodian organization of this Encounter record
... partOf 0..1Reference(Encounter)Another Encounter this encounter is part of

doco Documentation for this format

UML Diagram (Legend)

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>
 <status value="[code]"/><!-- 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + -->
 <statusHistory>  <!-- 0..* List of past encounter statuses -->
  <status value="[code]"/><!-- 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled + -->
  <period><!-- 1..1 Period The time that the episode was in the specified status --></period>
 </statusHistory>
 <class><!-- 0..1 Coding inpatient | outpatient | ambulatory | emergency + --></class>
 <classHistory>  <!-- 0..* List of past encounter classes -->
  <class><!-- 1..1 Coding inpatient | outpatient | ambulatory | emergency + --></class>
  <period><!-- 1..1 Period The time that the episode was in the specified class --></period>
 </classHistory>
 <type><!-- 0..* CodeableConcept Specific type of encounter --></type>
 <priority><!-- 0..1 CodeableConcept Indicates the urgency of the encounter --></priority>
 <subject><!-- 0..1 Reference(Patient|Group) The patient ro group present at the encounter --></subject>
 <episodeOfCare><!-- 0..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against --></episodeOfCare>
 <incomingReferral><!-- 0..* Reference(ReferralRequest) The ReferralRequest that initiated this encounter --></incomingReferral>
 <participant>  <!-- 0..* List of participants involved in the encounter -->
  <type><!-- 0..* CodeableConcept Role of participant in encounter --></type>
  <period><!-- 0..1 Period Period of time during the encounter that the participant participated --></period>
  <individual><!-- 0..1 Reference(Practitioner|RelatedPerson) Persons involved in the encounter other than the patient --></individual>
 </participant>
 <appointment><!-- 0..1 Reference(Appointment) The appointment that scheduled this encounter --></appointment>
 <period><!-- 0..1 Period The start and end time of the encounter --></period>
 <length><!-- 0..1 Duration Quantity of time the encounter lasted (less time absent) --></length>
 <reason><!-- 0..* CodeableConcept Reason the encounter takes place (code) --></reason>
 <diagnosis>  <!-- 0..* The list of diagnosis relevant to this encounter -->
  <condition><!-- 1..1 Reference(Condition|Procedure) Reason the encounter takes place (resource) --></condition>
  <role><!-- 0..1 CodeableConcept Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) --></role>
  <rank value="[positiveInt]"/><!-- 0..1 Ranking of the diagnosis (for each role type) -->
 </diagnosis>
 <account><!-- 0..* Reference(Account) The set of accounts that may be used for billing for this Encounter --></account>
 <hospitalization>  <!-- 0..1 Details about the admission to a healthcare service -->
  <preAdmissionIdentifier><!-- 0..1 Identifier Pre-admission identifier --></preAdmissionIdentifier>
  <origin><!-- 0..1 Reference(Location) The location from which the patient came before admission --></origin>
  <admitSource><!-- 0..1 CodeableConcept From where patient was admitted (physician referral, transfer) --></admitSource>
  <reAdmission><!-- 0..1 CodeableConcept The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission --></reAdmission>
  <dietPreference><!-- 0..* CodeableConcept Diet preferences reported by the patient --></dietPreference>
  <specialCourtesy><!-- 0..* CodeableConcept Special courtesies (VIP, board member) --></specialCourtesy>
  <specialArrangement><!-- 0..* CodeableConcept Wheelchair, translator, stretcher, etc. --></specialArrangement>
  <destination><!-- 0..1 Reference(Location) Location to which the patient is discharged --></destination>
  <dischargeDisposition><!-- 0..1 CodeableConcept Category or kind of location after discharge --></dischargeDisposition>
 </hospitalization>
 <location>  <!-- 0..* List of locations where the patient has been -->
  <location><!-- 1..1 Reference(Location) Location the encounter takes place --></location>
  <status value="[code]"/><!-- 0..1 planned | active | reserved | completed -->
  <period><!-- 0..1 Period Time period during which the patient was present at the location --></period>
 </location>
 <serviceProvider><!-- 0..1 Reference(Organization) The custodian organization of this Encounter record --></serviceProvider>
 <partOf><!-- 0..1 Reference(Encounter) Another Encounter this encounter is part of --></partOf>
</Encounter>

JSON Template

{doco
  "resourceType" : "Encounter",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Identifier(s) by which this encounter is known
  "status" : "<code>", // R!  planned | arrived | triaged | in-progress | onleave | finished | cancelled +
  "statusHistory" : [{ // List of past encounter statuses
    "status" : "<code>", // R!  planned | arrived | triaged | in-progress | onleave | finished | cancelled +
    "period" : { Period } // R!  The time that the episode was in the specified status
  }],
  "class" : { Coding }, // inpatient | outpatient | ambulatory | emergency +
  "classHistory" : [{ // List of past encounter classes
    "class" : { Coding }, // R!  inpatient | outpatient | ambulatory | emergency +
    "period" : { Period } // R!  The time that the episode was in the specified class
  }],
  "type" : [{ CodeableConcept }], // Specific type of encounter
  "priority" : { CodeableConcept }, // Indicates the urgency of the encounter
  "subject" : { Reference(Patient|Group) }, // The patient ro group present at the encounter
  "episodeOfCare" : [{ Reference(EpisodeOfCare) }], // Episode(s) of care that this encounter should be recorded against
  "incomingReferral" : [{ Reference(ReferralRequest) }], // The ReferralRequest that initiated this encounter
  "participant" : [{ // List of participants involved in the encounter
    "type" : [{ CodeableConcept }], // Role of participant in encounter
    "period" : { Period }, // Period of time during the encounter that the participant participated
    "individual" : { Reference(Practitioner|RelatedPerson) } // Persons involved in the encounter other than the patient
  }],
  "appointment" : { Reference(Appointment) }, // The appointment that scheduled this encounter
  "period" : { Period }, // The start and end time of the encounter
  "length" : { Duration }, // Quantity of time the encounter lasted (less time absent)
  "reason" : [{ CodeableConcept }], // Reason the encounter takes place (code)
  "diagnosis" : [{ // The list of diagnosis relevant to this encounter
    "condition" : { Reference(Condition|Procedure) }, // R!  Reason the encounter takes place (resource)
    "role" : { CodeableConcept }, // Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
    "rank" : "<positiveInt>" // Ranking of the diagnosis (for each role type)
  }],
  "account" : [{ Reference(Account) }], // The set of accounts that may be used for billing for this Encounter
  "hospitalization" : { // Details about the admission to a healthcare service
    "preAdmissionIdentifier" : { Identifier }, // Pre-admission identifier
    "origin" : { Reference(Location) }, // The location from which the patient came before admission
    "admitSource" : { CodeableConcept }, // From where patient was admitted (physician referral, transfer)
    "reAdmission" : { CodeableConcept }, // The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission
    "dietPreference" : [{ CodeableConcept }], // Diet preferences reported by the patient
    "specialCourtesy" : [{ CodeableConcept }], // Special courtesies (VIP, board member)
    "specialArrangement" : [{ CodeableConcept }], // Wheelchair, translator, stretcher, etc.
    "destination" : { Reference(Location) }, // Location 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
    "period" : { Period } // Time period during which the patient was present at the location
  }],
  "serviceProvider" : { Reference(Organization) }, // The custodian organization of this Encounter record
  "partOf" : { Reference(Encounter) } // Another Encounter this encounter is part of
}

Turtle Template

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


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

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:Encounter.identifier [ Identifier ], ... ; # 0..* Identifier(s) by which this encounter is known
  fhir:Encounter.status [ code ]; # 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled +
  fhir:Encounter.statusHistory [ # 0..* List of past encounter statuses
    fhir:Encounter.statusHistory.status [ code ]; # 1..1 planned | arrived | triaged | in-progress | onleave | finished | cancelled +
    fhir:Encounter.statusHistory.period [ Period ]; # 1..1 The time that the episode was in the specified status
  ], ...;
  fhir:Encounter.class [ Coding ]; # 0..1 inpatient | outpatient | ambulatory | emergency +
  fhir:Encounter.classHistory [ # 0..* List of past encounter classes
    fhir:Encounter.classHistory.class [ Coding ]; # 1..1 inpatient | outpatient | ambulatory | emergency +
    fhir:Encounter.classHistory.period [ Period ]; # 1..1 The time that the episode was in the specified class
  ], ...;
  fhir:Encounter.type [ CodeableConcept ], ... ; # 0..* Specific type of encounter
  fhir:Encounter.priority [ CodeableConcept ]; # 0..1 Indicates the urgency of the encounter
  fhir:Encounter.subject [ Reference(Patient|Group) ]; # 0..1 The patient ro group present at the encounter
  fhir:Encounter.episodeOfCare [ Reference(EpisodeOfCare) ], ... ; # 0..* Episode(s) of care that this encounter should be recorded against
  fhir:Encounter.incomingReferral [ Reference(ReferralRequest) ], ... ; # 0..* The ReferralRequest that initiated this encounter
  fhir:Encounter.participant [ # 0..* List of participants involved in the encounter
    fhir:Encounter.participant.type [ CodeableConcept ], ... ; # 0..* Role of participant in encounter
    fhir:Encounter.participant.period [ Period ]; # 0..1 Period of time during the encounter that the participant participated
    fhir:Encounter.participant.individual [ Reference(Practitioner|RelatedPerson) ]; # 0..1 Persons involved in the encounter other than the patient
  ], ...;
  fhir:Encounter.appointment [ Reference(Appointment) ]; # 0..1 The appointment that scheduled this encounter
  fhir:Encounter.period [ Period ]; # 0..1 The start and end time of the encounter
  fhir:Encounter.length [ Duration ]; # 0..1 Quantity of time the encounter lasted (less time absent)
  fhir:Encounter.reason [ CodeableConcept ], ... ; # 0..* Reason the encounter takes place (code)
  fhir:Encounter.diagnosis [ # 0..* The list of diagnosis relevant to this encounter
    fhir:Encounter.diagnosis.condition [ Reference(Condition|Procedure) ]; # 1..1 Reason the encounter takes place (resource)
    fhir:Encounter.diagnosis.role [ CodeableConcept ]; # 0..1 Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
    fhir:Encounter.diagnosis.rank [ positiveInt ]; # 0..1 Ranking of the diagnosis (for each role type)
  ], ...;
  fhir:Encounter.account [ Reference(Account) ], ... ; # 0..* The set of accounts that may be used for billing for this Encounter
  fhir:Encounter.hospitalization [ # 0..1 Details about the admission to a healthcare service
    fhir:Encounter.hospitalization.preAdmissionIdentifier [ Identifier ]; # 0..1 Pre-admission identifier
    fhir:Encounter.hospitalization.origin [ Reference(Location) ]; # 0..1 The location from which the patient came before admission
    fhir:Encounter.hospitalization.admitSource [ CodeableConcept ]; # 0..1 From where patient was admitted (physician referral, transfer)
    fhir:Encounter.hospitalization.reAdmission [ CodeableConcept ]; # 0..1 The type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission
    fhir:Encounter.hospitalization.dietPreference [ CodeableConcept ], ... ; # 0..* Diet preferences reported by the patient
    fhir:Encounter.hospitalization.specialCourtesy [ CodeableConcept ], ... ; # 0..* Special courtesies (VIP, board member)
    fhir:Encounter.hospitalization.specialArrangement [ CodeableConcept ], ... ; # 0..* Wheelchair, translator, stretcher, etc.
    fhir:Encounter.hospitalization.destination [ Reference(Location) ]; # 0..1 Location to which the patient is discharged
    fhir:Encounter.hospitalization.dischargeDisposition [ CodeableConcept ]; # 0..1 Category or kind of location after discharge
  ];
  fhir:Encounter.location [ # 0..* List of locations where the patient has been
    fhir:Encounter.location.location [ Reference(Location) ]; # 1..1 Location the encounter takes place
    fhir:Encounter.location.status [ code ]; # 0..1 planned | active | reserved | completed
    fhir:Encounter.location.period [ Period ]; # 0..1 Time period during which the patient was present at the location
  ], ...;
  fhir:Encounter.serviceProvider [ Reference(Organization) ]; # 0..1 The custodian organization of this Encounter record
  fhir:Encounter.partOf [ Reference(Encounter) ]; # 0..1 Another Encounter this encounter is part of
]

Changes since DSTU2

Encounter
Encounter.status
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-state to http://hl7.org/fhir/ValueSet/encounter-status
Encounter.statusHistory.status
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-state to http://hl7.org/fhir/ValueSet/encounter-status
Encounter.class
  • Type changed from code to Coding
  • Change binding strength from required to extensible
  • Change value set from http://hl7.org/fhir/ValueSet/encounter-class to http://hl7.org/fhir/ValueSet/v3-ActEncounterCode
Encounter.classHistory
  • Added Element
Encounter.classHistory.class
  • Added Element
Encounter.classHistory.period
  • Added Element
Encounter.subject
  • Renamed from patient to subject
  • Add Reference(Group)
Encounter.length
  • Type changed from Quantity{http://hl7.org/fhir/StructureDefinition/Duration} to Duration
Encounter.diagnosis
  • Added Element
Encounter.diagnosis.condition
  • Added Element
Encounter.diagnosis.role
  • Added Element
Encounter.diagnosis.rank
  • Added Element
Encounter.account
  • Added Element
Encounter.indication
  • deleted
Encounter.hospitalization.admittingDiagnosis
  • deleted
Encounter.hospitalization.dischargeDiagnosis
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R2 <--> R3 Conversion Maps (status = 10 tests that all execute ok. 1 fail round-trip testing and 2 r3 resources are invalid (2 errors).).

 

Alternate definitions: Master Definition (XML, JSON), XML Schema/Schematron (for ) + JSON Schema, ShEx (for Turtle)

PathDefinitionTypeReference
Encounter.status
Encounter.statusHistory.status
Current state of the encounterRequiredEncounterStatus
Encounter.class
Encounter.classHistory.class
Classification of the encounterExtensibleActEncounterCode
Encounter.type The type of encounterExampleEncounterType
Encounter.priority Indicates the urgency of the encounter.Examplev3 Code System ActPriority
Encounter.participant.type Role of participant in encounterExtensibleParticipantType
Encounter.reason Reason why the encounter takes place.PreferredEncounter Reason Codes
Encounter.diagnosis.role The type of diagnosis this condition representsPreferredDiagnosisRole
Encounter.hospitalization.admitSource From where the patient was admitted.PreferredAdmitSource
Encounter.hospitalization.reAdmission The reason for re-admission of this hospitalization encounter.Examplev2 Re-Admission Indicator
Encounter.hospitalization.dietPreference Medical, cultural or ethical food preferences to help with catering requirements.ExampleDiet
Encounter.hospitalization.specialCourtesy Special courtesiesPreferredSpecialCourtesy
Encounter.hospitalization.specialArrangement Special arrangementsPreferredSpecialArrangements
Encounter.hospitalization.dischargeDisposition Discharge DispositionExampleDischargeDisposition
Encounter.location.status The status of the location.RequiredEncounterLocationStatus

  • 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 be added.

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. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
appointmentreferenceThe appointment that scheduled this encounterEncounter.appointment
(Appointment)
classtokeninpatient | outpatient | ambulatory | emergency +Encounter.class
datedateA date within the period the Encounter lastedEncounter.period18 Resources
diagnosisreferenceReason the encounter takes place (resource)Encounter.diagnosis.condition
(Condition, Procedure)
episodeofcarereferenceEpisode(s) of care that this encounter should be recorded againstEncounter.episodeOfCare
(EpisodeOfCare)
identifiertokenIdentifier(s) by which this encounter is knownEncounter.identifier26 Resources
incomingreferralreferenceThe ReferralRequest that initiated this encounterEncounter.incomingReferral
(ReferralRequest)
lengthnumberLength of encounter in daysEncounter.length
locationreferenceLocation the encounter takes placeEncounter.location.location
(Location)
location-perioddateTime period during which the patient was present at the locationEncounter.location.period
part-ofreferenceAnother Encounter this encounter is part ofEncounter.partOf
(Encounter)
participantreferencePersons involved in the encounter other than the patientEncounter.participant.individual
(Practitioner, RelatedPerson)
participant-typetokenRole of participant in encounterEncounter.participant.type
patientreferenceThe patient ro group present at the encounterEncounter.subject
(Patient)
31 Resources
practitionerreferencePersons involved in the encounter other than the patientEncounter.participant.individual
(Practitioner)
reasontokenReason the encounter takes place (code)Encounter.reason
service-providerreferenceThe custodian organization of this Encounter recordEncounter.serviceProvider
(Organization)
special-arrangementtokenWheelchair, translator, stretcher, etc.Encounter.hospitalization.specialArrangement
statustokenplanned | arrived | triaged | in-progress | onleave | finished | cancelled +Encounter.status
subjectreferenceThe patient ro group present at the encounterEncounter.subject
(Group, Patient)
typetokenSpecific type of encounterEncounter.type6 Resources
Morty Proxy This is a proxified and sanitized view of the page, visit original site.