MedMij:V2020.01/FHIR BGZ 2017: verschil tussen versies
(MM-1118 + MM-437: Remove duplicated documentation on error handling and searching) |
(MM-437: Enhance guidance on search) |
||
Regel 22: | Regel 22: | ||
The patient journey of [https://www.nictiz.nl/ehealth/MedMij Thomas van Beek], provides a patients context for exchanging a patient summary from a healthcare provider's system (XIS) to a personal health record (PHR). MedMij created a [https://informatiestandaarden.nictiz.nl/wiki/MedMij:Vprepub/Ontwerpen functional design] of the BgZ use case. This use case consists of enabling a patient to view his own BgZ in a PHR. This page will elaborate further on the HL7 FHIR details needed to exchange the BgZ information using FHIR. | The patient journey of [https://www.nictiz.nl/ehealth/MedMij Thomas van Beek], provides a patients context for exchanging a patient summary from a healthcare provider's system (XIS) to a personal health record (PHR). MedMij created a [https://informatiestandaarden.nictiz.nl/wiki/MedMij:Vprepub/Ontwerpen functional design] of the BgZ use case. This use case consists of enabling a patient to view his own BgZ in a PHR. This page will elaborate further on the HL7 FHIR details needed to exchange the BgZ information using FHIR. | ||
+ | |||
+ | '''Note''': This implementation guide builds on the general guidelines described in the [[MedMij:Vprepub/FHIR_IG#Use case overarching principles|use case overarching principles]]. | ||
==Actors involved== | ==Actors involved== | ||
Regel 56: | Regel 58: | ||
The BgZ use case has similarities and differences with other use cases such as Medication Process, Vital Signs and Lab Results. These use cases use the same HCIM based FHIR profiles for exchanging information. The BgZ use case covers practically all profiles included in the other use cases. However, the BgZ differs in the scope of the actual health information content that should be exchanged. For example, the BgZ conveys only the last known lab result of each type while the Lab Results use case may cover all known information. | The BgZ use case has similarities and differences with other use cases such as Medication Process, Vital Signs and Lab Results. These use cases use the same HCIM based FHIR profiles for exchanging information. The BgZ use case covers practically all profiles included in the other use cases. However, the BgZ differs in the scope of the actual health information content that should be exchanged. For example, the BgZ conveys only the last known lab result of each type while the Lab Results use case may cover all known information. | ||
− | == | + | ==Use Case: Retrieve BGZ information== |
[[Bestand:Afsprakenstelsel-01.png|link=https://www.medmij.nl/afsprakenstelsel/|rechts |100px|Go to MedMij Afsprakenstelsel]] | [[Bestand:Afsprakenstelsel-01.png|link=https://www.medmij.nl/afsprakenstelsel/|rechts |100px|Go to MedMij Afsprakenstelsel]] | ||
− | + | {{FHIR-IG-Afsprakenstelsel-Note}} | |
− | === | + | ===PHR: request message=== |
− | The PHR system requests the BgZ using individual search interactions. The BgZ consists of multiple FHIR resources with certain constraints. To obtain the patient's | + | The PHR system requests the BgZ using individual [https://www.hl7.org/fhir/stu3/search.html search] interactions. The BgZ consists of multiple FHIR resources with certain constraints. To obtain the patient's BgLZ, the client can use multiple individual search operations based on specified search queries. The interactions are performed by an HTTP GET as shown: |
− | <code>GET [base]/[type] | + | <code>GET [base]/[type]{?[parameters]}</code> |
− | The table below shows in the first four columns the | + | The table below shows in the first four columns the BgLZ sections, the HCIMs that constitute those sections and the specific content of the BgZ. The last column shows the FHIR search queries to obtain the BgLZ information. These queries and expected responses are based on StructureDefinitions listed in [[#List_of_StructureDefinitions| this section]]. |
− | |||
− | |||
{| class="wikitable collapsible" width="100%" style="horizontal-align: right" | {| class="wikitable collapsible" width="100%" style="horizontal-align: right" | ||
Regel 75: | Regel 75: | ||
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:10px" | HCIM EN | !style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:10px" | HCIM EN | ||
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:10px" | Content | !style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:10px" | Content | ||
− | !style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:10px" | Search URL | + | !style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:10px" | Search URL<ref>See [[MedMij:Vprepub/FHIR_IG#Search_URLs_and_search_parameters|Search URLs and search parameters]] for the interpretation of these search URLs</ref> |
|- | |- | ||
| 1 | | 1 | ||
Regel 233: | Regel 233: | ||
| <pre style="font-style: italic;">see Patient</pre> | | <pre style="font-style: italic;">see Patient</pre> | ||
|} | |} | ||
+ | <references/> | ||
{{Sjabloon:Voorbeelden}} | {{Sjabloon:Voorbeelden}} | ||
− | === | + | ===XIS: response message=== |
The returned data to the PHR should conform to the profiles listed in [[#List_of_StructureDefinitions]]. | The returned data to the PHR should conform to the profiles listed in [[#List_of_StructureDefinitions]]. | ||
− | == | + | ===The <code>lastn</code> operation=== |
− | |||
− | |||
− | |||
− | The | ||
− | |||
− | |||
− | |||
The following [http://hl7.org/fhir/STU3/operations.html operation] is needed for this use case. | The following [http://hl7.org/fhir/STU3/operations.html operation] is needed for this use case. | ||
* [http://hl7.org/fhir/STU3/observation-operations.html#lastn Last N Observations Query] | * [http://hl7.org/fhir/STU3/observation-operations.html#lastn Last N Observations Query] | ||
− | The lastn query meets the common need for searching for the most recent or last n=number of observations for a subject. For example, retrieving the last 5 temperatures for a patient to view trends or fetching the most recent laboratory results or vital signs. The link will provide more detailed information and examples regarding this operation. | + | The <code>lastn</code> query meets the common need for searching for the most recent or last n=number of observations for a subject. For example, retrieving the last 5 temperatures for a patient to view trends or fetching the most recent laboratory results or vital signs. The link will provide more detailed information and examples regarding this operation. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | The FHIR STU3 specification is vague regarding the sorting mechanism of <code>lastn</code>. In FHIR R4 however, this has been clarified and can be read as follows: when using <code>lastn</code>, the <code>effective[x]</code> element is used for sorting of Observations, sorted from most recent to the oldest. | |
− | + | _include] | |
==List of StructureDefinitions== | ==List of StructureDefinitions== |
Versie van 29 jul 2020 om 16:23
MedMij:Vprepub/Issuebox FHIR IG
Inhoud
1 Introduction
The program ‘Registratie aan de bron’ (Clinical documentation at the point of care) has defined Health and Care Information models (HCIMs (English) or zibs (Dutch)) for The Netherlands. Next to these HCIMs, the program ‘Registratie aan de bron’ also made a selection of these HCIMs into the so-called ‘Basisgegevensset Zorg’ (Common Clinical Dataset, a Dutch version of a ‘patient summary’, further referred to as ‘BgZ’). The BgZ serves as a minimal healthcare dataset that is always appropriate for caregivers in order to provide continuity of care for a patient and can be seen as a representation of a patient summary.
A subselection of the published HCIMs release 2017 constitute the BgZ 2017. The BgZ makes a subselection of the information concepts within the HCIMs or restricts the HCIMs to a certain category. For example, only include the general practitioner of the patient or only the last known value of 'X'. MedMij created FHIR profiles that represent these HCIMs completely if no existing and usable profiles were available. The profiles represent their entire respective HCIM, to make them applicable in a broader context than a patient summary or even the MedMij context. An overview of the profiles can be found at the list of StructureDefinitions.
The patient journey of Thomas van Beek, provides a patients context for exchanging a patient summary from a healthcare provider's system (XIS) to a personal health record (PHR). MedMij created a functional design of the BgZ use case. This use case consists of enabling a patient to view his own BgZ in a PHR. This page will elaborate further on the HL7 FHIR details needed to exchange the BgZ information using FHIR.
Note: This implementation guide builds on the general guidelines described in the use case overarching principles.
2 Actors involved
Actors | Systems | FHIR Capability Statements | |||
---|---|---|---|---|---|
Name | Description | Name | Description | Name | Description |
Patient | The user of a personal healthcare enviorment. | PHR | Personal health record | Client@ http://nictiz.nl/fhir/CapabilityStatement/bgz2017-clientcapabilities | FHIR Client requirements |
Healthcare professional | The user of a XIS | XIS | Healthcare information system | Server@ http://nictiz.nl/fhir/CapabilityStatement/bgz2017-servercapabilities | FHIR Server requirements |
3 Boundaries and Relationships
The BgZ 2017 v1.1 use case follows the BgZ v1.0 use case. The difference between the two is the underlying HCIMs, which have been upgraded from release 2015 to release 2017. The changes are documented in a release notes document.
The BgZ use case has similarities and differences with other use cases such as Medication Process, Vital Signs and Lab Results. These use cases use the same HCIM based FHIR profiles for exchanging information. The BgZ use case covers practically all profiles included in the other use cases. However, the BgZ differs in the scope of the actual health information content that should be exchanged. For example, the BgZ conveys only the last known lab result of each type while the Lab Results use case may cover all known information.
4 Use Case: Retrieve BGZ information
This FHIR implementation guide assumes that the PHR system is able to make a connection to the right XIS that contains the patient's information. It does not provide information on finding the right XIS nor does it provide information about security. Moreover, each transaction is performed in the context of a specific authenticated patient, for whose context (token) has been established using the authentication mechanisms described in the 'Afsprakenstelsel'. Each XIS Gateway is required to perform filtering based on the patient associated with the context for the request, so only the records associated with the authenticated patient are returned. For this reason, search parameters should not be included for patient identification.
4.1 PHR: request message
The PHR system requests the BgZ using individual search interactions. The BgZ consists of multiple FHIR resources with certain constraints. To obtain the patient's BgLZ, the client can use multiple individual search operations based on specified search queries. The interactions are performed by an HTTP GET as shown:
GET [base]/[type]{?[parameters]}
The table below shows in the first four columns the BgLZ sections, the HCIMs that constitute those sections and the specific content of the BgZ. The last column shows the FHIR search queries to obtain the BgLZ information. These queries and expected responses are based on StructureDefinitions listed in this section.
# | BgZ Section | HCIM EN | Content | Search URL[1] | ||||
---|---|---|---|---|---|---|---|---|
1 | Patient information | Patient | Identification, birth date, gender, deceased indicator, contact details, last known marital status, and general practitioner (practitioner or organization) | GET [base]/Patient?_include=Patient:general-practitioner | ||||
2 | Payment details | Payer | Insurance information | GET [base]/Coverage?_include=Coverage:payor:Patient&_include=Coverage:payor:Organization | ||||
3 | Treatment directives | TreatmentDirective | Known treatment directives | GET [base]/Consent?category=http://snomed.info/sct|11291000146105 | ||||
AdvanceDirective | Known advance directives | GET [base]/Consent?category=http://snomed.info/sct|11341000146107 | ||||||
4 | Contact persons | ContactPerson | First relation/contact | see Patient | ||||
5 | Functional status | FunctionalOrMentalStatus | Last known functional / mental status | GET [base]/Observation/$lastn?category=http://snomed.info/sct|118228005,http://snomed.info/sct|384821006 | ||||
6 | Problems | Concern | All known problems | GET [base]/Condition | ||||
7 | Social history | LivingSituation | Current living situation | GET [base]/Observation/$lastn?code=http://snomed.info/sct|365508006 | ||||
DrugUse | All known drug use | GET [base]/Observation?code=http://snomed.info/sct|228366006 | ||||||
AlcoholUse | All known alcohol use | GET [base]/Observation?code=http://snomed.info/sct|228273003 | ||||||
TobaccoUse | All known tobacco use | GET [base]/Observation?code=http://snomed.info/sct|365980008 | ||||||
NutritionAdvice | All known current dietary recommendations | GET [base]/NutritionOrder | ||||||
8 | Alerts | Alert | All known alerts | GET [base]/Flag | ||||
9 | Allergies | AllergyIntolerance | All known information regarding allergies | GET [base]/AllergyIntolerance | ||||
10 | Medication | MedicationUse | Known 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:medication | ||||
MedicationAgreement | Known medication agreements | GET [base]/MedicationRequest?category=http://snomed.info/sct|16076005&_include=MedicationRequest:medication | ||||||
AdministrationAgreement | Known administration agreements | GET [base]/MedicationDispense?category=http://snomed.info/sct|422037009&_include=MedicationDispense:medication | ||||||
11 | Medical aids | MedicalAid | Known medical aids | GET [base]/DeviceUseStatement?_include=DeviceUseStatement:device | ||||
12 | Vaccinations | Vaccination | Known vaccinations | GET [base]/Immunization?status=completed | ||||
13 | Vital signs | BloodPressure | Last known blood pressure | GET [base]/Observation/$lastn?code=http://loinc.org|85354-9 | ||||
BodyWeight | Last known body weight | GET [base]/Observation/$lastn?code=http://loinc.org|29463-7 | ||||||
BodyHeight | Last known body height | GET [base]/Observation/$lastn?code=http://loinc.org|8302-2,http://loinc.org|8306-3,http://loinc.org|8308-9 | ||||||
14 | Results | LaboratoryTestResult | Last known laboratory results per type | GET [base]/Observation/$lastn?category=http://snomed.info/sct|275711006&_include=Observation:related-target&_include=Observation:specimen | ||||
15 | Procedures | Procedure | Known surgical procedures | GET [base]/Procedure?category=http://snomed.info/sct|387713003 | ||||
16 | Encounters | Contact | Known hospital admissions (no outpatient contacts) | GET [base]/Encounter?class=http://hl7.org/fhir/v3/ActCode|IMP,http://hl7.org/fhir/v3/ActCode|ACUTE,http://hl7.org/fhir/v3/ActCode|NONAC | ||||
17 | Planned care | PlannedCareActivityForTransfer | Known planned care activities |
GET [base]/ProcedureRequest?status=active GET [base]/ImmunizationRecommendation GET [base]/MedicationDispense?category=http://snomed.info/sct|422037009&status=in-progress,preparation&_include=MedicationDispense:medication
GET [base]/DeviceRequest?status=active&_include=DeviceRequest:device GET [base]/Appointment?status=booked,pending,proposed | ||||
18 | General practitioner | HealthProfessional | General Practitioner of the patient | see Patient |
- ↑ See Search URLs and search parameters for the interpretation of these search URLs
Example instances of FHIR resources can be found on Simplifier. Please note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of any information standard.
4.2 XIS: response message
The returned data to the PHR should conform to the profiles listed in #List_of_StructureDefinitions.
4.3 The lastn
operation
The following operation is needed for this use case.
The lastn
query meets the common need for searching for the most recent or last n=number of observations for a subject. For example, retrieving the last 5 temperatures for a patient to view trends or fetching the most recent laboratory results or vital signs. The link will provide more detailed information and examples regarding this operation.
The FHIR STU3 specification is vague regarding the sorting mechanism of lastn
. In FHIR R4 however, this has been clarified and can be read as follows: when using lastn
, the effective[x]
element is used for sorting of Observations, sorted from most recent to the oldest.
_include]
5 List of StructureDefinitions
The profiles represent their entire respective HCIM, to make them applicable in a broader context than the exchange of BgZ or a MedMij context. An example of reuse of existing profiles is those of the patient administration resources and vital signs.
MedMij uses the FHIR Packaging mechanism. This conveniently bundles all examples, profiles and other conformance resources you need into a single download. For more background information see the the FHIR implementation guide. This version of the information standard depends on Nictiz package 1.3.x. Please note that the direct links to the various conformance resources below will take you to the latest version, which might not match the package version. At time of writing, there is no way to render the conformance resource as found in the package. This is on the roadmap for Simplifier. |
6 Terminology, NamingSystems, Mappings
6.1 Terminology
Relevant value sets can be found using the ValueSet category. All resources can be downloaded in a .zip in XML or JSON format. In the .zip, the value sets are stored in the directory 'value sets'.
6.2 NamingSystems
Relevant NamingSystems can be found using the NamingSystem category.
6.3 Mappings
A FHIR ConceptMap resource is provided when a FHIR value set is used instead of a HCIM value set. A ConceptMap maps the values between the two value sets. These ConceptMaps can be found here.
An explanation about mappings can be found at Mapping of coded concepts.
7 Release notes
Release notes can be found on the functional design page.