QI-Core Implementation Guide
4.1.0 - release

Publication Build: This will be filled in by the publication tooling

## Resource Profile: QICoreEncounter

Defining URL: | http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
Version: | 4.1.0
Name: | QICoreEncounter
Status: | Draft as of 8/22/18
Definition: | Profile of Encounter for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.
Publisher: | http://www.hl7.org/Special/committees/cqi/index.cfm
Source Resource: | XML / JSON / Turtle

The official URL for this profile is:

    http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter

Usage

The following example illustrates accessing an inpatient encounter:

    define "Inpatient Encounter":
      [Encounter: "Encounter Inpatient"] EncounterInpatient
        where EncounterInpatient.status = 'finished'
          and "LengthInDays"(EncounterInpatient.period) <= 120
          and EncounterInpatient.period ends during "Measurement Period"

See the patterns page for implementation and usage patterns.

### Examples

Inpatient Admission for Appendicitis

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Text Summary
- Differential Table
- Snapshot Table
- Snapshot Table (Must Support)
- All

This structure is derived from USCoreEncounterProfile

Summary

Must-Support: 20 elements

Structures

This structure refers to these other structures:

- QICorePatient (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient)
- QICoreServiceRequest (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-servicerequest)
- QICorePractitioner (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-practitioner)
- QICoreCondition (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition)
- QICoreProcedure (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-procedure)
- QICoreLocation (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-location)
- QICoreOrganization (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-organization)
- QICoreEncounter (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/StructureDefinition/request-statusReason
- http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure
- http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-diagnosisPresentOnAdmission

This structure is derived from USCoreEncounterProfile

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Encounter |  | 0..* | USCoreEncounterProfile | An interaction during which services are provided to the patient
request-statusReason | S | 0..1 | CodeableConcept | Reason for current status URL: http://hl7.org/fhir/StructureDefinition/request-statusReason Binding: (unbound) (example): Codes identifying the reason for the current state of an event.
qicore-encounter-procedure | S | 0..* | (Complex) | Encounter Procedure Extension URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure
priority | S | 0..1 | CodeableConcept | Indicates the urgency of the encounter Binding: SNOMED CT Priorities Codes (preferred): The priority of the encounter (e.g., Urgent, Normal, etc.)
subject | S | 1..1 | Reference(QICorePatient) | The patient or group present at the encounter
basedOn |  | 0..* | Reference(QICoreServiceRequest) | The ServiceRequest that initiated this encounter
participant | S | 0..* | BackboneElement | List of participants involved in the encounter
individual | S | 0..1 | Reference(QICorePractitioner) | Persons involved in the encounter other than the patient
length | S | 0..1 | Duration | Quantity of time the encounter lasted (less time absent)
diagnosis | S | 0..* | BackboneElement | The list of diagnosis relevant to this encounter
qicore-encounter-diagnosisPresentOnAdmission | S | 0..1 | CodeableConcept | onAdmission URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-diagnosisPresentOnAdmission Binding: QICore Present On Admission Codes (required): Indicator of whether the Encounter diagnosis was present at the time of admission
condition | S | 1..1 | Reference(QICoreCondition | QICoreProcedure) | The diagnosis or procedure relevant to the encounter
use | S | 0..1 | CodeableConcept | Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
rank | S | 0..1 | positiveInt | Ranking of the diagnosis (for each role type)
hospitalization | S | 0..1 | BackboneElement | Details about the admission to a healthcare service
origin |  | 0..1 | Reference(QICoreLocation) | The location/organization from which the patient came before admission
admitSource | S | 0..1 | CodeableConcept | From where patient was admitted (physician referral, transfer)
reAdmission | S | 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
destination |  | 0..1 | Reference(QICoreLocation) | Location/organization to which the patient is discharged
dischargeDisposition | S | 0..1 | CodeableConcept | Category or kind of location after discharge
location | S | 0..* | BackboneElement | List of locations where the patient has been
location | S | 1..1 | Reference(QICoreLocation) | Location the encounter takes place
period | S | 0..1 | Period | Time period during which the patient was present at the location
serviceProvider | S | 0..1 | Reference(QICoreOrganization) | The organization (facility) responsible for this encounter
partOf |  | 0..1 | Reference(QICoreEncounter) | Another Encounter this encounter is part of
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Encounter |  | 0..* | USCoreEncounterProfile | An interaction during which services are provided to the patient
id | Σ | 0..1 | string | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language.
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
request-statusReason | S | 0..1 | CodeableConcept | Reason for current status URL: http://hl7.org/fhir/StructureDefinition/request-statusReason Binding: (unbound) (example): Codes identifying the reason for the current state of an event.
qicore-encounter-procedure | S | 0..* | (Complex) | Encounter Procedure Extension URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | S Σ | 0..* | Identifier | Identifier(s) by which this encounter is known
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
system | S Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | S Σ | 1..1 | string | The value that is unique Example General: 123456
period | Σ | 0..1 | Period | Time period when id is/was valid for use
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
status | ?!S Σ | 1..1 | code | planned | arrived | triaged | in-progress | onleave | finished | cancelled + Binding: EncounterStatus (required): Current state of the encounter.
statusHistory |  | 0..* | BackboneElement | List of past encounter statuses
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
status |  | 1..1 | code | planned | arrived | triaged | in-progress | onleave | finished | cancelled + Binding: EncounterStatus (required): Current state of the encounter.
period |  | 1..1 | Period | The time that the episode was in the specified status
class | S Σ | 1..1 | Coding | Classification of patient encounter Binding: ActEncounterCode (extensible): Classification of the encounter.
classHistory |  | 0..* | BackboneElement | List of past encounter classes
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
class |  | 1..1 | Coding | inpatient | outpatient | ambulatory | emergency + Binding: ActEncounterCode (extensible): Classification of the encounter.
period |  | 1..1 | Period | The time that the episode was in the specified class
type | S Σ | 1..* | CodeableConcept | Specific type of encounter Binding: US Core Encounter Type (extensible): Valueset to describe the Encounter Type
serviceType | Σ | 0..1 | CodeableConcept | Specific type of service Binding: ServiceType (example): Broad categorization of the service that is to be provided.
priority | S | 0..1 | CodeableConcept | Indicates the urgency of the encounter Binding: SNOMED CT Priorities Codes (preferred): The priority of the encounter (e.g., Urgent, Normal, etc.)
subject | S Σ | 1..1 | Reference(QICorePatient) | The patient or group present at the encounter
episodeOfCare | Σ | 0..* | Reference(EpisodeOfCare) | Episode(s) of care that this encounter should be recorded against
basedOn |  | 0..* | Reference(QICoreServiceRequest) | The ServiceRequest that initiated this encounter
participant | S Σ | 0..* | BackboneElement | List of participants involved in the encounter
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S Σ | 0..* | CodeableConcept | Role of participant in encounter Binding: ParticipantType (extensible): Role of participant in encounter.
period | S | 0..1 | Period | Period of time during the encounter that the participant participated
individual | S Σ | 0..1 | Reference(QICorePractitioner) | Persons involved in the encounter other than the patient
appointment | Σ | 0..* | Reference(Appointment) | The appointment that scheduled this encounter
period | S | 0..1 | Period | The start and end time of the encounter
length | S | 0..1 | Duration | Quantity of time the encounter lasted (less time absent)
reasonCode | S Σ | 0..* | CodeableConcept | Coded reason the encounter takes place Binding: EncounterReasonCodes (preferred): Reason why the encounter takes place.
reasonReference | Σ | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | Reason the encounter takes place (reference)
diagnosis | S Σ | 0..* | BackboneElement | The list of diagnosis relevant to this encounter
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
qicore-encounter-diagnosisPresentOnAdmission | S | 0..1 | CodeableConcept | onAdmission URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-diagnosisPresentOnAdmission Binding: QICore Present On Admission Codes (required): Indicator of whether the Encounter diagnosis was present at the time of admission
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
condition | S Σ | 1..1 | Reference(QICoreCondition | QICoreProcedure) | The diagnosis or procedure relevant to the encounter
use | S | 0..1 | CodeableConcept | Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) Binding: DiagnosisRole (preferred): The type of diagnosis this condition represents.
rank | S | 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 | S | 0..1 | BackboneElement | Details about the admission to a healthcare service
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
preAdmissionIdentifier |  | 0..1 | Identifier | Pre-admission identifier
origin |  | 0..1 | Reference(QICoreLocation) | The location/organization from which the patient came before admission
admitSource | S | 0..1 | CodeableConcept | From where patient was admitted (physician referral, transfer) Binding: AdmitSource (preferred): From where the patient was admitted.
reAdmission | S | 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 Binding: hl7VS-re-admissionIndicator (example): The reason for re-admission of this hospitalization encounter.
dietPreference |  | 0..* | CodeableConcept | Diet preferences reported by the patient Binding: Diet (example): Medical, cultural or ethical food preferences to help with catering requirements.
specialCourtesy |  | 0..* | CodeableConcept | Special courtesies (VIP, board member) Binding: SpecialCourtesy (preferred): Special courtesies.
specialArrangement |  | 0..* | CodeableConcept | Wheelchair, translator, stretcher, etc. Binding: SpecialArrangements (preferred): Special arrangements.
destination |  | 0..1 | Reference(QICoreLocation) | Location/organization to which the patient is discharged
dischargeDisposition | S | 0..1 | CodeableConcept | Category or kind of location after discharge Binding: DischargeDisposition (example): Discharge Disposition.
location | S | 0..* | BackboneElement | List of locations where the patient has been
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
location | S | 1..1 | Reference(QICoreLocation) | Location the encounter takes place
status |  | 0..1 | code | planned | active | reserved | completed Binding: EncounterLocationStatus (required): The status of the location.
physicalType |  | 0..1 | CodeableConcept | The physical type of the location (usually the level in the location hierachy - bed room ward etc.) Binding: LocationType (example): Physical form of the location.
period | S | 0..1 | Period | Time period during which the patient was present at the location
serviceProvider | S | 0..1 | Reference(QICoreOrganization) | The organization (facility) responsible for this encounter
partOf |  | 0..1 | Reference(QICoreEncounter) | Another Encounter this encounter is part of
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Encounter |  | 0..* | USCoreEncounterProfile | An interaction during which services are provided to the patient
request-statusReason |  | 0..1 | CodeableConcept | Reason for current status URL: http://hl7.org/fhir/StructureDefinition/request-statusReason Binding: (unbound) (example): Codes identifying the reason for the current state of an event.
qicore-encounter-procedure |  | 0..* | (Complex) | Encounter Procedure Extension URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure
identifier | Σ | 0..* | Identifier | Identifier(s) by which this encounter is known
system | Σ | 1..1 | uri | The namespace for the identifier value
value | Σ | 1..1 | string | The value that is unique
status | ?!Σ | 1..1 | code | planned | arrived | triaged | in-progress | onleave | finished | cancelled + Binding: EncounterStatus (required): Current state of the encounter.
class | Σ | 1..1 | Coding | Classification of patient encounter Binding: ActEncounterCode (extensible): Classification of the encounter.
type | Σ | 1..* | CodeableConcept | Specific type of encounter Binding: US Core Encounter Type (extensible): Valueset to describe the Encounter Type
priority |  | 0..1 | CodeableConcept | Indicates the urgency of the encounter Binding: SNOMED CT Priorities Codes (preferred): The priority of the encounter (e.g., Urgent, Normal, etc.)
subject | Σ | 1..1 | Reference(QICorePatient) | The patient or group present at the encounter
participant | Σ | 0..* | BackboneElement | List of participants involved in the encounter
type | Σ | 0..* | CodeableConcept | Role of participant in encounter Binding: ParticipantType (extensible): Role of participant in encounter.
period |  | 0..1 | Period | Period of time during the encounter that the participant participated
individual | Σ | 0..1 | Reference(QICorePractitioner) | Persons involved in the encounter other than the patient
period |  | 0..1 | Period | The start and end time of the encounter
length |  | 0..1 | Duration | Quantity of time the encounter lasted (less time absent)
reasonCode | Σ | 0..* | CodeableConcept | Coded reason the encounter takes place Binding: EncounterReasonCodes (preferred): Reason why the encounter takes place.
diagnosis | Σ | 0..* | BackboneElement | The list of diagnosis relevant to this encounter
qicore-encounter-diagnosisPresentOnAdmission |  | 0..1 | CodeableConcept | onAdmission URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-diagnosisPresentOnAdmission Binding: QICore Present On Admission Codes (required): Indicator of whether the Encounter diagnosis was present at the time of admission
condition | Σ | 1..1 | Reference(QICoreCondition | QICoreProcedure) | The diagnosis or procedure relevant to the encounter
use |  | 0..1 | CodeableConcept | Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) Binding: DiagnosisRole (preferred): The type of diagnosis this condition represents.
rank |  | 0..1 | positiveInt | Ranking of the diagnosis (for each role type)
hospitalization |  | 0..1 | BackboneElement | Details about the admission to a healthcare service
admitSource |  | 0..1 | CodeableConcept | From where patient was admitted (physician referral, transfer) Binding: AdmitSource (preferred): From where the patient was admitted.
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 Binding: hl7VS-re-admissionIndicator (example): The reason for re-admission of this hospitalization encounter.
dischargeDisposition |  | 0..1 | CodeableConcept | Category or kind of location after discharge Binding: DischargeDisposition (example): Discharge Disposition.
location |  | 0..* | BackboneElement | List of locations where the patient has been
location |  | 1..1 | Reference(QICoreLocation) | Location the encounter takes place
period |  | 0..1 | Period | Time period during which the patient was present at the location
serviceProvider |  | 0..1 | Reference(QICoreOrganization) | The organization (facility) responsible for this encounter
Documentation for this format

This structure is derived from USCoreEncounterProfile

Summary

Must-Support: 20 elements

Structures

This structure refers to these other structures:

- QICorePatient (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient)
- QICoreServiceRequest (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-servicerequest)
- QICorePractitioner (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-practitioner)
- QICoreCondition (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition)
- QICoreProcedure (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-procedure)
- QICoreLocation (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-location)
- QICoreOrganization (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-organization)
- QICoreEncounter (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/StructureDefinition/request-statusReason
- http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure
- http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-diagnosisPresentOnAdmission

Differential View

This structure is derived from USCoreEncounterProfile

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Encounter |  | 0..* | USCoreEncounterProfile | An interaction during which services are provided to the patient
request-statusReason | S | 0..1 | CodeableConcept | Reason for current status URL: http://hl7.org/fhir/StructureDefinition/request-statusReason Binding: (unbound) (example): Codes identifying the reason for the current state of an event.
qicore-encounter-procedure | S | 0..* | (Complex) | Encounter Procedure Extension URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure
priority | S | 0..1 | CodeableConcept | Indicates the urgency of the encounter Binding: SNOMED CT Priorities Codes (preferred): The priority of the encounter (e.g., Urgent, Normal, etc.)
subject | S | 1..1 | Reference(QICorePatient) | The patient or group present at the encounter
basedOn |  | 0..* | Reference(QICoreServiceRequest) | The ServiceRequest that initiated this encounter
participant | S | 0..* | BackboneElement | List of participants involved in the encounter
individual | S | 0..1 | Reference(QICorePractitioner) | Persons involved in the encounter other than the patient
length | S | 0..1 | Duration | Quantity of time the encounter lasted (less time absent)
diagnosis | S | 0..* | BackboneElement | The list of diagnosis relevant to this encounter
qicore-encounter-diagnosisPresentOnAdmission | S | 0..1 | CodeableConcept | onAdmission URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-diagnosisPresentOnAdmission Binding: QICore Present On Admission Codes (required): Indicator of whether the Encounter diagnosis was present at the time of admission
condition | S | 1..1 | Reference(QICoreCondition | QICoreProcedure) | The diagnosis or procedure relevant to the encounter
use | S | 0..1 | CodeableConcept | Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
rank | S | 0..1 | positiveInt | Ranking of the diagnosis (for each role type)
hospitalization | S | 0..1 | BackboneElement | Details about the admission to a healthcare service
origin |  | 0..1 | Reference(QICoreLocation) | The location/organization from which the patient came before admission
admitSource | S | 0..1 | CodeableConcept | From where patient was admitted (physician referral, transfer)
reAdmission | S | 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
destination |  | 0..1 | Reference(QICoreLocation) | Location/organization to which the patient is discharged
dischargeDisposition | S | 0..1 | CodeableConcept | Category or kind of location after discharge
location | S | 0..* | BackboneElement | List of locations where the patient has been
location | S | 1..1 | Reference(QICoreLocation) | Location the encounter takes place
period | S | 0..1 | Period | Time period during which the patient was present at the location
serviceProvider | S | 0..1 | Reference(QICoreOrganization) | The organization (facility) responsible for this encounter
partOf |  | 0..1 | Reference(QICoreEncounter) | Another Encounter this encounter is part of
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Encounter |  | 0..* | USCoreEncounterProfile | An interaction during which services are provided to the patient
id | Σ | 0..1 | string | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language.
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
request-statusReason | S | 0..1 | CodeableConcept | Reason for current status URL: http://hl7.org/fhir/StructureDefinition/request-statusReason Binding: (unbound) (example): Codes identifying the reason for the current state of an event.
qicore-encounter-procedure | S | 0..* | (Complex) | Encounter Procedure Extension URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | S Σ | 0..* | Identifier | Identifier(s) by which this encounter is known
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
system | S Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | S Σ | 1..1 | string | The value that is unique Example General: 123456
period | Σ | 0..1 | Period | Time period when id is/was valid for use
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text)
status | ?!S Σ | 1..1 | code | planned | arrived | triaged | in-progress | onleave | finished | cancelled + Binding: EncounterStatus (required): Current state of the encounter.
statusHistory |  | 0..* | BackboneElement | List of past encounter statuses
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
status |  | 1..1 | code | planned | arrived | triaged | in-progress | onleave | finished | cancelled + Binding: EncounterStatus (required): Current state of the encounter.
period |  | 1..1 | Period | The time that the episode was in the specified status
class | S Σ | 1..1 | Coding | Classification of patient encounter Binding: ActEncounterCode (extensible): Classification of the encounter.
classHistory |  | 0..* | BackboneElement | List of past encounter classes
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
class |  | 1..1 | Coding | inpatient | outpatient | ambulatory | emergency + Binding: ActEncounterCode (extensible): Classification of the encounter.
period |  | 1..1 | Period | The time that the episode was in the specified class
type | S Σ | 1..* | CodeableConcept | Specific type of encounter Binding: US Core Encounter Type (extensible): Valueset to describe the Encounter Type
serviceType | Σ | 0..1 | CodeableConcept | Specific type of service Binding: ServiceType (example): Broad categorization of the service that is to be provided.
priority | S | 0..1 | CodeableConcept | Indicates the urgency of the encounter Binding: SNOMED CT Priorities Codes (preferred): The priority of the encounter (e.g., Urgent, Normal, etc.)
subject | S Σ | 1..1 | Reference(QICorePatient) | The patient or group present at the encounter
episodeOfCare | Σ | 0..* | Reference(EpisodeOfCare) | Episode(s) of care that this encounter should be recorded against
basedOn |  | 0..* | Reference(QICoreServiceRequest) | The ServiceRequest that initiated this encounter
participant | S Σ | 0..* | BackboneElement | List of participants involved in the encounter
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S Σ | 0..* | CodeableConcept | Role of participant in encounter Binding: ParticipantType (extensible): Role of participant in encounter.
period | S | 0..1 | Period | Period of time during the encounter that the participant participated
individual | S Σ | 0..1 | Reference(QICorePractitioner) | Persons involved in the encounter other than the patient
appointment | Σ | 0..* | Reference(Appointment) | The appointment that scheduled this encounter
period | S | 0..1 | Period | The start and end time of the encounter
length | S | 0..1 | Duration | Quantity of time the encounter lasted (less time absent)
reasonCode | S Σ | 0..* | CodeableConcept | Coded reason the encounter takes place Binding: EncounterReasonCodes (preferred): Reason why the encounter takes place.
reasonReference | Σ | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | Reason the encounter takes place (reference)
diagnosis | S Σ | 0..* | BackboneElement | The list of diagnosis relevant to this encounter
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
qicore-encounter-diagnosisPresentOnAdmission | S | 0..1 | CodeableConcept | onAdmission URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-diagnosisPresentOnAdmission Binding: QICore Present On Admission Codes (required): Indicator of whether the Encounter diagnosis was present at the time of admission
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
condition | S Σ | 1..1 | Reference(QICoreCondition | QICoreProcedure) | The diagnosis or procedure relevant to the encounter
use | S | 0..1 | CodeableConcept | Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …) Binding: DiagnosisRole (preferred): The type of diagnosis this condition represents.
rank | S | 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 | S | 0..1 | BackboneElement | Details about the admission to a healthcare service
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
preAdmissionIdentifier |  | 0..1 | Identifier | Pre-admission identifier
origin |  | 0..1 | Reference(QICoreLocation) | The location/organization from which the patient came before admission
admitSource | S | 0..1 | CodeableConcept | From where patient was admitted (physician referral, transfer) Binding: AdmitSource (preferred): From where the patient was admitted.
reAdmission | S | 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 Binding: hl7VS-re-admissionIndicator (example): The reason for re-admission of this hospitalization encounter.
dietPreference |  | 0..* | CodeableConcept | Diet preferences reported by the patient Binding: Diet (example): Medical, cultural or ethical food preferences to help with catering requirements.
specialCourtesy |  | 0..* | CodeableConcept | Special courtesies (VIP, board member) Binding: SpecialCourtesy (preferred): Special courtesies.
specialArrangement |  | 0..* | CodeableConcept | Wheelchair, translator, stretcher, etc. Binding: SpecialArrangements (preferred): Special arrangements.
destination |  | 0..1 | Reference(QICoreLocation) | Location/organization to which the patient is discharged
dischargeDisposition | S | 0..1 | CodeableConcept | Category or kind of location after discharge Binding: DischargeDisposition (example): Discharge Disposition.
location | S | 0..* | BackboneElement | List of locations where the patient has been
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
location | S | 1..1 | Reference(QICoreLocation) | Location the encounter takes place
status |  | 0..1 | code | planned | active | reserved | completed Binding: EncounterLocationStatus (required): The status of the location.
physicalType |  | 0..1 | CodeableConcept | The physical type of the location (usually the level in the location hierachy - bed room ward etc.) Binding: LocationType (example): Physical form of the location.
period | S | 0..1 | Period | Time period during which the patient was present at the location
serviceProvider | S | 0..1 | Reference(QICoreOrganization) | The organization (facility) responsible for this encounter
partOf |  | 0..1 | Reference(QICoreEncounter) | Another Encounter this encounter is part of
Documentation for this format

Other representations of profile: CSV, Excel, Schematron

#### Terminology Bindings

Path | Conformance | ValueSet
Encounter.language | preferred | CommonLanguages Max Binding: AllLanguages
Encounter.identifier.use | required | IdentifierUse
Encounter.identifier.type | extensible | Identifier Type Codes
Encounter.status | required | EncounterStatus
Encounter.statusHistory.status | required | EncounterStatus
Encounter.class | extensible | ActEncounterCode
Encounter.classHistory.class | extensible | ActEncounterCode
Encounter.type | extensible | USCoreEncounterType
Encounter.serviceType | example | ServiceType
Encounter.priority | preferred | QICorePriority
Encounter.participant.type | extensible | ParticipantType
Encounter.reasonCode | preferred | EncounterReasonCodes
Encounter.diagnosis.use | preferred | DiagnosisRole
Encounter.hospitalization.admitSource | preferred | AdmitSource
Encounter.hospitalization.reAdmission | example | Hl7VSReAdmissionIndicator
Encounter.hospitalization.dietPreference | example | Diet
Encounter.hospitalization.specialCourtesy | preferred | SpecialCourtesy
Encounter.hospitalization.specialArrangement | preferred | SpecialArrangements
Encounter.hospitalization.dischargeDisposition | example | DischargeDisposition
Encounter.location.status | required | EncounterLocationStatus
Encounter.location.physicalType | example | LocationType

#### Constraints

Id | Grade | Path | Details | Requirements
dom-2 | error | Encounter | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | Encounter | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() |
dom-4 | error | Encounter | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() |
dom-5 | error | Encounter | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | Best Practice | Encounter | A resource should have narrative for robust management : text.`div`.exists() |
ele-1 | error | Encounter.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.extension:statusReason | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.extension:statusReason | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.extension:procedure | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.extension:procedure | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.identifier.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.identifier.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.identifier.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.identifier.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.identifier.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.identifier.value | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.identifier.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.identifier.assigner | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.statusHistory | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.statusHistory.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.statusHistory.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.statusHistory.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.statusHistory.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.statusHistory.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.statusHistory.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.class | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.classHistory | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.classHistory.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.classHistory.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.classHistory.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.classHistory.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.classHistory.class | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.classHistory.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.serviceType | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.priority | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.subject | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.episodeOfCare | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.basedOn | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.participant | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.participant.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.participant.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.participant.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.participant.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.participant.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.participant.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.participant.individual | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.appointment | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.length | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.reasonCode | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.reasonReference | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.diagnosis | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.diagnosis.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.diagnosis.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.diagnosis.extension:diagnosisPresentOnAdmission | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.diagnosis.extension:diagnosisPresentOnAdmission | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.diagnosis.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.diagnosis.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.diagnosis.condition | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.diagnosis.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.diagnosis.rank | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.account | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.hospitalization.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.hospitalization.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.hospitalization.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.hospitalization.preAdmissionIdentifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization.origin | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization.admitSource | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization.reAdmission | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization.dietPreference | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization.specialCourtesy | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization.specialArrangement | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization.destination | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.hospitalization.dischargeDisposition | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.location | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.location.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.location.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.location.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Encounter.location.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Encounter.location.location | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.location.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.location.physicalType | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.location.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.serviceProvider | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Encounter.partOf | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |