DK MedCom HospitalNotification
3.0.1 - Release Denmark flag

DK MedCom HospitalNotification, published by MedCom. This guide is not an authorized publication; it is the continuous build for version 3.0.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/medcomdk/dk-medcom-hospitalnotification/ and changes regularly. See the Directory of published versions

Resource Profile: MedComHospitalNotificationEncounter

Official URL: http://medcomfhir.dk/ig/hospitalnotification/StructureDefinition/medcom-hospitalNotification-encounter Version: 3.0.1
Active as of 2024-10-02 Computable Name: MedComHospitalNotificationEncounter

Encounter derivation that handles hospital notification when a patient is admitted to a hospital. The hospital notification is always send from a hospital. The receiver of the message is the patients home municipalicy. The hospital notification is send for example when patient is admitted, on leave, returned from leave, finished hospital stay.

Scope and usage

This profile is used as the Encounter resource for the HospitalNotification message. The HospitalNotificationEncounter inherits from the MedComCoreEncounter. Besides the references shown on the figure below, the MedComHospitalNotificationEncounter contains an episode of care identifier (Danish: forløbsid), a status describing the status of the encounter e.g., if the patient is onleave and the class of the admission, which can be either inpatient or emergency. Both status and class shall be included in all messages and depending on the status of the encounter, the status and class shall be assigned to different codes. Here you the find the combination of codes.

The HospitalNotification message is sent without patient consent, why only a limited data set is allowed to transmit due to Danish legislation. For this reason, is the HospitalNotificationEncounter profile quite narrow. More information about the legal aspects can be found here.

The figure below shows the references from a MedComHospitalNotificationEncounter.

The MedComHospitalNotificationEncounter references a subject which is a MedComCorePatient and a serviceProvider organization which is a MedComCoreOrganization.

Please refer to the tab "Snapshot Table(Must support)" below for the definition of the required content of a MedComHospitalNotificationEncounter.

Service Provider

The element Encounter.serviceProvider describes the organization or hospital department in charge of the patient's admission. The element references a MedComMessagingOrganization or MedComCoreOrganization, since MedComMessaigingOrganization inherits properties from MedComCoreOrganization.

The sender of a HospitalNotification (MessageHeader.sender) and the serviceProvider (Encounter.serviceProvider) may be the same hospital department, hence be represented referencing the same instance of a Organization resource, which shall be a MedComMessagingOrganization. However, the sender organisation may be a higher-level department (in the SOR register) than the serviceProvider organisation, and in this case they shall be represented referencing two different instances of a Organization resource.

An example of different serviceProvider and sender organisation can be found here. Other examples will have the same organisation as serviceProvider and sender.

Episode of care identifier

The MedComHospitalNotificationEncounter profile requires at least one episode of care identifiers to be included, but allows more than one to be included. The episode of care identifier can be a locally defined UUID for the specific admission/contact or it can be an LPR3 identifier. The identifier is used for linking messages exchanged during a specific message flow. Hence, the episode of care identifier send and received in the initial HospitalNotification message must also be returned in e.g ReportOfAdmission (Danish: Indlæggelsesrapport), ProgressOfCarePlan (Danish: Plejeforløbsplan), CareCommunication (Danish: Korrespondancemeddelelse) etc.

In case only one episode of care identifier is included in the initial HospitalNotification message, either a locally defined UUID for the specific admission/contact or an LPR3 identifier: The following messages exchanged must apply/return this episode of care identifier, regardless of whether it is a locally defined UUID or an LPR3 identifier. If more identifiers are subsequently added, these can be ignored (or returned if possible).

In case more episode of care identifiers are included in the initial HospitalNotification message: The following messages exchanged must return the locally defined UUID for the specific admission/contact. The other identifiers can be ignored (or returned if possible).

System for locally defined episode of care identifiers

When a locally defined identifier for the specific admission/contact is included in a HospitalNotification message, a system for the identifier shall also be included. The system is used to destinguish between the LPR3 identifier and the locally defined identifier. The system is found at Encounter.episodeOfCare.identifier.system in the profile. The datatype of the system is Unique Resource Identifier Reference (uri), meaning that the system must be absolut or relative unique. It is recommended to use SOR-endpoint, which is also definied in the MessageHeader.source.endpoint. This is shown in the XML-snippet and examples below.

 <episodeOfCare>
    <identifier>
      <system value="https://sor2.sum.dsdn.dk/#id=265161000016000"/>
      <value value="bd481c38-a921-11ed-afa1-0242ac120002"/>
    </identifier>
  </episodeOfCare>

A simplified example with two episode of care identifieres can be found here and a FHIR example with two episode of care identifieres can be found here Other examples will have just one episode of care identifier.

Timestamps

The Encounter profile contains four timestamps each representing a different time during a hospitalisation. Common for the four timestamps is that they represent the time of the event, e.g. the patient's physical attendance at the hospital (Encounter.period.start) or a patient going on leave from the hospital (Encounter.extension:leavePeriod.start).

FHIR-element Description Event See Encounter example
Encounter.period.start Start hospital stay, i.e. the actual beginning of the meeting between the health care professional and patient Patient's physical attendance at the hospital HospitalNotification Encounter - STIN and HospitalNotification Encounter - STAA
Encounter.period.end End hospital stay, i.e. the actual end of the meeting between the health care professional and patient Patient leaves the hospital after discharge or when a patient dies (on arrival or during hospital stay) HospitalNotification Encounter - SLHJ (inpatient) and HospitalNotification Encounter - MORS (inpatient)
Encounter.extension:leavePeriod.start Patient starts leave, i.e. the actual beginning of a leave-period Patient leaves the hospital to go on leave. HospitalNotification Encounter - STOR
Encounter.extension:leavePeriod.end Patient ends leave, i.e. the actual end of a leave-period Patient's physical attendance at the hospital after a period of leave HospitalNotification Encounter - SLOR

Start and end of hospital stay

As described above, the timestamp of start and end of hospital stay are included in the elements Encounter.period.start and Encounter.period.end, respectively. Encounter.period.start shall always be present, also when sending a HospitalNotification describing a period of leave or end or hospital stay.

In cases where a patient is transferred to a hospital in the same region or in another region, or a hospitalisation changes from 'acute ambulant' to 'inpatient', a new start hospital stay HospitalNotification shall be sent. These three cases shall result in a new instance of the Encounter profile which has a new Encounter.period.start representing the time of the change in the hospitalisation. All cases are described in the Clinical guidelines for application.

Leave

To express the timestamps for a period of leave, the MedComHospitalNotificationLeavePeriodExtension shall be used.

When a patient goes on leave the Encounter.extension:leavePeriod.start shall be used, and when the patient returns from leave both Encounter.extension:leavePeriod.start and Encounter.extension:leavePeriod.end shall be present.

The cardinality of MedComHospitalNotificationLeavePeriodExtension is 0..1 meaning that only one period of leave can be included in a HospitalNotification to avoid confusion about which period of leave is the current. In case a patient goes on leave several times during the same hospitalisation, the period shall be described in separate HospitalNotifications, that are being sent when each period of leave occurs.

Death

When a patient dies either on arrival or during hospital stay, the timestamp Encounter.period.end represents the time the encounter ended i.e the time of death. The Encounter.period.start shall also be populated. If a patient dies on arrival Encounter.period.start shall be equal to Encounter.period.end, and if the patient dies during hospital stay Encounter.period.start shall represent the actual beginning of the hospital stay. A HospitalNotification can only be interpreted as describing a deceased patient when the element Patient.deaceased = 'true'.

Usage:

Formal Views of Profile Content

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

This structure is derived from MedComCoreEncounter

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter C 0..* MedComCoreEncounter An interaction during which services are provided to the patient
medcom-hospitalNotification-6: When the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... leavePeriod SΣ 0..1 Period MedComHospitalNotificationLeavePeriodExtension
URL: http://medcomfhir.dk/ig/hospitalnotification/StructureDefinition/medcom-hospitalnotifiation-leave-period-extension
... status 1..1 code in-progress | onleave | finished | entered-in-error
Binding: MedComHospitalNotificationEncounterStatusCodes (required)
... class 1..1 Coding inpatient | emergency | other
Binding: MedComHospitalNotificationEncounterClassCodes (required)
... serviceType 0..0
... priority 0..0
... episodeOfCare 1..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
.... reference 0..0
.... identifier 1..1 Identifier Logical reference, when literal reference is not known
... Slices for episodeOfCare Content/Rules for all slices
.... episodeOfCare:lpr3identifier 0..1 Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
..... reference 0..0
..... identifier Σ 1..1 Lpr3Identifier An identifier intended for computation
... basedOn 0..0
... participant 0..0
... appointment 0..0
... period S 1..1 Period The start and end time of the encounter
.... start S 1..1 dateTime Encounter start time.
.... end S 0..1 dateTime Encounter end time.
... length 0..0
... reasonCode 0..0
... reasonReference 0..0
... diagnosis 0..0
... account 0..0 Reference(Account)
... hospitalization 0..0
... location 0..0
... serviceProvider 1..1 Reference(MedComCoreOrganization) {b} The organization (facility) responsible for this encounter
... partOf 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Encounter.statusrequiredMedComHospitalNotificationEncounterStatus
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterStatus
Encounter.classrequiredMedComHospitalNotificationEncounterClass
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterClass

Constraints

IdGradePath(s)DetailsRequirements
medcom-hospitalNotification-6errorEncounterWhen the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
: where(status = 'onleave').extension.value.start.exists() or status != 'onleave'
NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter C 0..* MedComCoreEncounter An interaction during which services are provided to the patient
medcom-hospitalNotification-6: When the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... leavePeriod SΣ 0..1 Period MedComHospitalNotificationLeavePeriodExtension
URL: http://medcomfhir.dk/ig/hospitalnotification/StructureDefinition/medcom-hospitalnotifiation-leave-period-extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... class SΣ 1..1 Coding inpatient | emergency | other
Binding: MedComHospitalNotificationEncounterClassCodes (required)
... subject SΣ 1..1 Reference(MedComCorePatient) {b} The patient or group present at the encounter
... Slices for episodeOfCare SΣ 1..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
Slice: Unordered, Open by value:identifier.system
.... episodeOfCare:All Slices Content/Rules for all slices
..... identifier SΣ 1..1 Identifier Logical reference, when literal reference is not known
.... episodeOfCare:lpr3identifier SΣ 0..1 Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
..... identifier Σ 1..1 Lpr3Identifier An identifier intended for computation
... period S 1..1 Period The start and end time of the encounter
.... start SΣC 1..1 dateTime Encounter start time.
.... end SΣC 0..1 dateTime Encounter end time.
... serviceProvider S 1..1 Reference(MedComCoreOrganization) {b} The organization (facility) responsible for this encounter

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Encounter.statusrequiredMedComHospitalNotificationEncounterStatus
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterStatus
Encounter.classrequiredMedComHospitalNotificationEncounterClass
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterClass

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf 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-4errorEncounterIf 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-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
medcom-hospitalNotification-6errorEncounterWhen the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
: where(status = 'onleave').extension.value.start.exists() or status != 'onleave'
NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter C 0..* MedComCoreEncounter An interaction during which services are provided to the patient
medcom-hospitalNotification-6: When the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
... id Σ 0..1 id 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
... 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
.... leavePeriod SΣ 0..1 Period MedComHospitalNotificationLeavePeriodExtension
URL: http://medcomfhir.dk/ig/hospitalnotification/StructureDefinition/medcom-hospitalnotifiation-leave-period-extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Identifier(s) by which this encounter is known
... status ?!SΣ 1..1 code in-progress | onleave | finished | entered-in-error
Binding: MedComHospitalNotificationEncounterStatusCodes (required)
... 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 inpatient | emergency | other
Binding: MedComHospitalNotificationEncounterClassCodes (required)
... 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
... subject SΣ 1..1 Reference(MedComCorePatient) {b} The patient or group present at the encounter
... Slices for episodeOfCare SΣ 1..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
Slice: Unordered, Open by value:identifier.system
.... episodeOfCare:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier SΣ 1..1 Identifier Logical reference, when literal reference is not known
..... display Σ 0..1 string Text alternative for the resource
.... episodeOfCare:lpr3identifier SΣ 0..1 Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier Σ 1..1 Lpr3Identifier An identifier intended for computation
..... display Σ 0..1 string Text alternative for the resource
... period S 1..1 Period The start and end time of the encounter
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... start SΣC 1..1 dateTime Encounter start time.
.... end SΣC 0..1 dateTime Encounter end time.
... serviceProvider S 1..1 Reference(MedComCoreOrganization) {b} The organization (facility) responsible for this encounter

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Encounter.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Encounter.statusrequiredMedComHospitalNotificationEncounterStatus
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterStatus
Encounter.statusHistory.statusrequiredEncounterStatus
http://hl7.org/fhir/ValueSet/encounter-status|4.0.1
from the FHIR Standard
Encounter.classrequiredMedComHospitalNotificationEncounterClass
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterClass
Encounter.classHistory.classextensibleActEncounterCode
http://terminology.hl7.org/ValueSet/v3-ActEncounterCode
Encounter.episodeOfCare.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
Encounter.episodeOfCare:lpr3identifier.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
Encounter.participant.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Encounter.diagnosis.usepreferredDiagnosisRole
http://hl7.org/fhir/ValueSet/diagnosis-role
from the FHIR Standard
Encounter.hospitalization.admitSourcepreferredAdmitSource
http://hl7.org/fhir/ValueSet/encounter-admit-source
from the FHIR Standard
Encounter.hospitalization.reAdmissionexampleHl7VSReAdmissionIndicator
http://terminology.hl7.org/ValueSet/v2-0092
Encounter.hospitalization.dietPreferenceexampleDiet
http://hl7.org/fhir/ValueSet/encounter-diet
from the FHIR Standard
Encounter.hospitalization.specialCourtesypreferredSpecialCourtesy
http://hl7.org/fhir/ValueSet/encounter-special-courtesy
from the FHIR Standard
Encounter.hospitalization.specialArrangementpreferredSpecialArrangements
http://hl7.org/fhir/ValueSet/encounter-special-arrangements
from the FHIR Standard
Encounter.hospitalization.dischargeDispositionexampleDischargeDisposition
http://hl7.org/fhir/ValueSet/encounter-discharge-disposition
from the FHIR Standard
Encounter.location.statusrequiredEncounterLocationStatus
http://hl7.org/fhir/ValueSet/encounter-location-status|4.0.1
from the FHIR Standard
Encounter.location.physicalTypeexampleLocationType
http://hl7.org/fhir/ValueSet/location-physical-type
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf 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-4errorEncounterIf 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-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
medcom-hospitalNotification-6errorEncounterWhen the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
: where(status = 'onleave').extension.value.start.exists() or status != 'onleave'

This structure is derived from MedComCoreEncounter

Summary

Mandatory: 5 elements
Must-Support: 4 elements
Prohibited: 15 elements

Extensions

This structure refers to these extensions:

Differential View

This structure is derived from MedComCoreEncounter

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter C 0..* MedComCoreEncounter An interaction during which services are provided to the patient
medcom-hospitalNotification-6: When the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... leavePeriod SΣ 0..1 Period MedComHospitalNotificationLeavePeriodExtension
URL: http://medcomfhir.dk/ig/hospitalnotification/StructureDefinition/medcom-hospitalnotifiation-leave-period-extension
... status 1..1 code in-progress | onleave | finished | entered-in-error
Binding: MedComHospitalNotificationEncounterStatusCodes (required)
... class 1..1 Coding inpatient | emergency | other
Binding: MedComHospitalNotificationEncounterClassCodes (required)
... serviceType 0..0
... priority 0..0
... episodeOfCare 1..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
.... reference 0..0
.... identifier 1..1 Identifier Logical reference, when literal reference is not known
... Slices for episodeOfCare Content/Rules for all slices
.... episodeOfCare:lpr3identifier 0..1 Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
..... reference 0..0
..... identifier Σ 1..1 Lpr3Identifier An identifier intended for computation
... basedOn 0..0
... participant 0..0
... appointment 0..0
... period S 1..1 Period The start and end time of the encounter
.... start S 1..1 dateTime Encounter start time.
.... end S 0..1 dateTime Encounter end time.
... length 0..0
... reasonCode 0..0
... reasonReference 0..0
... diagnosis 0..0
... account 0..0 Reference(Account)
... hospitalization 0..0
... location 0..0
... serviceProvider 1..1 Reference(MedComCoreOrganization) {b} The organization (facility) responsible for this encounter
... partOf 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Encounter.statusrequiredMedComHospitalNotificationEncounterStatus
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterStatus
Encounter.classrequiredMedComHospitalNotificationEncounterClass
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterClass

Constraints

IdGradePath(s)DetailsRequirements
medcom-hospitalNotification-6errorEncounterWhen the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
: where(status = 'onleave').extension.value.start.exists() or status != 'onleave'

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter C 0..* MedComCoreEncounter An interaction during which services are provided to the patient
medcom-hospitalNotification-6: When the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... leavePeriod SΣ 0..1 Period MedComHospitalNotificationLeavePeriodExtension
URL: http://medcomfhir.dk/ig/hospitalnotification/StructureDefinition/medcom-hospitalnotifiation-leave-period-extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... class SΣ 1..1 Coding inpatient | emergency | other
Binding: MedComHospitalNotificationEncounterClassCodes (required)
... subject SΣ 1..1 Reference(MedComCorePatient) {b} The patient or group present at the encounter
... Slices for episodeOfCare SΣ 1..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
Slice: Unordered, Open by value:identifier.system
.... episodeOfCare:All Slices Content/Rules for all slices
..... identifier SΣ 1..1 Identifier Logical reference, when literal reference is not known
.... episodeOfCare:lpr3identifier SΣ 0..1 Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
..... identifier Σ 1..1 Lpr3Identifier An identifier intended for computation
... period S 1..1 Period The start and end time of the encounter
.... start SΣC 1..1 dateTime Encounter start time.
.... end SΣC 0..1 dateTime Encounter end time.
... serviceProvider S 1..1 Reference(MedComCoreOrganization) {b} The organization (facility) responsible for this encounter

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Encounter.statusrequiredMedComHospitalNotificationEncounterStatus
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterStatus
Encounter.classrequiredMedComHospitalNotificationEncounterClass
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterClass

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf 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-4errorEncounterIf 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-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
medcom-hospitalNotification-6errorEncounterWhen the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
: where(status = 'onleave').extension.value.start.exists() or status != 'onleave'

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter C 0..* MedComCoreEncounter An interaction during which services are provided to the patient
medcom-hospitalNotification-6: When the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
... id Σ 0..1 id 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
... 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
.... leavePeriod SΣ 0..1 Period MedComHospitalNotificationLeavePeriodExtension
URL: http://medcomfhir.dk/ig/hospitalnotification/StructureDefinition/medcom-hospitalnotifiation-leave-period-extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Identifier(s) by which this encounter is known
... status ?!SΣ 1..1 code in-progress | onleave | finished | entered-in-error
Binding: MedComHospitalNotificationEncounterStatusCodes (required)
... 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 inpatient | emergency | other
Binding: MedComHospitalNotificationEncounterClassCodes (required)
... 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
... subject SΣ 1..1 Reference(MedComCorePatient) {b} The patient or group present at the encounter
... Slices for episodeOfCare SΣ 1..* Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
Slice: Unordered, Open by value:identifier.system
.... episodeOfCare:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier SΣ 1..1 Identifier Logical reference, when literal reference is not known
..... display Σ 0..1 string Text alternative for the resource
.... episodeOfCare:lpr3identifier SΣ 0..1 Reference(EpisodeOfCare) Episode(s) of care that this encounter should be recorded against
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier Σ 1..1 Lpr3Identifier An identifier intended for computation
..... display Σ 0..1 string Text alternative for the resource
... period S 1..1 Period The start and end time of the encounter
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... start SΣC 1..1 dateTime Encounter start time.
.... end SΣC 0..1 dateTime Encounter end time.
... serviceProvider S 1..1 Reference(MedComCoreOrganization) {b} The organization (facility) responsible for this encounter

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Encounter.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Encounter.statusrequiredMedComHospitalNotificationEncounterStatus
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterStatus
Encounter.statusHistory.statusrequiredEncounterStatus
http://hl7.org/fhir/ValueSet/encounter-status|4.0.1
from the FHIR Standard
Encounter.classrequiredMedComHospitalNotificationEncounterClass
http://medcomfhir.dk/ig/terminology/ValueSet/medcom-hospitalNotification-encounterClass
Encounter.classHistory.classextensibleActEncounterCode
http://terminology.hl7.org/ValueSet/v3-ActEncounterCode
Encounter.episodeOfCare.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
Encounter.episodeOfCare:lpr3identifier.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
Encounter.participant.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Encounter.diagnosis.usepreferredDiagnosisRole
http://hl7.org/fhir/ValueSet/diagnosis-role
from the FHIR Standard
Encounter.hospitalization.admitSourcepreferredAdmitSource
http://hl7.org/fhir/ValueSet/encounter-admit-source
from the FHIR Standard
Encounter.hospitalization.reAdmissionexampleHl7VSReAdmissionIndicator
http://terminology.hl7.org/ValueSet/v2-0092
Encounter.hospitalization.dietPreferenceexampleDiet
http://hl7.org/fhir/ValueSet/encounter-diet
from the FHIR Standard
Encounter.hospitalization.specialCourtesypreferredSpecialCourtesy
http://hl7.org/fhir/ValueSet/encounter-special-courtesy
from the FHIR Standard
Encounter.hospitalization.specialArrangementpreferredSpecialArrangements
http://hl7.org/fhir/ValueSet/encounter-special-arrangements
from the FHIR Standard
Encounter.hospitalization.dischargeDispositionexampleDischargeDisposition
http://hl7.org/fhir/ValueSet/encounter-discharge-disposition
from the FHIR Standard
Encounter.location.statusrequiredEncounterLocationStatus
http://hl7.org/fhir/ValueSet/encounter-location-status|4.0.1
from the FHIR Standard
Encounter.location.physicalTypeexampleLocationType
http://hl7.org/fhir/ValueSet/location-physical-type
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf 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-4errorEncounterIf 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-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
medcom-hospitalNotification-6errorEncounterWhen the status = 'onleave', the timestamp for beginning of a leave (extension.valuePeriod.start) shall be present.
: where(status = 'onleave').extension.value.start.exists() or status != 'onleave'

This structure is derived from MedComCoreEncounter

Summary

Mandatory: 5 elements
Must-Support: 4 elements
Prohibited: 15 elements

Extensions

This structure refers to these extensions:

 

Other representations of profile: CSV, Excel, Schematron