MedMij FHIR Implementation Guide: iWlz 1.0 Proof of concept (1.0-poc1)
Draft version not suitable for implementation. The latest published version can be found here. |
This version will be tested in a proof of concept and should not be used outside this POC |
Inhoud
1 Introduction
This page describes the exchange of iStandaard Wet langdurige zorg (iWlz) related resources using the HL7 FHIR standard. This page and all the materials provided on it are in beta version, with a goal of testing the exchange trough a Proof of Concept (PoC) within MedMij.
This IG is a technical representation of the functional design and follows the principles of the general MedMij FHIR IG.
2 Actors involved
The table shows the relevant actors, systems and FHIR CapabilityStatements. The CapabilityStatements demonstrate the minimum conformance requirements for the described use cases.
Actors | Systems | FHIR CapabilityStatements | |||
---|---|---|---|---|---|
Name | Description | Name | Description | Name | Description |
Client | The user of a personal healthcare environment | PHR | Personal health record | CapabilityStatement: Client | FHIR Client requirements |
Healthcare professional | The user of a XIS | XIS | Healthcare information system | CapabilityStatement: Server | FHIR Server requirements |
3 Boundaries and relationships
This FHIR implementation guide assumes that the PHR system is able to make a connection to search resources at the XIS. It does not provide information on finding the right XIS nor does it provide information about security. These infrastructure and interface specifications are described in the 'MedMij Afsprakenstelsel'.
The MedMij 2020.01 FHIR IG is applicable to the PoC mentioned in the introduction, unless specifically noted. Some parts of this IG, where noted, are only relevant to the PoC.
Because of the specific use cases to be tested within the PoC, 'closed modeling' as specified in the FHIR STU3 Profiling Guidelines has been chosen over 'open modeling'. This allows implementers to focus on the elements that are needed for a successful exchange within the PoC. It is expected that in future versions, 'open modeling' will again be preferred in line with other information standards.
There are two pairs of Questionnaire/QuestionnairResponse resources used within this standard, one of which is being used to capture Client input. For the PoC this Questionnaire is assumed to be static. In future iterations, the use case could be extended to first retrieve the latest version of the Questionnaire from the XIS that will be used by the client to provide a QuestionnaireResponse, which is the use case of the Questionnaires information standard. Discussions on how this standard would incorporate the Questionnaires standard are ongoing.
Within the PoC, 'abonneren' (subscribe) and 'notificeren' (notify) mechanisms are to be tested. These mechanisms are not part of the FHIR IG, their specifications can be found at MedMij Afsprakenstelsel (abonneren, notificeren).
4 Use case: retrieve 'indicatiegegevens'
The 'indicatiegegevens' are built up of individual FHIR resources, selected by the user of the XIS to form a coherent set of information relevant to the client. The Composition resource assembles the references to all individual related FHIR resources. For this purpose, the Composition profile described in FHIR profiles SHALL be used.
Retrieving all 'indicatiegegevens' is a two-step process. Firstly, the available Composition resources are retrieved. The PHR, or the client of the PHR, selects the desired Composition. The Composition.id
of the selected Composition is used for the second step in which all related information is retrieved.
The first step can be omitted, if a different mechanism to transfer the Composition.id
to the PHR is implemented.
4.1 Retrieve all Composition resources
Using a search operation, the PHR retrieves Composition resources that represent the 'indicatiebesluit' from the XIS using the following predefined search operation.
GET [base]/Composition?type=http://snomed.info/sct|304784009
The PHR (or its client) filters the selects or filters the Composition.id
of the 'indicatiebesluit' that is to be retrieved in full. In most cases, only one Composition resource is available, but otherwise the most recent Composition (base on Composition.date
) should generally be selected.
4.2 Retrieve selected Composition document Bundle
The PHR uses the Composition.id
retrieved during the preceding step and the $document
operation to retrieve both the Composition and all referenced resources as a single document Bundle.
GET [base]/Composition/[id]/$document
Note: the Composition lists just the resources that act as entry points for the various concepts in the transaction, but each of these referenced resources may further refer to other resources not listed there. The server SHALL produce a complete Bundle containing not only the resources listed directly in the Composition, but all the indirectly referenced resources as well.
The data returned to the PHR should conform the profiles listed in the table below and (if applicable) their associated HCIMs. The resources in the response message SHALL be a valid instance of these profiles.
MedMij uses the FHIR Packaging mechanism. This conveniently bundles all profiles, terminology, example material and other conformance resources you need into a single archive, which can be downloaded or installed using the appropriate FHIR tooling. This version of the information standard uses the following packages:
Note: packages use Semantic Versioning. Other versions can be used at will as long as they have the same major.minor number or a minor number higher than the stated version. |
Profile name | FHIR Resource | Based on HCIM | Canonical |
---|---|---|---|
iwlz-Indicatie | Composition | http://nictiz.nl/fhir/StructureDefinition/iwlz-Indicatie | |
iwlz-BeperkingScore | Observation | http://nictiz.nl/fhir/StructureDefinition/iwlz-BeperkingScore | |
iwlz-Persoon | Patient | Patient ContactPerson NameInformation ContactInformation |
http://nictiz.nl/fhir/StructureDefinition/iwlz-Persoon |
iwlz-GeindiceerdZorgzwaartepakket-Questionnaire | Questionnaire | http://nictiz.nl/fhir/StructureDefinition/iwlz-GeindiceerdZorgzwaartepakket-Questionnaire | |
iwlz-GeindiceerdZorgzwaartepakket-QuestionnaireResponse | QuestionnaireResponse | http://nictiz.nl/fhir/StructureDefinition/iwlz-GeindiceerdZorgzwaartepakket-QuestionnaireResponse | |
iwlz-Stoornis | Condition | http://nictiz.nl/fhir/StructureDefinition/iwlz-Stoornis | |
iwlz-StoornisScore | Observation | http://nictiz.nl/fhir/StructureDefinition/iwlz-StoornisScore |
5 Use case: send client preferences
This use case applies when a client qualifies for receiving long term care based on the WLZ and the client wants to share his preferences, contact information and contact persons.
The client preferences are based on a iwlz-Clientvoorkeuren-Questionnaire resource to be filled by the client, leading to an iwlz-Clientvoorkeuren-QuestionnaireResponse resource. The contact information and contact persons filled in or edited by the client lead to an edited iwl-Persoon Patient resource. The Patient resource that can be edited should be retrieved from the Composition document Bundle that was received during the previous use case.
5.1 Send transaction Bundle
The PHR initiates a FHIR transaction by sending an HTTP POST request composed of a FHIR Bundle resource containing one QuestionnaireResponse resource and one Patient resource to the XIS's base endpoint as shown below.
POST [base]
In this transaction Bundle, the Patient resource has an entry.request.method
of 'PUT' (update
interaction), the QuestionnaireResponse has a method
of 'POST' (create
interaction).
Note: because the PHR's client can only edit several parts of the resource, the update
interaction does not force the server to accept the entire resource as is. For example, the updated content may be reviewed before merging it with the exisitng information. Performing a read
interaction on the Patient resource shortly after 'PUT'ting an edited version may therefore lead to unexpected results. See the FHIR specification on transactional integrity for more discussion. However, it is the responsibility of the server to maintain only one version of the Patient resource.
The PHR shall guarantee consistency of all FHIR resource elements with the profiles listed in the table below and (if applicable) their associated HCIMs. The resources in the request message SHALL be a valid instance of these profiles.
MedMij uses the FHIR Packaging mechanism. This conveniently bundles all profiles, terminology, example material and other conformance resources you need into a single archive, which can be downloaded or installed using the appropriate FHIR tooling. This version of the information standard uses the following packages:
Note: packages use Semantic Versioning. Other versions can be used at will as long as they have the same major.minor number or a minor number higher than the stated version. |
Profile name | FHIR Resource | Based on HCIM | Canonical |
---|---|---|---|
iwlz-Persoon | Patient | Patient ContactPerson NameInformation ContactInformation |
http://nictiz.nl/fhir/StructureDefinition/iwlz-Persoon |
iwlz-Voorkeurscriteria-Questionnaire | Questionnaire | http://nictiz.nl/fhir/StructureDefinition/iwlz-Voorkeurscriteria-Questionnaire | |
iwlz-Voorkeurscriteria-QuestionnaireResponse | QuestionnaireResponse | http://nictiz.nl/fhir/StructureDefinition/iwlz-Voorkeurscriteria-QuestionnaireResponse |
6 Additional remarks
6.1 Terminology
Discussions with Zorginstituut Nederland are ongoing on how to release and maintain their terminology resources. At the moment, a ValueSet and CodeSystem per 'codelijst' and bound to the applicable elements in the profiles. The CodeSystem resources do not contain the actual codes. These can be found at [1] (Excel-file). Notable exception is COD1001, which is available on GitHub.
6.2 Use of Questionnaire and QuestionnaireResponse profiles
According to the FHIR specification, a QuestionnaireResponse resource can be validated against its Questionnaire counterpart. However, it is unclear if this is supported by validators. Furthermore, it is not clear if the Questionnaire profiles and instances will actually be used in the process of composing the QuestionnaireResponse resource. Therefore, both a Questionnaire and a QuestionnaireResponse profile have been created for 'Geindiceerd Zorgzwaartepakket' and 'Clientvoorkeuren'. The QuestionnaireResponse profile describes the exact information exchange between systems and can be used for validation purposes.
7 Release notes
Release notes can be found on the functional design page.