BgZ Medisch-Specialistische Zorg Technical Implementation Guide 2.0 - Beta
This article or section is in the middle of an expansion or major restructuring and is not yet ready for use. |
Inhoud
1 Note on this Implementation Guide - beta status - in ontwikkeling
This alpha version of the Implementation Guide (TO) is not technically complete, but even so, it is being published in order to start obtaining feedback from the stakeholders. The current version provides an early indication of the contents being proposed.
The following items require further investigation, discussion and review amongst all stakeholders.
- Generic description of the Notified Pull communication pattern - this is being developed by Team Radar (Generic) within Nictiz at the moment and will be referred to from this TO. The intention is to avoid duplicating information at all costs.
- FHIR Notification and Workflow Task profiles - the first versions of these have been developed locally and now need to be published via Simplifier so that a reference can be made to them from this TO.
- FHIR GET (read/search) request strings - these need to be reviewed once the Referenced BgZ Resource profiles are complete.
- FHIR Referenced BgZ Resource profiles - the FO defines two new data elements that enrich the BgZ items - EersteRegistratieDatumTijd (FirstRegistrationDateTime) and MutatieDatumTijd (ContentModificationDateTime). These two fields need to be added to the corresponding BgZ FHIR resources and the mechanism for doing this is under discussion at the moment. The FHIR Provenance Resource is being considered. As soon as there is some clarity on best practices then the FHIR resource profiles will be updated and references adjusted in this TO.
The intention is to finalize agreements on these issues for the beta version of the TO. This alpha version will be updated, towards a beta version, as issues are resolved.
2 Introduction
2.1 Background
The BgZ MSZ Information Standard describes the exchange of the BgZ information between healthcare providers. The BgZ information is the minimum collection of patient data that is relevant across specialty, syndrome and profession and is important for the continuity of care. This data collection can be exchanged between care institutions. The information standard focuses on the exchange between healthcare providers of specialist medical care.
This BgZ MSZ implementation guide defines the BgZ information exchanges, in terms of use cases, based on the Zib2017 and FHIR(STU3) HL7 FHIR, STU3. HL7 CDA is no longer supported for BgZ MSZ exchange. This implementation guide assumes that the reader is familiar with this FHIR version.
Apart from this document, the guidelines as specified in general FHIR Implementation Guide apply. The guide defines methods on how to proceed with implementing FHIR STU3 and what rules apply (e.g. how to handle empty reponses etc.). In particular, the reader should take note of the Use case overarching principles and the use of FHIR packages.
2.2 About this document
This BgZ MSZ implementation guide is a technical document defining the BgZ information exchanges in terms of use cases. It should be used together with the BgZ MSZ Functional Design (FO) - see Functioneel ontwerp BgZ medisch-specialistische zorg 2.0 alpha.
The following document provides background information:
- "Technical Agreement - Exchanging FHIR Data using a generic Notified Pull mechanism" [1]
This implementation guide is intended to provide information for implementation/deployment needs in the Netherlands.
2.3 Glossary
Term | Description |
---|---|
Basisgegevensset Zorg - medisch-specialistische zorg (BgZ MSZ) | Minimum collection of patient data that is relevant across specialty, clinical picture and profession and is important for the continuity of care. |
BSN | The citizen service number (BSN) is a unique 9-digit personal number allocated to everyone registered in the Personal Records Database (BRP). Everyone who registers with the BRP is automatically given a BSN. |
FHIR | Fast Healthcare Interoperability Resources |
IHE | Integrating the Healthcare Enterprise |
HCIM | Health and Care Information models (HCIM) or Zorginformatiebouwstenen (ZIB's) are used to capture functional, semantic (non-technical) agreements for the standardization of information used in the care process. |
VZVZ | Vereniging van Zorgaanbieders voor Zorgcommunicatie: Dutch Association for Health Providers |
Table 2.1 Glossary
3 Boundaries and Relationships
This is the first version of the BgZ MSZ information standard in which the Notified Pull communication pattern is used to implement the "Exchange BgZ for Referral" use case. A generic description of the Notified Pull communication pattern is available (add link the Nictiz Team Radar/Generic NP description). The generic description is supplemented in this Implementation Guide by specific details defining:
- The Notification and Workflow Tasks in terms of their FHIR profiles.
- The GET request strings required to read/search for the BgZ MSZ items, defined as Input parameters in the Notification/Workflow tasks, from the Sending System by the Receiving System.
- The referenced FHIR resource profiles corresponding to the BgZ MSZ items.
4 Use Cases
Two use cases are defined in the FO as follows:
- Exchange BgZ for Referral ("Uitwisseling BgZ bij Verwijzing") from a referring (sending) healthcare provider to a receiving healthcare provider in the event of a planned referral or transfer between their two care institutions.
- Retrieval of BgZ from previous practitioner ("Opvraging BgZ bij eerdere behandelaar") by a requesting healthcare provider to his/her care institution from a different care institution.
The difference between the two use cases is mainly down to which healthcare provider takes the initiative to start the exchange of the BgZ.
4.1 Exchange BgZ for Referral
In the "Exchange BgZ for Referral" use case, the current healthcare provider (Referring (Sending) Medical Specialist) takes the initiative for a referral or transfer. In doing so, information is shared, including the BgZ (and, for example, a referral letter, additional images or reports). When the patient then attends the new care institution as a result of the referral, or transfer, the Receiving Medical Specialist can (re)use the information from the BgZ.
4.1.1 Actors
Persons | Systems | ||
---|---|---|---|
Name | Description | Name | Description |
Referring (Sending) Medical Specialist | Medical specialist who sends a BgZ along with a referral | EHR | Electronic health record |
Receiving Medical Specialist | Medical specialist receives a BgZ along with a referral | EHR | Electronic health record |
It is assumed that the Referring (Sending) Medical Specialist and Receiving Medical Specialist, as persons who use the BgZ sharing infrastructure, are signed on, authenticated and have authorization & consent to access the necessary (patient) information stored in the BgZ sharing infrastructure (or in other words, an authenticated healthcare professional who has an active treatment relationship with the patient). The way in which the persons achieve this state is beyond the scope of this implementation guide but is expected to be facilitated by use of the generic infrastructure.
4.1.2 Transactions
The "Exchange BgZ for Referral" use case can be implemented using two types of transactions:
- Notified Pull (preferred)
- Push
4.1.2.1 Exchange BgZ for Referral using Notified Pull Transaction
The Notified Pull communication pattern is based on the description in [3]. The Referring (Sending) Medical Specialist notifies the Receiving Medical Specialist about the referral or transfer by sending a Notification Message. The Receiving Medical Specialist can then retrieve the BgZ (at a suitable time) using the Pull Message(s) which is(are) defined as a part of the Notification Message.
This two stage approach separates the notification phase from the actual BgZ retrieval phase allowing the Receiving Medical Specialist to decide if, and when, to retrieve the BgZ.
TODO: Linked to be added to the generic description of the Notified Pull communication pattern...
The Workflow Task message is optional in the BgZ MSZ exchange and no statement about it's inclusion is made by this Implementation Guide. However, in terms of system support the following rules apply:
- The Sending System can support either a standalone Notification Task message or the combined use of the Notification Task and Workflow Task messages. If the Notified Pull is part of a workflow managed by the Sending System, then the Sending System will create a Workflow Task locally and indicate its use in the Notification Task message sent to the Receiving System.
- The Receiving System must support both the use of a standalone Notification Task message and the combined Notification / Workflow Tasks messages, depending on which option is indicated for use in the Notification Task message. When a Workflow Task is indicated then the Receiving System must retrieve the Worklow Task message from the Sending System using a separate GET operation.
The FHIR profiles describing the Notification Task message, the Workflow Task message and the retrieved BgZ item resources are defined in the FHIR Profiles section.
The FHIR search/read queries used to retrieve the BgZ item resources are defined in the FHIR Task.input Query Specification section.
NOTE: The Notified Pull, as described in [3], identifies two additional transactions based on the Notification Task:
- Notification Update
- Notification Cancellation
Both of these transactions are out of scope for this version of the Implementation Guide.
4.1.2.2 Exchange BgZ for Referral using Push Transaction
The Referring (Sending) Medical Specialist pushes the BgZ to the Receiving Medical Specialist at the time of referral or transfer and not necessarily at the time when the Receiving Medical Specialist requires the BgZ (if it is required at all).
The Push method always transfers the BgZ to the Receiving Medical Specialist even when it might not be wanted or needed.
The FHIR profiles describing the BgZ item resources are defined in the FHIR Profiles section.
Note: The Push use case can be used by systems transitioning from HL7 CDA to HL7 FHIR where the CDA based BgZ is replaced by a FHIR Composition and pushed between sending and receiving systems.
4.2 Retrieval of BgZ from previous practitioner (out of scope V2.0)
In the "Retrieval of BgZ from previous practitioner" use case, the current healthcare provider (Requesting Medical Specialist) is aware that the patient has had some previous treatment (through, for example, information provided by the patient) and takes the initiative to retrieve the details of this previous treatment from the previous care institution.
4.2.1 Actors
Persons | Systems | ||
---|---|---|---|
Name | Description | Name | Description |
Requesting Medical Specialist | Medical specialist who queries for a BgZ | EHR | Electronic health record |
It is assumed that the Requesting Medical Specialist, as person who uses the BgZ sharing infrastructure, is signed on, authenticated and has authorization & consent to access the necessary (patient) information stored in the BgZ sharing infrastructure (or in other words, an authenticated healthcare professional who has an active treatment relationship with the patient). The way in which the person achieves this state is beyond the scope of this implementation guide but is expected to be facilitated by use of the generic infrastructure.
4.2.2 Transactions
4.2.2.1 Retrieval of BgZ from previous practitioner using Pull Transaction
The Requesting Medical Specialist can retrieve the BgZ (at a suitable time) using the Pull Message.
The FHIR profiles describing the retrieved BgZ item resources are defined in the FHIR Profiles section.
The FHIR search/read queries used to retrieve the BgZ item resources are defined in the FHIR Task.input Query Specification section. The Task.input.value[x] definitions define the query search/read values to use.
5 FHIR Profiles
Note: These FHIR Profiles are under review and will be finalized by the beta version of the TO.
5.1 FHIR Notification Task
A BgZ MSZ Notification Task instance is created in the Receiving System by the Sending System issuing an HTTP POST operation to the Receiving System.
The following table identifies the location of the Notification Task FHIR profile.
FHIR Resource | FHIR Profile |
---|---|
(Notification) Task | http://fhir.nl/fhir/StructureDefinition/bgz-msz-notification-task-location-to-be-added |
5.2 FHIR Workflow Task
If the Sending System supports the management of the BgZ MSZ information exchange, it will create a Workflow Task instance locally, and include details of the Workflow Task in the Notification Task exchanged with the Receiving System. The Recieving System can retrieve the Workflow Task by issuing an HTTP GET operation to the Sending System.
The following table identifies the location of the Workflow Task FHIR profile.
FHIR Resource | FHIR Profile |
---|---|
(Workflow) Task | http://fhir.nl/fhir/StructureDefinition/bgz-msz-workflow-task-location-to-be-added |
5.3 FHIR Task Patient Identification
Although a patient is formally identified by their BSN in the BgZ MSZ information standard, this patient identifier is never exchanged as part of either the Notification Task or Workflow Task content. Instead, an "authorization base" token is exchanged, which only gives access by the Receiving System to specific data of a single patient managed by the Sending System.
The authorization base token is exchanged as one of the Task.input parameters in the Notification Task with a format as shown in the table below.
FHIR Task.input.type | FHIR Task.input.value[x] as valueString |
---|---|
codeSystem: http://fhir.nl/fhir/NamingSystem/TaskParameter code: authorization-base |
authorization base token value (encrypted) |
5.4 FHIR Query Specification
The table below provides an overview of the FHIR queries to exchange all BgZ-msz elements.
Query | Description |
---|---|
1 Demographics and identification | |
1.1 Patient | |
GET [base]/Patient? _include=Patient:general-practitioner |
The patient information available in the source system is exchanged as a FHIR patient instance that conforms to the nl-core-patient profile.
|
1.2 Marital status | |
Patient.maritalStatus |
Marital status data are exchanged via the patient resource (see 1.1). |
2 Financial information | |
2.1 Payer | |
GET [base]/Coverage? _include=Coverage:payor |
The payer data available in the source system is exchanged as a FHIR coverage instance that conforms to the zib-Payer profile.
|
3 Treatment restrictions | |
3.1 Treatment instructions | |
GET [base]/Consent? category=http://snomed.info/sct|11291000146105& _sort=-period.start&_count=1 |
The last known TreatmentDirective available in the source system is exchanged as a FHIR consent instance that conforms to the zib-TreatmentDirective profile.
|
3.2 Advance directive | |
GET [base]/Consent? category=http://snomed.info/sct|11341000146107& _sort=-dateTime&_count=1 |
The last known AdvanceDirective available in the source system is exchanged as a FHIR consent instance that conforms to the zib-AdvanceDirective profile.
|
4 Contact persons | |
4.1 Contact | |
Patient.contact |
Primary partner/contact data are exchanged via the patient resource (see 1.1). |
5 Functional/mental status | |
5.1 Functional or mental status | |
GET [base]/Observation? category=http://snomed.info/sct|118228005, http://snomed.info/sct|384821006 |
All functional or mental status information available in the source system is exchanged as FHIR observation data that conforms to the zib-FunctionalOrMentalStatus profile.
|
6 Complaints and diagnoses | |
6.1 Problem | |
GET [base]/Condition |
All problems available in the source system are returned as zib-Problem instances.
"clinicalStatus":{ "extension": [{ "url": "http://hl7.org/fhir/StructureDefinition/data-absent-reason", "valueCode": "unknown" }] },
|
7 Social history | |
7.1 Living Situation | |
GET [base]/Observation/$lastn? code=http://snomed.info/sct|365508006 |
The last known living situation available in the source system is exchanged as a FHIR Observation instance that conforms to the zib-LivingSituation profile.
|
7.2 Drug Use | |
GET [base]/Observation? code=http://snomed.info/sct|228366006 |
All drug use available in the source system is exchanged as a FHIR Observation instances that conform to the zib-DrugUse profile.
|
7.3 Alcohol Use | |
GET [base]/Observation/$lastn? code=http://snomed.info/sct|228273003 |
The last known alcohol use available in the source system is exchanged as a FHIR Observation instance that conforms to the zib-AlcoholUse profile.
|
7.4 Tobacco Use | |
GET [base]/Observation/$lastn? code=http://snomed.info/sct|365980008 |
The last known Tobacco Use available in the source system is exchanged as a FHIR Observation instance that conforms to the zib-TobaccoUse profile.
|
7.5 Nutrition Advice | |
GET [base]/NutritionOrder |
All Nutrition Advice available in the source system is exchanged as a FHIR NutritionOrder instances that conform to the zib-NutritionAdvice profile.
|
8 Alerts | |
8.1 Alert | |
GET [base]/Flag |
All alerts available in the source system is exchanged as a FHIR Flag instances that conform to the zib-Alert profile. |
9 Allergies | |
9.1 Allergy Intolerance | |
GET [base]/AllergyIntolerance |
All allergies and intolerances available in the source system is exchanged as a FHIR AllergyIntolerance instances that conform to the zib-AllergyIntolerance profile.
"manifestation":{ "extension": [{ "url": "http://hl7.org/fhir/StructureDefinition/data-absent-reason", "valueCode": "unknown" }] }, |
10 Medication | |
10.1 Medication Agreement | |
GET [base]/MedicationRequest? category=http://snomed.info/sct|16076005& _include=MedicationRequest:medicationReference |
All medication agreements available in the source system are exchanged FHIR MedicationRequest instances that conform to the zib-MedicationAgreement profile.
|
10.2 Administration Agreement | |
GET [base]/MedicationDispense? category=http://snomed.info/sct|422037009& _include=MedicationDispense:medicationReference |
All administration agreements available in the source system are exchanged FHIR MedicationDispense instances that conform to the zib-AdministrationAgreement profile.
|
10.3 Medication Use | |
GET [base]/MedicationStatement? category= urn:oid:2.16.840.1.113883.2.4.3.11.60.20.77.5.3|6& _include=MedicationStatement:medicationReference |
All medication use available in the source system are exchanged FHIR MedicationStatement instances that conform to the zib-MedicationUse profile.
|
11 Medical devices | |
11.1 Medical device | |
GET [base]/DeviceUseStatement? _include=DeviceUseStatement:device |
All device use statements available in the source system are exchanged as FHIR DeviceUseStatement instances that conform to the zib-MedicalDevice profile.
|
12 Vaccinations | |
12.1 Vaccination | |
GET [base]/Immunization? status=completed |
All administered vaccinations available in the source system are exchanged as FHIR Immunization instances conforming to the zib-Vaccination profile.
|
13 vital signs and measurements | |
13.1 Blood pressure | |
GET [base]/Observation/$lastn? code=http://loinc.org|85354-9 |
The last known Blood pressure available in the source system is exchanged as a FHIR Observation instance that conforms to the zib-BloodPressure profile.
|
13.2 Body weight | |
GET [base]/Observation/$lastn? code=http://loinc.org|29463-7 |
The last known Body Weight available in the source system is exchanged as a FHIR Observation instance that conforms to the zib-BodyWeight profile.
|
13.3 Body height | |
GET [base]/Observation/$lastn? code=http://loinc.org|8302-2, http://loinc.org|8306-3, http://loinc.org|8308-9 |
The last known Body Height available in the source system is exchanged as a FHIR Observation instance that conforms to the zib-BodyHeight profile.
|
14 Results | |
14.1 Laboratory test result | |
GET [base]/Observation/$lastn? category=http://snomed.info/sct|49581000146104 &_include=Observation:related-target |
All last known Laboratory results, where for each PanelOrBattery the last known results, are exchanged as FHIR observations conforming the zib-LaboratoryTestResult-Observation profile.
|
15 Procedures | |
15.1 Procedure | |
GET [base]/Procedure? category=http://snomed.info/sct|387713003, http://snomed.info/sct|258174001 |
All operative and image guided procedures available in the source system are exchanged as FHIR Procedure instances that conform to the zib-Procedure profile.
|
16 Encounters | |
16.1 Encounter | |
GET [base]/Encounter? _include=Encounter:serviceProvider |
All Encounters available in the source system are exchanged as FHIR Encounter instances that conform to the zib-Encounter profile. |
17 Planned care activity | |
17.1 Procedure | |
GET [base]/ProcedureRequest? {future date} |
All planned procedures available in the source system are exchanged FHIR ProcedureRequest instances according to the zib-ProcedureRequest profile.
|
18 Care Setting | |
18.1 Health professional | |
GET [base]/CareTeam?status=active&_include=CareTeam:participant Procedure.performer (nl-code-practitioner) Encounter.participant (nl-code-practitioner) DeviceUseStatement.source (nl-code-practitioner) |
All health professionals available in the source system are exchanged as part of a CareTeam instance according to the nl-core-careteam profile.
|
18.2 Healthcare provider | |
Procedure.performer (nl-code-organization) Encounter.serviceProvider (nl-code-organization) |
Providers, are exchanged as part of the BgZ information elements. There is no specific query to retrieve Health Providers.
|
19 Meta data | |
19.1 Meta data | |
GET [base]/Provenance |
All provenance data available in the source system is exchanged as FHIR provenance instances according to the bgz-metadata profile. |
5.5 FHIR Task.input Query Specification
The following table provides the overview of codings needed to retrieve all the BgZ MSZ items. The FHIR Task.input.type.coding column defines codedConcepts that identify the BgZ MSZ item (HCIM) to retrieve. Each codedConcept is defined in terms of the codeSystem, code.
The same Task.input parameters are applicable to the Notification Task or the Workflow Task depending on which is used to specify the BgZ msz retrieval operation.
Section | Component | FHIR Task.input.type.coding |
---|---|---|
1 Demographics and identification | 1.1 Patient | http://loinc.org/79191-3 |
1.2 Marital status | Data are exchanged as part of the patient instance. | |
2 Financial information | 2.1 Payer | http://loinc.org/48768-6 |
3 Treatment restrictions | 3.1 Treatment instructions | http://snomed.info/sct/11291000146105 |
3.2 Advance directive | http://snomed.info/sct/11341000146107 | |
4 Contact persons | 4.1 Contact | Data are exchanged as part of the patient instance. |
5 Functional/mental status | 5.1 Functional or mental status | http://loinc.org/47420-5 |
6 Complaints and diagnoses | 6.1 Problem | http://loinc.org/11450-4 |
7 Social history | 7.1 Living Situation | http://snomed.info/sct/365508006 |
7.2 Drug Use | http://snomed.info/sct/228366006 | |
7.3 Alcohol Use | http://snomed.info/sct/228273003 | |
7.4 Tobacco Use | http://snomed.info/sct/365980008 | |
7.5 Nutrition Advice | http://snomed.info/sct/11816003 | |
8 Alerts | 8.1 Alert | http://loinc.org/75310-3 |
9 Allergies | 9.1 Allergy Intolerance | http://loinc.org/48765-2 |
10 Medication | 10.1 Medication Agreement | http://snomed.info/sct/422979000 |
10.2 Administration Agreement | http://snomed.info/sct/422037009 | |
10.3 Medication Use | http://snomed.info/sct/16076005 | |
11 Medical devices | 11.1 Medical device | http://loinc.org/46264-8 |
12 Vaccinations | 12.1 Vaccination | http://loinc.org/11369-6 |
13 vital signs and measurements | 13.1 Blood pressure | http://loinc.org/85354-9 |
13.2 Body weight | http://loinc.org/29463-7 | |
13.3 Body height | http://loinc.org/8302-2 | |
14 Results | 14.1 Laboratory test result | http://snomed.info/sct/15220000 |
15 Procedures | 15.1 Procedure | http://snomed.info/sct/71388002 |
16 Encounters | 16.1 Encounter | http://loinc.org/46240-8 |
17 Planned care activity | 17.1 Procedure | PM |
18 Care Setting | 18.1 Health professional | http://snomed.info/sct/229774002 |
18.2 Healthcare provider | Data are exchanges as part of other BgZ components. | |
19 Meta data | 19.1 Meta data | http://loinc.org/67723-7 |
Table 5.1 FHIR Task.input Query Specification
5.6 Referenced BgZ FHIR Resources
Each FHIR profile contains a 'mappings' tab that reflects the identifiers, found at release 2017 zibs/HCIMs. The reader should take note of the 'Relating FHIR profiles with their functional definitions' regarding mappings in FHIR.
Table 5.2 Referenced BgZ FHIR Resources
6 Infrastructure
6.1 Generic Infrastructure
The implementation guideline assumes that a generic infrastructure is available to provide for services like:
- Identification [NEN-7518] (of client and provider - who are you?)
- Authentication [NEN-7518] (establish that you really are who you say)
- Localization [NEN-7519] (where/what information known about the client and provider?)
- Consent [NEN-7517] (from the patient for the sharing of medical information)
- Authorization (what information are you allowed to access?)
- Addressing (digital address of provider or organization)
- Logging [NEN-7513] (audit trail - who did what, where, when and why?)
6.2 Expiration Time (exp) Claim
The "exp" (expiration time) claim identifies the expiration time on or after which the JWT MUST NOT be accepted for processing.
The value of the expiration time used in this Implementation Guide is (to be filled in).
7 References
Reference | Document Title | Date, Version, Source |
[1] | Technical Agreement - Exchanging FHIR Data using a generic Notified Pull mechanism | Version: 1.0.0 06-03-24 |
8 Release Notes
Changes compared to previous release.
BITS ticket | Short description |
---|---|
NICTIZ-14769 | Ontwikkelen/schrijven van de TO in de wiki |
NICTIZ-18044 | BgZ-MSZ TO - review commentaren Gabriel/Iwo bijwerken |
NICTIZ-18045 | BgZ-MSZ TO - aanpassing ivm "Notified Pull – Hoe toe te passen in een informatiestandaard" |
MSZ-139 | BgZ-MSZ alpha 2.0 Technical Design Feedback |