MedMij:V2019.01 FHIR MedicationProcess: verschil tussen versies

Uit informatiestandaarden
Naar navigatie springen Naar zoeken springen
k (Tekst vervangen - "pkgVersion=1.3.10" door "pkgVersion=1.3.12")
(MM-3017: Link gewijzigd van https://simplifier.net/NictizSTU3-Zib2017/~packages naar https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017)
Regel 125: Regel 125:
 
'''Note''' that the medication building blocks are grouped per 'medication treatment' conform the [https://informatiestandaarden.nictiz.nl/wiki/mp:V9.0.7_Ontwerp_medicatieproces#Medicamenteuze_behandeling Medication Process specification]. Grouping SHALL be done by use of a 'medication treatment' identifier. This identifier shall be the same across different related medication resources that constitute a medication treatment. The {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/zib-Medication-MedicationTreatment|nictiz.fhir.nl.stu3.zib2017|pkgVersion=1.3.12|title=zib-Medication-MedicationTreatment extension}} is added to all medication profiles and can be used for this grouping purpose.
 
'''Note''' that the medication building blocks are grouped per 'medication treatment' conform the [https://informatiestandaarden.nictiz.nl/wiki/mp:V9.0.7_Ontwerp_medicatieproces#Medicamenteuze_behandeling Medication Process specification]. Grouping SHALL be done by use of a 'medication treatment' identifier. This identifier shall be the same across different related medication resources that constitute a medication treatment. The {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/zib-Medication-MedicationTreatment|nictiz.fhir.nl.stu3.zib2017|pkgVersion=1.3.12|title=zib-Medication-MedicationTreatment extension}} is added to all medication profiles and can be used for this grouping purpose.
  
{{NoteBoxPackage|https://simplifier.net/NictizSTU3-Zib2017/~packages|1.3.x|MedMij:V2019.01_FHIR_IG}}
+
{{NoteBoxPackage|https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017|1.3.x|MedMij:V2019.01_FHIR_IG}}
  
 
{| class="wikitable"  
 
{| class="wikitable"  
Regel 358: Regel 358:
 
'''Note''' that the medication building blocks are grouped per 'medication treatment' conform the [https://informatiestandaarden.nictiz.nl/wiki/mp:V9.0.7_Ontwerp_medicatieproces#Medicamenteuze_behandeling Medication Process specification]. Grouping SHALL be done by use of a 'medication treatment' identifier. This identifier shall be the same across different related medication resources that constitute a medication treatment. The {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/zib-Medication-MedicationTreatment|nictiz.fhir.nl.stu3.zib2017|pkgVersion=1.3.12|title=zib-Medication-MedicationTreatment extension}} is added to all medication profiles and can be used for this grouping purpose.
 
'''Note''' that the medication building blocks are grouped per 'medication treatment' conform the [https://informatiestandaarden.nictiz.nl/wiki/mp:V9.0.7_Ontwerp_medicatieproces#Medicamenteuze_behandeling Medication Process specification]. Grouping SHALL be done by use of a 'medication treatment' identifier. This identifier shall be the same across different related medication resources that constitute a medication treatment. The {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/zib-Medication-MedicationTreatment|nictiz.fhir.nl.stu3.zib2017|pkgVersion=1.3.12|title=zib-Medication-MedicationTreatment extension}} is added to all medication profiles and can be used for this grouping purpose.
  
{{NoteBoxPackage|https://simplifier.net/NictizSTU3-Zib2017/~packages|1.3.x|MedMij:V2019.01_FHIR_IG}}
+
{{NoteBoxPackage|https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017|1.3.x|MedMij:V2019.01_FHIR_IG}}
  
 
{| class="wikitable" width="1400px"
 
{| class="wikitable" width="1400px"
Regel 533: Regel 533:
 
These profiles are derived from the HCIM profiles. This use case has a very specific and stable underlying dataset. Therefore, the profiles contain many mandatory elements. Within the Medication Process dataset, there is a difference between the concept cardinalities '1..* Required' and '1..* Mandatory'.: The first means the element is required to be present, if the system possesses the information and the latter means the element should always be present. Both are mapped to a mandatory cardinality in the FHIR profiles. If the XIS is not able to provide the required information for a mandatory element, it shall use a [http://hl7.org/fhir/STU3/extension-iso21090-nullflavor.html nullFlavor extension] to indicate that and why the information is not present. The PHR should be able to process nullFlavor extensions and values.  
 
These profiles are derived from the HCIM profiles. This use case has a very specific and stable underlying dataset. Therefore, the profiles contain many mandatory elements. Within the Medication Process dataset, there is a difference between the concept cardinalities '1..* Required' and '1..* Mandatory'.: The first means the element is required to be present, if the system possesses the information and the latter means the element should always be present. Both are mapped to a mandatory cardinality in the FHIR profiles. If the XIS is not able to provide the required information for a mandatory element, it shall use a [http://hl7.org/fhir/STU3/extension-iso21090-nullflavor.html nullFlavor extension] to indicate that and why the information is not present. The PHR should be able to process nullFlavor extensions and values.  
  
{{NoteBoxPackage|https://simplifier.net/NictizSTU3-Zib2017/~packages|1.3.x|MedMij:V2019.01_FHIR_IG}}
+
{{NoteBoxPackage|https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017|1.3.x|MedMij:V2019.01_FHIR_IG}}
  
 
{| class="wikitable" width="1400px"
 
{| class="wikitable" width="1400px"

Versie van 25 mrt 2022 15:51



Naar medmij.nl
Medication process
AfsprakenstelselFunctionalTecnicalAfspraken-Functioneel-Technisch

1 Introduction

Go to functional design

This page describes patient's use cases, in a personal health record (PHR) context, in relation to the information standard Medication Process (MP). These use cases are based on version 9.x of this standard. Functional specification of these use cases are described in the functional design wiki page. The technical specification is described here. HL7 FHIR STU3 is used for this purpose.

The Medication Process information building blocks are adopted by 'Registratie aan de Bron' and converted to Health and Care Information models (HCIM), also called zibs. In order to exchange medication information between systems, FHIR representations of these HCIMs are made and used in the transactions described on this page.

Use cases:

2 Actors involved

Persons Systems FHIR Capability Statements
Name Description Name Description Name Description
Patient The user of a personal healthcare enviorment. PHR Personal health record Verwijzing.png CapabilityStatement: Client Medication process client requirements
Healthcare professional The user of a XIS XIS Healthcare information system Verwijzing.png CapabilityStatement: Server Medication process server requirements

3 Use case: retrieve medication overview

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.

3.1 Introduction

The retrieve medication overview transaction is used by the PHR to retrieve a medication overview from the XIS.

3.2 Actors

Transaction group Transaction Actor Role
Retrieve Medication Overview(PULL) Retrieve medication overview request Patient (using a PHR) Request medication overview from the XIS
Retrieve medication overview response Healthcare professional (using a XIS) Serves medication overview to the PHR

3.3 Invocations

3.3.1 PHR: request message

This message uses an extended operation on the RESTful API to obtain a medication overview from a XIS. This operation is used because the XIS needs to play an active role in formulating the content of the response.

3.3.1.1 Trigger Events

When the patient (PHR) wants to obtain the current medication overview, it issues a retrieve medication overview request message.

3.3.1.2 Message Semantics

The PHR executes a medication-overview operation with HTTP POST against the XIS's base endpoint as shown below.

POST [base]/$medication-overview
3.3.1.2.1 Expected Actions

The XIS shall process the operation to find or generate and return the current medication overview.

3.3.2 XIS: response message

The XIS returns a HTTP Status code appropriate to the processing of the operation as well as a Bundle of type 'searchset', containing one List and one Patient resource along with other resources that represent the Medication Overview.

3.3.2.1 Trigger Events

The XIS completed processing of the retrieve medication overview request message.

3.3.2.2 Message Semantics

Based on the medication-overview operation processing results, the XIS will either return an error or success. When the XIS needs to report an error, it shall use HTTP error response codes and shall include a FHIR OperationOutcome resource with more details on the failure. If the request message is processed successfully, whether or not a Medication Overview is found or generated, the HTTP status code shall be 200.

The body of the response message shall be a Bundle resource of type "searchset". The following section will elaborate on the content included.

If the XIS is sending warnings, the Bundle resource shall also contain a FHIR OperationOutcome resource that contains those warnings. The FHIR specification describes the relevant sections:

3.3.2.2.1 Message content

The outcome of the medication-overview operation is the body of the medication overview request message. Successful processing of this operation should result in a Bundle recourse, containing one List and one Patient resource as entries along with all the resources that represent the current medication overview. These resources SHALL be referenced from the List resource. The clinical content of the medication overview is defined in the Medication Process specification. The functional dataset of the medication overview can be found on decor.nictiz.nl.

The content in the response message SHALL be a valid instance of the following profiles. Clicking on the link will open the formal definition on Simplifier.net.

The Bundle profile represents the structure of the retrieve medication overview response message. The List profile represents the actual medication overview. The List contains the medication overview metadata and references to all resources that constitute the medication overview. These resources are included in the Bundle as entries. The Bundle.total value contains the number of matching HCIMs: MedicationUse, AdministrationAgreement and MedicationAgreement. Other included resources, such as Medication resources, are not included in the total. The returned Bundle has at least one List and one Patient resource.

All returned resources to the PHR, including the Bundle and List, SHALL include their related profile canonical URL in the meta.profile element in order to show compliance. The resources in the response message SHALL be a valid instance of these profiles. In the table below, the HCIMs that constitute the clinical content of the Medication Overview and their respective profiles are listed.

Note that the medication building blocks are grouped per 'medication treatment' conform the Medication Process specification. Grouping SHALL be done by use of a 'medication treatment' identifier. This identifier shall be the same across different related medication resources that constitute a medication treatment. The zib-Medication-MedicationTreatment extension is added to all medication profiles and can be used for this grouping purpose.

HCIM name NL HCIM name EN FHIR Resource FHIR Profile
Patient Patient Patient http://fhir.nl/fhir/StructureDefinition/nl-core-patient
Zorgverlener HealthProfessional Practitioner http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner
Zorgaanbieder HealthcareProvider Organization http://fhir.nl/fhir/StructureDefinition/nl-core-organization
Medicatiegebruik MedicationUse MedicationStatement http://nictiz.nl/fhir/StructureDefinition/zib-MedicationUse
Toedieningsafspraak AdministrationAgreement MedicationDispense http://nictiz.nl/fhir/StructureDefinition/zib-AdministrationAgreement
Medicatieafspraak MedicationAgreement MedicationRequest http://nictiz.nl/fhir/StructureDefinition/zib-MedicationAgreement
Product Product Medication http://nictiz.nl/fhir/StructureDefinition/zib-Product
GebruiksInstructie InstructionsForUse Dosage (datatype) http://nictiz.nl/fhir/StructureDefinition/zib-InstructionsForUse

3.3.2.3 Expected Actions

The PHR processes the results according to application-defined rules. The PHR should be robust as the response may contain medication information resources as mentioned in the former section.

3.4 Interactions, operations, search parameters

3.4.1 Interactions

No interactions are needed for the retrieve medication overview transaction.

3.4.2 Operations

The retrieve medication overview medication operation is used for this transaction. The formal definition can be found here:

3.4.3 Search parameters

The following search parameter type needs to be supported for this transaction.

Search parameter types:

4 Use case: retrieve medication 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 Introduction

The Retrieve Medication Information transaction is used by the PHR to retrieve medication information from the XIS. The PHR can use this transaction to retrieve the desired information by searching on specific medication building blocks.

4.2 Actors

Transaction group Transaction Actor Role
Retrieve Medication Information(PULL) Retrieve medication information request Patient (using a PHR) Request medication information from the XIS
Retrieve medication information response Healthcare professional (using a XIS) Serves medication information to the PHR

4.3 Invocations

4.3.1 PHR: request message

This message uses the HTTP GET method parameterized query to obtain medication information from a XIS. Multiple different HTTP GET request messages may be needed to retrieve all medication information.

4.3.1.1 Trigger Events

When the patient (PHR) wants to obtain medication information matching various parameters, it issues a retrieve medication information request message.

4.3.1.2 Message Semantics

The PHR executes an HTTP GET against the XIS's medication FHIR endpoints. These endpoints can be one of the following:

  • MedicationRequest
  • MedicationDispense
  • MedicationStatement

The search interaction is performed by an HTTP GET conform the FHIR search specification, as shown below. This URL is configurable by the PHR by configuring the query search parameters and search control parameters to modify the behaviour of the XIS such as response format, or pagination.

GET [base]/[type]{?[parameters]{&_format=[mime-type]}}
4.3.1.2.1 Search on category code

To distinguish the medication HCIMs between each other and between general medication resources, a fixed category coding has been added to the medication HCIM profiles (listed below in the Message content section). The fixed category code is solely used for indexing and retrieval of the HCIM building blocks.

4.3.1.2.2 Including other resources in searchresults

The PHR may request that the XIS return resources related to the search results, in order to reduce the overall network delay of repeated retrievals of related resources. This is useful when the PHR is searching on a clinical resource, but for every such resource returned, the client will also need the subject (Patient resource) or prescriber (Practitioner resource) or medication that the clinical resource refers to. The client can use the _include parameter to indicate that the subject resources be included in the results. Example search:

GET [base]/MedicationRequest?category=http://snomed.info/sct|16076005&_include=MedicationRequest:medication

This search interaction finds all MedicationRequest that represent the HCIM MedicationAgreement and if present includes the referenced Medication resource.

4.3.1.3 Query Search Parameters

The PHR may supply, and the XIS SHALL be capable of processing, all query parameters listed in the table below. The XIS may choose to support additional query parameters beyond the subset listed below. Any additional query parameters supported shall be supported according to the core FHIR specification. Such additional parameters are considered out of scope for this transaction.

MP9 search parameters Description FHIR search parameter FHIR resource
Identification Search on identifier. identifier MedicationRequest, MedicationDispense, MedicationStatement
Type Search on type of medication building block (HCIM). category * / ** MedicationRequest, MedicationDispense, MedicationStatement
ProductCode Search on medication code. code MedicationRequest, MedicationDispense, MedicationStatement, Medication
UsePeriod Search on medication use in the past, present or future within the specified time period. periodofuse ** MedicationDispense, MedicationRequest
DispensePeriod Returns all medication dispenses within the specific period. whenhandedover MedicationDispense
MedicationTreatment Search on the medication treatment identifier medicationtreatment ** MedicationRequest, MedicationDispense, MedicationStatement, System Wide

* The FHIR profiles that represent the medication building blocks contain fixed code values in the .category elements to allow searching on specific medication building blocks. FHIR resource MedicationDispense does not contain a 'category' search parameter in the FHIR specification. Custom search parameters are provided.

** The search parameter consists of a custom created FHIR search parameter not represented in the FHIR specification.

4.3.1.3.1 Custom Search Parameters

The following custom search parameters are defined for this use case:

4.3.1.4 Example Searches

Identifier

1. [base]/MedicationRequest?identifier=http://example.nl/fhir/NamingSystem/MedicationRequest|999922448 
  1. Retrieves a MedicationRequest resource with the identifier 999922448.

Type

1. [base]/MedicationRequest 
2. [base]/MedicationRequest?category=http://snomed.info/sct|16076005
  1. Retrieves all MedicationRequest resources.
  2. Retrieves all MedicationRequest resources that represent a HCIM MedicationAgreement.

ProductCode

1. [base]/MedicationRequest?medication.code=urn:oid:2.16.840.1.113883.2.4.4.8|13610554
2. [base]/MedicationRequest?medication.code=urn:oid:2.16.840.1.113883.2.4.4.8|13610554&_include=MedicationRequest:medication
3. [base]/MedicationRequest?category=http://snomed.info/sct|16076005&medication.code=urn:oid:2.16.840.1.113883.2.4.4.8|13610554
  1. Retrieves all MedicationRequest resources that have Carbasalaatcalcium Sandoz 600 30 as medication.
  2. Retrieves all MedicationRequest resources that have Carbasalaatcalcium Sandoz 600 30 as medication and includes the Medication resource in the search results.
  3. Retrieves all MedicationRequest resources that represent a HCIM MedicationAgreement and have Carbasalaatcalcium Sandoz 600 30 as medication

UsePeriod

1. [base]/MedicationRequest?periodofuse=ge2010-01-01
2. [base]/MedicationRequest?periodofuse=le2009-12-31
3. [base]/MedicationDispense?periodofuse=ge2010-01-01&periodofuse=le2011-12-31
4. [base]/MedicationRequest?periodofuse=eq2010-01-01
5. [base]/MedicationRequest?category=http://snomed.info/sct|16076005&periodofuse=ge2010-01-01
  1. Retrieves all MedicationRequest resources that were in effect from 01-01-2010.
  2. Retrieves all MedicationRequest resources that were in effect before 01-01-2010.
  3. Retrieves all MedicationDispense resources that were in effect within a 2 year period.
  4. Retrieves all MedicationDispense resources that were in effect on 01-01-2010.
  5. Retrieves all MedicationRequest resources that represent a HCIM MedicationAgreement and were in effect from 01-01-2010.

DispensePeriod

1. [base]/MedicationDispense?whenhandedover=ge2010-01-01
2. [base]/MedicationDispense?whenhandedover=le2009-12-31
3. [base]/MedicationDispense?whenhandedover=ge2010-01-01&whenhandedover=le2011-12-31
4. [base]/MedicationDispense?whenhandedover=eq2010-01-01
5. [base]/MedicationDispense?whenhandedover=ge2010-01-01&category=http://snomed.info/sct|373784005
  1. Retrieves all MedicationDispense resources that were handed over from 01-01-2010.
  2. Retrieves all MedicationDispense resources that were handed over before 01-01-2010.
  3. Retrieves all MedicationDispense resources that were handed over within a 2 year period.
  4. Retrieves all MedicationDispense resources that were handed over on 01-01-2010.
  5. Retrieves all MedicationDispense resources that represent a HCIM Dispense and handed over from 01-01-2010.

MedicationTreatment

1. [base]/MedicationRequest?medicationtreatment=http://example.nl/fhir/NamingSystem/medicationtreatment|1247848 
2. [base]/?medicationtreatment=http://example.nl/fhir/NamingSystem/medicationtreatment|1247848 
  1. Retrieves all MedicationRequest resources that are part of the medication treatment 1247848.
  2. Retrieves all MedicationRequest, MedicationDispense, MedicationStatement resources that are part of the the medication treatment 1247848


4.3.1.4.1 Expected Actions

The XIS shall process the query to discover the medication information that match the search parameters given.

4.3.2 XIS: response message

The XIS returns a HTTP Status code appropriate to the processing as well as a FHIR Bundle including the matching medication information.

4.3.2.1 Trigger Events

The XIS completed processing of the Retrieve medication information request message.

4.3.2.2 Message Semantics

Based on the query results, the XIS will either return an error or success. When the XIS needs to report an error, it SHALL use HTTP error response codes and SHOULD include a FHIR OperationOutcome resource with more details on the failure. If the request message is processed successfully, whether or not any medication resources are found, the HTTP status code SHALL be 200.

The response message SHALL be a Bundle resource of type "searchset" containing zero or more FHIR resources as entries. If the XIS is sending warnings, the Bundle resource SHALL also contain a FHIR OperationOutcome resource that contains those warnings. The FHIR specification describes the relevant sections:

4.3.2.2.1 Message resource content

The returned data to the PHR SHALL conform to the medication HCIMs profiles. The table below lists the medication HCIMs and their respective FHIR profiles. The resources in the response message SHALL be a valid instance of these profiles. All resources SHALL include their related profile canonical URL in the meta.profile element in order to show compliance.

Note that the medication building blocks are grouped per 'medication treatment' conform the Medication Process specification. Grouping SHALL be done by use of a 'medication treatment' identifier. This identifier shall be the same across different related medication resources that constitute a medication treatment. The zib-Medication-MedicationTreatment extension is added to all medication profiles and can be used for this grouping purpose.

HCIM name NL HCIM name EN FHIR Resource FHIR Profile
Patient Patient Patient http://fhir.nl/fhir/StructureDefinition/nl-core-patient
Zorgverlener HealthProfessional Practitioner http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner
Zorgaanbieder HealthcareProvider Organization http://fhir.nl/fhir/StructureDefinition/nl-core-organization
Medicatiegebruik MedicationUse MedicationStatement http://nictiz.nl/fhir/StructureDefinition/zib-MedicationUse
Toedieningsafspraak AdministrationAgreement MedicationDispense http://nictiz.nl/fhir/StructureDefinition/zib-AdministrationAgreement
Medicatieafspraak MedicationAgreement MedicationRequest http://nictiz.nl/fhir/StructureDefinition/zib-MedicationAgreement
Verstrekking Dispense MedicationDispense http://nictiz.nl/fhir/StructureDefinition/zib-Dispense
Verstrekkingsverzoek DispenseRequest MedicationRequest http://nictiz.nl/fhir/StructureDefinition/zib-DispenseRequest
Product Product Medication http://nictiz.nl/fhir/StructureDefinition/zib-Product
GebruiksInstructie InstructionsForUse Dosage (datatype) http://nictiz.nl/fhir/StructureDefinition/zib-InstructionsForUse

4.3.2.3 Expected Actions

The PHR shall process the results according to application-defined rules. The PHR should be robust as the response may contain medication information resources that match the query parameters.

4.4 Interactions, operations, search parameters

4.4.1 Interactions

The following logical interactions are needed for the retrieve medication information transaction:

4.4.2 Operations

No operations are defined or needed for this transaction.

4.4.3 Search parameters

The following search parameter types and search result parameters need to be supported for this transaction.

Search parameter types:

Search result parameters:

The following custom search parameters are defined for this use case:

* This SearchParameter searches on the FHIR DataType Period in the PeriodOfUse extension, which is added to profiles on MedicationRequest and MedicationDispense resources. Clients use date parameter searches as described by the FHIR specification. Servers are expected to take the MedicationUse-Duration extension into account when processing a client's search. This means that either a Period.start AND Period.end or Period.start AND Duration or Period.end AND Duration is used to determine the search results. To illustrate the expected behavior: if a Period.start and a Duration is known, but not the Period.end, the Duration should be added to the Period.start date to calculate the Period.end. The calculated Period.end date is then used to determine the search results.

5 Use case: retrieve Dispense612ToFHIRConversion from the LSP

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.

5.1 Introduction

This use case concerns the retrieval of medication dispenses and related medication information that is exchanged between healthcare providers on the 'Landelijk Schakelpunt' (LSP). Over the LSP, these medication dispenses are exchanged based on the information standard MedicationProces version 6.12 in HL7v3-messaging format. In this use case, the requested information by a PHR is converted to FHIR-resources by the XIS.

5.2 Actors

Transaction group Transaction Actor Role
Retrieve Dispense612ToFHIRConversion(PULL) Retrieve Dispense612ToFHIRConversion request Patient (using a PHR) Request Dispense612ToFHIRConversion from the XIS
Retrieve Dispense612ToFHIRConversion response Healthcare professional (using a XIS) Serves Dispense612ToFHIRConversion to the PHR

5.3 Invocations

5.3.1 PHR: request message

This message uses the HTTP GET method parameterized query to obtain medication information from a XIS.

5.3.1.1 Trigger Events

When the patient (PHR) wants to obtain Medication process Dispense 6.12 information matching various parameters, it issues a retrieve Dispense612ToFHIRConversion request message.

5.3.1.2 Message Semantics

The PHR executes an HTTP GET against the XIS's MedicationDispense FHIR endpoint. This URL is configurable by the PHR by configuring the query search parameters and search control parameters to modify the behaviour of the XIS such as response format, or pagination. The search interaction is performed by an HTTP GET compliant with the FHIR search specification as shown:

GET [base]/MedicationDispense{?[parameters]{&_format=[mime-type]}}
5.3.1.2.1 Explicit search on MedicationDispense and AdministrationAgreement

To distinguish the medication-related HCIMs between each other and between general medication resources, a fixed category coding has been added to the medication-related HCIM profiles (listed below in the Message content section). The fixed category code is solely used for indexing and retrieval of the HCIM building blocks.

For this use case, HCIMs MedicationDispense and AdministrationAgreement are requested from the XIS. Both HCIMs are represented by a MedicationDispense resource, however, the PHR makes an explicit request by searching on the category code for both HCIM's.

5.3.1.2.2 Including the Patient, Organization and Medication resources in searchresults

The PHR requests the XIS to return resources related to the MedicationDispense resources, namely the Patient, Organization and Medication resources. The _include parameter is used for this purpose. The request URL syntax is shown here:

GET [base]/MedicationDispense?category=http://snomed.info/sct|373784005,http://snomed.info/sct|422037009&_include=MedicationDispense:medication&_include=MedicationDispense:patient&_include=MedicationDispense:performer{&[parameters]{&_format=[mime-type]}}

This search interaction Retrieves MedicationDispense resources that represent a MedicationDispense or AdministrationAgreement and includes the related Patient, Organization and Medication resources in the result.

5.3.1.3 Query Search Parameters

The PHR may supply, and the XIS SHALL be capable of processing, all query parameters listed in the table below.

MP9 search parameters Description FHIR search parameter
UsePeriod Search on medication use in the past, present or future within the specified time period. periodofuse
DispensePeriod Returns all medication dispenses within the specific period, based on the dispense request date. requestdate

UsePeriod

GET [base]/MedicationDispense?category=http://snomed.info/sct|373784005,http://snomed.info/sct|422037009&periodofuse=le2011-12-31&periodofuse=ge2010-01-01&_include=MedicationRequest:medication&_include=MedicationDispense:patient&_include=MedicationDispense:performer

Retrieves MedicationDispense resources that represent a HCIM MedicationDispense or AdministrationAgreement, were in effect within a 2 year period and includes related Medication, Patient and Organization resources in the result.

DispensePeriod

GET [base]/MedicationDispense?category=http://snomed.info/sct|373784005,http://snomed.info/sct|422037009&requestdate=ge2010-01-01&_include=MedicationRequest:medication&_include=MedicationDispense:patient&_include=MedicationDispense:performer

Retrieves MedicationDispense resources that represent a HCIM MedicationDispense or AdministrationAgreement, that requested after 01-01-2010 and includes related Medication, Patient and Organization resources in the result.

5.3.1.3.1 Custom Search Parameters

The following custom search parameters are defined for this use case:

5.3.2 XIS: response message

The XIS returns a HTTP Status code appropriate to the processing of the request as well as a Bundle of type searchset.

5.3.2.1 Trigger Events

The XIS completed processing of the retrieve medication overview request message.

5.3.2.2 Message Semantics

Based on the retrieve Dispense612ToFHIRConversion request processing results, the XIS will either return an error or success. When the XIS needs to report an error, it shall use HTTP error response codes and shall include a FHIR OperationOutcome resource with more details on the failure. If the request message is processed successfully, whether or not MedicationDispense resources are found or generated, the HTTP status code shall be 200.

The body of the response message shall be a Bundle resource of type "searchset". The following section will elaborate on the content included.

If the XIS is sending warnings, the Bundle resource shall also contain a FHIR OperationOutcome resource that contains those warnings. The FHIR specification describes the relevant sections:

5.3.2.2.1 Message resource content

The returned data to the PHR SHALL conform to the profiles listed in the table below. The resources in the response message SHALL be a valid instance of these profiles. All resources SHALL include their respective profile canonical URL in the meta.profile element to show compliance.

These profiles are derived from the HCIM profiles. This use case has a very specific and stable underlying dataset. Therefore, the profiles contain many mandatory elements. Within the Medication Process dataset, there is a difference between the concept cardinalities '1..* Required' and '1..* Mandatory'.: The first means the element is required to be present, if the system possesses the information and the latter means the element should always be present. Both are mapped to a mandatory cardinality in the FHIR profiles. If the XIS is not able to provide the required information for a mandatory element, it shall use a nullFlavor extension to indicate that and why the information is not present. The PHR should be able to process nullFlavor extensions and values.

HCIM name NL HCIM name EN FHIR Resource FHIR Profile url
Patient Patient Patient http://nictiz.nl/fhir/StructureDefinition/mp612-DispenseToFHIRConversion-Patient
Zorgaanbieder HealthcareProvider Organization http://nictiz.nl/fhir/StructureDefinition/mp612-DispenseToFHIRConversion-Organization
Toedieningsafspraak AdministrationAgreement MedicationDispense http://nictiz.nl/fhir/StructureDefinition/mp612-DispenseToFHIRConversion-AdministrationAgreement
Verstrekking Dispense MedicationDispense http://nictiz.nl/fhir/StructureDefinition/mp612-DispenseToFHIRConversion-Dispense
Product Product Medication http://nictiz.nl/fhir/StructureDefinition/mp612-DispenseToFHIRConversion-Product

5.3.2.3 Expected Actions

The PHR shall process the results according to application-defined rules. The PHR should be robust as the response may contain medication information resources that match the query parameters.

5.4 Interactions, operations, search parameters

5.4.1 Interactions

The following logical interactions are needed for the retrieve medication information transaction:

5.4.2 Operations

No operations are defined or needed for this transaction.

5.4.3 Search parameters

The following search parameter types and search result parameters need to be supported for this transaction.

Search parameter types:

Search result parameters:

The following custom search parameters are defined for this use case:

* This SearchParameter searches on the FHIR DataType Period in the PeriodOfUse extension, which is added to profiles on MedicationRequest and MedicationDispense resources. Clients use date parameter searches as described by the FHIR specification. Servers are expected to take the MedicationUse-Duration extension into account when processing a client's search. This means that either a Period.start + Period.end or Period.start + Duration is used to determine the search results. To illustrate the expected behavior: if a Period.start and a Duration is known, but not the Period, the Duration should be added to the Period.start date to calculate the Period.end. The calculated Period.end date is then used to determine the search results.

6 Terminology, NamingSystems, Mappings

Relevant ValueSets, NamingSystems and ConceptMaps can be found in the packages referenced in the Retrieve medication overview response message content , Retrieve medication information response message and Retrieve Dispense612ToFHIRConversion response message sections.

The HCIM ValueSets used in the profiles are included in the package (or one of its dependencies). When a FHIR core ValueSet must be used instead of an HCIM ValueSet, a FHIR ConceptMap resource is provided to map the values between the two sets. An explanation about mappings can be found at in the overarching principles.

7 Examples

  1. Medicatieproces has a wiki page that contains examples in FHIR and CDA for dosage instructions.
  2. Every profile or resource on Simplifier has a reference tab. The reference tab shows all references from and to the selected resource. So the listed profiles in these use cases have a reference tab on Simplifier where examples are listed that declare conformance to the specific profile.
  3. Examples are accessible through the Simplifier project by going to the resources tab of the project. It is possible to filter on examples and underlying FHIR resource. This is clarified with the following URL, which lists all medication examples available in the NictizSTU3-zib2017 project: https://simplifier.net/NictizSTU3-Zib2017/~resources?category=Example&exampletype=MedicationDispense%7CMedicationStatement%7CMedicationRequest%7CMedication&fhirVersion=STU3&sortBy=DisplayName

8 Release notes

Release notes can be found on the functional design page.