 |
This article or section is in the middle of an expansion or major restructuring and is not yet ready for use. |
For an overview of all current documentation see information standard lab exchange main page
1 Introduction
This is the technical design (TO) for the information standard (IS) Lab Exchange. This TO must be used together with the IS functional design, see functional design Lab 4.0.0. The data exchange format used in this version is: FHIR R4.
1.1 Support
For questions, feedback, or change requests, please contact our support team at Nictiz Servicemanagement.
1.2 Boundaries
This information standard may overlap with other standards related to identification, roles, and geographic classifications, requiring careful alignment to ensure consistency and avoid duplication. For more information, see functional design Lab 4.0.0.
1.3 Prerequisite knowledge
The following background information is required for understanding this TO:
2 Relationships
The diagrams below show the relationships between different FHIR profiles. The arrows indicate an “is referenced in” relationship.
For example, Patient → Laboratory Test means that the Patient is referenced within the Laboratory Test resource.
2.1 Model overview for usecases without the request
2.2 Model overview for usecase with the request
3 Components
HL7 FHIR is used to accommodate the Dutch Clinical Information Models (zibs) used in the IS.
3.1 HL7 FHIR R4
3.1.1 Artifacts
The artifacts of the information standard are presented in the following table:
3.1.2 Examples of FHIR instances
You can find examples of FHIR-instances (filled-in FHIR profiles) in the Nictiz GitHub repository: Lab exchange HL7-mappings repository.
4 Transactions
4.1 Lab2Healthcare (Lab2Zorg)
4.1.1 Health professional orders lab tests and receives results
4.1.1.1 Involved actors
| Transaction group |
Transaction |
Actor |
System role code |
FHIR CapabilityStatement
|
| Send laboratory results based on a request
|
Send laboratory results based on a request |
Client |
LAB-LAS |
Lab2Healthcare_Results_SendReceive
|
| Receive laboratory results |
Server |
LAB-LAO
|
Abbreviations: LAB = Laboratorium, LAS = Laboratoriumresultaat antwoord sturend (systeem), LAO = Laboratoriumresultaat antwoord ontvangend (systeem).
4.1.2 Health professional retrieves lab results
4.1.2.1 Involved actors
| Transaction group |
Transaction |
Actor |
System role code |
FHIR CapabilityStatement
|
| Retrieve laboratory results (PULL)
|
Retrieve laboratory results request |
Client |
LAB-LRR |
Lab2Healthcare_Results_RetrieveServe
|
| Retrieve laboratory results response |
Server |
LAB-LRB
|
Abbreviations: LAB = Laboratorium, LRR = Laboratoriumresultaat raadplegend (systeem), LRB = Laboratoriumresultaat beschikbaarstellend (systeem).
4.1.2.2 Search parameters
The search interaction is performed by an HTTP GET in agreement with the FHIR specification. The table below lists search parameters that SHALL be supported for processing by servers and MAY be supported by clients.
For brevity of the table, the column names are not descriptive, hence a short explanation on what each column means:
- FHIR Search Parameter is the name of the parameter. We abuse terminology here, by including
$lastn in this table, which technically is an operation on Observation.
- Data type refers to the data type of the value expected for a given parameter in a search request.
- Description is a short explanation of the purpose of the parameter in the context of this use case.
- Inclusion determines whether a parameter is required to appear within a single search request. SHALL means that it is mandatory to use this parameter for any search request in this use case. MAY means that it is optional.
- Repetition indicates whether a parameter may appear once or multiple times within a single search request.
- Combination logic describes how multiple occurrences of the same parameter are logically combined (AND/OR) when the parameter is repeated within a single search request. For general behavior regarding AND/OR logic, see the section about the use of search parameters in the IG.
- FHIR Resource refers to which resource the search parameter applies in this use case.
In some cases, a column is not applicable to a specific parameter. In that case we use the flag "n/a".
| FHIR Search Parameter |
Data type |
Description |
Inclusion |
Repetition |
Combination logic |
FHIR Resource
|
category |
CodeableConcept |
Search on laboratory observations (the value is fixed to laboratory) |
SHALL |
no |
n/a |
Observation
|
patient:identifier |
Identifier |
Search in a specific patient context |
SHALL |
no |
n/a |
Observation
|
code |
CodeableConcept |
Search on test code (LOINC/NHG) |
MAY |
yes |
with AND/OR |
Observation
|
date (with prefix gt) |
dateTime |
Search on observation date later than the value |
MAY |
no |
n/a |
Observation
|
date (with prefix lt) |
dateTime |
Search on observation date earlier than the value |
MAY |
no |
n/a |
Observation
|
$lastn |
n/a |
Search for the most recent observation |
MAY |
no |
n/a |
Observation
|
max |
positiveInt |
Search for last n observations. Must be used as a parameter to operation $lastn |
MAY |
no |
n/a |
Observation
|
_include |
Resource |
Include linked resources (e.g. Specimen, Patient, Organization) in the response bundle |
MAY |
yes |
with AND |
Observation
|
_include:iterate |
Resource |
Include linked resources iteratively |
MAY |
yes |
with AND |
Observation
|
4.1.2.3 Search examples
| Show all laboratory results with test code 14683-7 (LOINC) of the patient with BSN 111222333
|
GET [base]/Observation?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&patient:identifier=http://fhir.nl/fhir/NamingSystem/bsn|111222333&code=http://loinc.org|14683-7
|
| Show all laboratory results with test code 14683-7 (LOINC) of the patient with BSN 111222333 from 12 March 2022
|
GET [base]/Observation?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&patient:identifier=http://fhir.nl/fhir/NamingSystem/bsn|111222333&code=http://loinc.org|14683-7&date=gt2022-12-03
|
| Show all laboratory results with test code 14683-7 (LOINC) of the patient with BSN 111222333 between 12 March 2022 and 7 June 2022
|
GET [base]/Observation?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&patient:identifier=http://fhir.nl/fhir/NamingSystem/bsn|111222333&code=http://loinc.org|14683-7&date=gt2022-12-03&date=lt2022-07-06
|
| Show all laboratory results with test code 14683-7 (LOINC) or 3583 (NHG) of the patient with BSN 111222333
|
GET [base]/Observation?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&patient:identifier=http://fhir.nl/fhir/NamingSystem/bsn|111222333&code=http://loinc.org|14683-7,https://referentiemodel.nhg.org/tabellen/nhg-tabel-45-diagnostische-bepalingen|3583
|
| Show the most recent laboratory result with test code 14683-7 (LOINC) of the patient with BSN 111222333
|
GET [base]/Observation/$lastn?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&patient:identifier=http://fhir.nl/fhir/NamingSystem/bsn|111222333&code=http://loinc.org|14683-7
|
| Show the five most recent laboratory results with test code 14683-7 (LOINC) of the patient with BSN 111222333
|
GET [base]/Observation/$lastn?max=5&category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&patient:identifier=http://fhir.nl/fhir/NamingSystem/bsn|111222333&code=http://loinc.org|14683-7
|
| Show the most recent laboratory result of the patient with BSN 111222333
|
GET [base]/Observation/$lastn?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&patient:identifier=http://fhir.nl/fhir/NamingSystem/bsn|111222333
|
4.1.3 Health professional sends lab results to other health professional
4.1.3.1 Involved actors
| Transaction group |
Transaction |
Actor |
System role code |
FHIR CapabilityStatement
|
| Send laboratory results (PUSH)
|
Send laboratory results |
Client |
LAB-LRS |
Lab2Healthcare_Results_SendReceive
|
| Receive laboratory results |
Server |
LAB-LRO
|
Abbreviations: LAB = Laboratorium, LRS = Laboratoriumresultaat sturend (systeem), LRO = Laboratoriumresultaat ontvangend (systeem).
4.2 Lab2Lab
4.2.1 Laboratory outsources test request
4.2.1.1 Involved actors
| Transaction group |
Transaction |
Actor |
System role code
|
| Outsourcing laboratory test request (PUSH)
|
Send outsourcing request |
Client |
LAB-OUS
|
| Receive outsourcing request |
Server |
LAB-OUO
|
4.2.2 Laboratory sends outsourced test result
4.2.2.1 Involved actors
| Transaction group |
Transaction |
Actor |
System role code
|
| Outsourced laboratory test result (PUSH)
|
Send outsourced test result |
Server |
LAB-RIS
|
| Receive outsourced test result |
Client |
LAB-RIO
|
4.3 Lab2PublicHealth
4.3.1 Laboratory sends laboratory results for public health monitoring
4.3.1.1 Involved actors
| Transaction group |
Transaction |
Actor |
System role code
|
| Notification of laboratory results (PUSH)
|
Send laboratory result report |
Client |
LAB-RAS
|
| Receive laboratory result report |
Server |
LAB-RAO
|
4.4 Lab2Patient
4.4.1 Patient retrieves laboratory results in their PGO
4.4.1.1 Involved actors
| Transaction group |
Transaction |
Actor |
System role code
|
| Retrieve laboratory results (PULL)
|
Retrieve laboratory results request |
Client |
LAB-LRR-PGO
|
| Retrieve laboratory results response |
Server |
LAB-LRB-PGO
|
Abbreviations: LAB = Laboratorium, LRR = Laboratoriumresultaat raadplegend (systeem), LRB = Laboratoriumresultaat beschikbaarstellend (systeem), PGO = Persoonlijke gezondheidsomgeving.
4.4.1.2 Search parameters
| FHIR Search Parameter |
Description |
FHIR Resource |
Example
|
| Retrieve laboratory results (Observation search)
|
| category |
Restrict search to laboratory observations |
Observation |
GET [base]/Observation?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory
|
| code |
Filter by laboratory test code (LOINC/NHG) |
Observation |
GET [base]/Observation?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&code=http://loinc.org|14683-7
|
| date |
Filter results based on observation date |
Observation |
GET [base]/Observation?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&date=gt2022-03-12&date=lt2022-06-07
|
| Retrieve latest laboratory results ($lastn operation)
|
| $lastn |
Retrieve most recent lab results using the $lastn operation |
Observation |
GET [base]/Observation/$lastn?max=5&category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&code=http://loinc.org|14683-7
|
| Retrieve related resources
|
| _include |
Include linked resources (Specimen, Patient, Organization) in the response bundle |
Observation |
GET [base]/Observation?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&_include=Observation:specimen&_include=Observation:patient&_include=Observation:performer
|
All queries are executed in the authenticated patient context as per MedMij Afsprakenstelsel; no patient search parameters are used.