Facade Encounter

http://fhir.patientsknowbest.com/structuredefinition/facade-encounter

https://www.hl7.org/fhir/STU3/encounter.html

Overview

An Encounter represents an interaction with the healthcare system, such as an inpatient stay.

Relevant PKB entities

Mappings

FHIR

PKB

Notes

FHIR

PKB

Notes

Resource id

[[Encounter.Encounter ID]]

 

Encounter.extension

Running through each [[Encounter Event]] from oldest to newest, add one "specialty-history" extension as follows for each block of consecutive [[Encounter Event]]s with the same [[Data Point.Specialty]] (where "the same" means an exact, case-sensitive match of the specialty value).

  • extension[0]: Extension

    • url =  "http://fhir.patientsknowbest.com/structuredefinition/specialty-history"

    • extension[0]

      • url = "specialty"

      • valueCoding: Coding

        • code = [[Data Point.Specialty]]

    • extension[1]

      • url = "period"

      • valuePeriod: Period

        • start = [[Encounter Event.Timestamp]] of the oldest encounter event within the block being represented

        • end = [[Encounter Event.Timestamp]] of the oldest encounter event within the block following the one being represented (if present)

 

Encounter.status

"unknown"

 

Encounter.class

  • class: Coding

    • code = [[Encounter Event.Class]] of the most recent [[Encounter Event]] (as given by [[Encounter Event.Timestamp]])

    • system = "http://hl7.org/fhir/v3/ActCode"

[[Encounter Event.Class]] code mappings (PKB  →  FHIR):

  • IN_PATIENT → IMP

  • OUT_PATIENT → AMB

  • AMBULATORY → AMB

  • EMERGENCY → EMER

  • HOME → HH

  • FIELD → FLD

  • DAYTIME → SS

  • VIRTUAL → VR

  • OTHER → omit value

 

Encounter.classHistory

Running through each [[Encounter Event]] from oldest to newest, add one entry to "classHistory" for each block of consecutive [[Encounter Event]]s with the same class value (where the class value is the FHIR value mapped from [[Encounter Event.Class]]). Do not add an entry if the value is OTHER.

  • classHistory: BackboneElement

    • class: Coding

    • period: Period

      • start = [[Encounter Event.Timestamp]] of the oldest encounter event within the block being represented

      • end = [[Encounter Event.Timestamp]] of the oldest encounter event within the block following the one being represented (if present)

 

Encounter.participant

Running through each [[Encounter Event]] from oldest to newest, add one entry to "participant" for each block of consecutive [[Encounter Event]]s with the same [[Encounter Event→External Participant]] (where "the same" means an exact, case-sensitive match of the participant name).

  • participant: BackboneElement

    • type: CodeableConcept

    • period: Period

      • start = [[Encounter Event.Timestamp]] of the oldest encounter event within the block being represented

      • end = [[Encounter Event.Timestamp]] of the oldest encounter event within the block following the one being represented (if present)

    • individual: Reference

      • display = [[Encounter Event→External Participant.Name]]

[[Encounter Event→External Participant.Role]] code mappings (PKB → FHIR):

  • ATTENDER → ATND

  • REFERRER → REF

  • CONSULTANT → CON

 

Encounter.period

  • period: Period

    • start = [[Encounter Event.Timestamp]] of the oldest encounter event

    • end = [[Encounter Event.Timestamp]] of the newest encounter event

 

Encounter.location

Running through each [[Encounter Event]] from oldest to newest, add one entry to "location" for each block of consecutive [[Encounter Event]]s with the same [[Encounter Event->Location]] (where "the same" means an exact, case-sensitive match of the location description).

The location should be added as a contained Location resource to the response...

  • Location.description = [[Encounter Event->Location.Description]]

...and reference from the location list.

  • location: BackboneElement

    • location: Reference

      • reference = a reference to the contained Location resource

    • period: Period

      • start = [[Encounter Event.Timestamp]] of the oldest encounter event within the block being represented

      • end = [[Encounter Event.Timestamp]] of the oldest encounter event within the block following the one being represented (if present)