US Core Implementation Guide STU 2

This page is part of the US Core (v2.0.0: STU2) based on FHIR R3. The current version which supercedes this version is 5.0.1. For a full list of available versions, see the Directory of published versions

StructureDefinition-us-core-encounter

This profile sets minimum expectations for the Encounter resource to record, search and fetch basic encounter information for an individual patient. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile.

Example Usage Scenarios:

The following are example usage scenarios for the US Core Encounter profile:

  • Query for a specific patient encounter
  • Query for recent patient encounters
  • Record or update an encounter
Mandatory Data Elements and Terminology

The following data-elements are mandatory (i.e data MUST be present). These are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.

Each Encounter must have:

  1. a status
  2. an encounter type
  3. a patient

Additionally your system Must Support:

  1. An encounter identifier
  2. Providers involved in the encounter
  3. Where the encounter occurred
  4. When the encounter ocurred
  5. The discharge disposition
  6. Reason for the visit

Profile specific implementation guidance:

  • none

Examples

Formal Views of Profile Content

Description of Profiles, Differentials, and Snapshots.

The official URL for this profile is: http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter

Published on Sun Dec 10 00:00:00 AEDT 2017 as a draft by HL7 US Realm Steering Committee.

This profile builds on Encounter


Complete Summary of the Mandatory Requirements

  1. One status in Encounter.status
  2. A class in Encounter.class from EncounterCode value set.
  3. At least one type in Encounter.type from US Core Encounter Type value set.
  4. One patient reference in Encounter.subject

Summary of the Must Support Requirements

Additionally your system must Support:

  1. One or more Encounter numbers in Encounter.identifier
  2. One or more participants in Encounter.participant
  3. An Encounter.period
  4. One or more reasons in Encounter.reason from EncounterReason value set.
  5. One or more Encounter.diagnosis.condition
  6. A disposition in Encounter.hospitlization.dischargeDisposition from example dischargeDisposition value set.
  7. One or more locations in Encounter.location
NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter I0..*US Core Encounter Profile
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ0..*IdentifierIdentifier(s) by which this encounter is known
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary (If known)
Binding: IdentifierUse (required)
.... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible)
.... system SΣ1..1uriThe namespace for the identifier value
Example General': http://www.acme.com/identifiers/patient or urn:ietf:rfc:3986 if the Identifier.value itself is a full uri
.... value SΣ1..1stringThe value that is unique
Example General': 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!SΣ1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required)
... statusHistory I0..*BackboneElementList of past encounter statuses
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... status 1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required)
.... period 1..1PeriodThe time that the episode was in the specified status
... class SΣ1..1Codinginpatient | outpatient | ambulatory | emergency +
Binding: ActEncounterCode (extensible)
... classHistory I0..*BackboneElementList of past encounter classes
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... class 1..1Codinginpatient | outpatient | ambulatory | emergency +
Binding: ActEncounterCode (extensible)
.... period 1..1PeriodThe time that the episode was in the specified class
... type SΣ1..*CodeableConceptSpecific type of encounter
Binding: US Core Encounter Type (extensible)
... priority 0..1CodeableConceptIndicates the urgency of the encounter
Binding: ActPriority (example)
... subject SΣ1..1Reference(US Core Patient Profile)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 SΣI0..*BackboneElementList of participants involved in the encounter
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... type SΣ0..*CodeableConceptRole of participant in encounter
Binding: ParticipantType (extensible)
.... period S0..1PeriodPeriod of time during the encounter that the participant participated
.... individual SΣ0..1Reference(US Core Practitioner)Persons involved in the encounter other than the patient
... appointment Σ0..1Reference(Appointment)The appointment that scheduled this encounter
... period S0..1PeriodThe start and end time of the encounter
... length 0..1DurationQuantity of time the encounter lasted (less time absent)
... reason SΣ0..*CodeableConceptReason the encounter takes place (code)
Binding: Encounter Reason Codes (preferred)
... diagnosis SΣI0..*BackboneElementThe list of diagnosis relevant to this encounter
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... condition S1..1Reference(US Core Condition Profile | US Core Procedure Profile)Reason the encounter takes place (resource)
.... role 0..1CodeableConceptRole that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
Binding: 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 SI0..1BackboneElementDetails about the admission to a healthcare service
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... 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)
Binding: 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
Binding: v2 Re-Admission Indicator (example)
.... dietPreference 0..*CodeableConceptDiet preferences reported by the patient
Binding: Diet (example)
.... specialCourtesy 0..*CodeableConceptSpecial courtesies (VIP, board member)
Binding: SpecialCourtesy (preferred)
.... specialArrangement 0..*CodeableConceptWheelchair, translator, stretcher, etc.
Binding: SpecialArrangements (preferred)
.... destination 0..1Reference(Location)Location to which the patient is discharged
.... dischargeDisposition S0..1CodeableConceptCategory or kind of location after discharge
Binding: DischargeDisposition (example)
... location SI0..*BackboneElementList of locations where the patient has been
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... location S1..1Reference(US Core Location Profile)Location the encounter takes place
.... status 0..1codeplanned | active | reserved | completed
Binding: 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

Complete Summary of the Mandatory Requirements

  1. One status in Encounter.status
  2. A class in Encounter.class from EncounterCode value set.
  3. At least one type in Encounter.type from US Core Encounter Type value set.
  4. One patient reference in Encounter.subject

Summary of the Must Support Requirements

Additionally your system must Support:

  1. One or more Encounter numbers in Encounter.identifier
  2. One or more participants in Encounter.participant
  3. An Encounter.period
  4. One or more reasons in Encounter.reason from EncounterReason value set.
  5. One or more Encounter.diagnosis.condition
  6. A disposition in Encounter.hospitlization.dischargeDisposition from example dischargeDisposition value set.
  7. One or more locations in Encounter.location

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter I0..*US Core Encounter Profile
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ0..*IdentifierIdentifier(s) by which this encounter is known
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary (If known)
Binding: IdentifierUse (required)
.... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible)
.... system SΣ1..1uriThe namespace for the identifier value
Example General': http://www.acme.com/identifiers/patient or urn:ietf:rfc:3986 if the Identifier.value itself is a full uri
.... value SΣ1..1stringThe value that is unique
Example General': 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!SΣ1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required)
... statusHistory I0..*BackboneElementList of past encounter statuses
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... status 1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required)
.... period 1..1PeriodThe time that the episode was in the specified status
... class SΣ1..1Codinginpatient | outpatient | ambulatory | emergency +
Binding: ActEncounterCode (extensible)
... classHistory I0..*BackboneElementList of past encounter classes
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... class 1..1Codinginpatient | outpatient | ambulatory | emergency +
Binding: ActEncounterCode (extensible)
.... period 1..1PeriodThe time that the episode was in the specified class
... type SΣ1..*CodeableConceptSpecific type of encounter
Binding: US Core Encounter Type (extensible)
... priority 0..1CodeableConceptIndicates the urgency of the encounter
Binding: ActPriority (example)
... subject SΣ1..1Reference(US Core Patient Profile)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 SΣI0..*BackboneElementList of participants involved in the encounter
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... type SΣ0..*CodeableConceptRole of participant in encounter
Binding: ParticipantType (extensible)
.... period S0..1PeriodPeriod of time during the encounter that the participant participated
.... individual SΣ0..1Reference(US Core Practitioner)Persons involved in the encounter other than the patient
... appointment Σ0..1Reference(Appointment)The appointment that scheduled this encounter
... period S0..1PeriodThe start and end time of the encounter
... length 0..1DurationQuantity of time the encounter lasted (less time absent)
... reason SΣ0..*CodeableConceptReason the encounter takes place (code)
Binding: Encounter Reason Codes (preferred)
... diagnosis SΣI0..*BackboneElementThe list of diagnosis relevant to this encounter
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... condition S1..1Reference(US Core Condition Profile | US Core Procedure Profile)Reason the encounter takes place (resource)
.... role 0..1CodeableConceptRole that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
Binding: 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 SI0..1BackboneElementDetails about the admission to a healthcare service
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... 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)
Binding: 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
Binding: v2 Re-Admission Indicator (example)
.... dietPreference 0..*CodeableConceptDiet preferences reported by the patient
Binding: Diet (example)
.... specialCourtesy 0..*CodeableConceptSpecial courtesies (VIP, board member)
Binding: SpecialCourtesy (preferred)
.... specialArrangement 0..*CodeableConceptWheelchair, translator, stretcher, etc.
Binding: SpecialArrangements (preferred)
.... destination 0..1Reference(Location)Location to which the patient is discharged
.... dischargeDisposition S0..1CodeableConceptCategory or kind of location after discharge
Binding: DischargeDisposition (example)
... location SI0..*BackboneElementList of locations where the patient has been
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... location S1..1Reference(US Core Location Profile)Location the encounter takes place
.... status 0..1codeplanned | active | reserved | completed
Binding: 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

Downloads: StructureDefinition: (XML, JSON, CSV), Schema: XML Schematron

 

Quick Start

Below is an overview of the required set of RESTful FHIR interactions - for example, search and read operations - for this profile. See the Conformance requirements for a complete list of supported RESTful interactions for this IG.

GET /Encounter/[id]

Example: GET [base]/Encounter/12354

Support: Mandatory.

Implementation Notes: Fetches a single Encounter.


GET /Encounter?patient=[id]

Example: GET [base]/Encounter?patient=1137192

Support: Mandatory to support search by patient.

Implementation Notes: Search for all Encounters for a patient. Fetches a bundle of all Encounter resources for the specified patient (how to search by reference).


GET [base]/Encounter?patient=[id]&period=[date]

Example: GET [base]/Encounter?patient=2169591&period=ge2016-01-01

Support: Mandatory to support search by date range.

Implementation Notes: Fetches a bundle of all Encounter resources for the specified patient for a given time period. (how to search by reference), and (how to search by date).