vpk:V3.1 FHIR eOverdracht Proeftuin: verschil tussen versies

Uit informatiestandaarden
Naar navigatie springen Naar zoeken springen
(HOTFIX: Simplifier template usage)
 
(70 tussenliggende versies door 5 gebruikers niet weergegeven)
Regel 1: Regel 1:
{{#customtitle:FHIR Implementation guide Proeftuinen eOverdracht v3.1 (InZicht)}}
+
{{DISPLAYTITLE:eOverdracht Proeftuin phase 1 FHIR Implementation Guide}}
 +
{{IssueBox|Work in progress - See [[vpk:V3.1_FHIR_eOverdracht_Proeftuin|official publication]] here.}}
 +
=Introduction=
  
=Introduction=
+
This page will detail the HL7 requirments for exhcanging the data in the eOverdracht Proeftuin phase 1 as described in [[vpk:V3.1 eOverdracht Proeftuin|the functional design]].
 +
Imnplementation of the eOverdracht Proeftuin is spread over 3 different phases. Phase 2 and 3 can be found by navigating the following links in the table listed below.
 +
{| class="wikitable"
 +
! colspan="2" | Phase 2 and Phase 3 of the eOverdracht Proeftuin
 +
|-
 +
| style="text-align: center;" | Phase 2
 +
| style="text-align: center;" | Phase 3
 +
|-
 +
| [[vpk:V3.1_FHIR_eOverdracht_Proeftuin_phase_2|Proeftuin Phase 2 ]]
 +
| [[vpk:V3.1_FHIR_eOverdracht|eOverdracht FHIR implementation guide]]
 +
|-
 +
|}
 +
* Phase 3 of the eOverdracht proeftuin consists of the total eOverdracht message, therefore you will be directed to the eOverdracht FHIR implementation guide.
  
This page details the HL7 FHIR requirements for exchanging the data in the Verpleegkundige eOverdracht Proeftuin pilot described in [[vpk:V3.1 eOverdracht Proeftuin|this functional design]].
+
In the first phase of the Proeftuin a simplified version of both the Aanmeldbericht en Overdrachtsbericht are being used. Both messages exist of four HCIMs listed in the table below. The Aanmeldbericht is send to the recieving organisation, which after confirmation of recieving the aanmeldberricht, gets send the Overdrachtbericht.
  
Implementation of these transactions is spread over multiple phases.
 
  
Phase one consists of the implementation of four HCIMs for both the Aanmeldbericht and the Overdrachtsbericht. The remaining information from eOverdracht may be sent unstructured in a PDF file.
+
This implementation guide assumes that the reader is familiar with [https://www.hl7.org/fhir/stu3/ FHIR(STU3)].
  
Phase two consists of the complete Aanmeldbericht as well as an incomplete Overdrachtsbericht. the Overdrachtsbericht is a subset of 15 HCIM's (complete set used in Aanmeldbericht) and an unstructured PDF containing the remaining data which are not part of the HCIM's.
+
==Overarching FHIR principles==
 +
* This implementation guide does not provide information on finding the right XIS, nor does it provide information about security. It is assumed that the sending XIS is able to make a connection with the receiving XIS.
 +
* All FHIR resources used within eOverdracht SHALL conform to the profiles listed in this implementation guide and SHALL include the profile canonical URL in their <code>meta.profile</code> element.
  
=Use case: Aanmeldbericht=
+
==Package and dependencies==
 +
eOverdracht uses the FHIR Packaging mechanism to conveniently bundle all examples, profiles and other conformance resources you need into a single download. The eOverdracht package has a dependency on the [https://simplifier.net/NictizSTU3-Zib2017/~packages Nictiz Zib2017 package {{VersieInfo|package|release=V2019.01}}].
 +
==Example instances==
 +
Example instances of the FHIR messages can be found on [https://simplifier.net/nictiz-stu3-eoverdracht Simplifier]:
 +
* [https://simplifier.net/nictiz-stu3-eoverdracht/~resources?category=Example&exampletype=Composition Composition examples]
 +
* [https://simplifier.net/nictiz-stu3-eoverdracht/~resources?category=Example&exampletype=Bundle Bundle examples]
  
 +
=Use case 1A: Send Overdrachtsbericht volwassenen (PUSH)=
 
==Introduction==
 
==Introduction==
 
+
The Send Overdrachtsbericht scenario is used by the sending XIS to send the relevant data for the patient care to the receiving XIS. The structure of the eventual scenario is described in the functional design and additionally in [[vpk:V3.1_Opbouw_eOverdracht_volwassenen|Opbouw Overdrachtsbericht Volwassenen]]. For the pilot a limited subset is implemented.
The Send Aanmeldbericht scenario is used by the sending XIS to send the relevant data for the patient intake to the receiving XIS, and constitutes a subset of the Overdrachtsbericht. The structure of the eventual scenario is described in the functional design and additionally in [[vpk:V3.1_Opbouw_eOverdracht_aanmelding|Opbouw eOverdracht aanmelding]]. For the pilot a limited subset is implemented.
+
==Actors==
 
+
{| class="wikitable" "cellpadding="10"
==Actors and transactions==
+
! style="text-align:left;"| '''Transaction group'''
 
+
! style="text-align:left;"| '''Transaction'''
{| class="wikitable" style="horizontal-align: right"
+
! style="text-align:left;"| '''Actor'''
! Actor
+
! style="text-align:left;"| '''Role'''
! Role
 
! Transaction
 
 
|-
 
|-
| Sending XIS
+
|style="background-color: white;" rowspan="2"|Send Overdrachtbericht (PUSH)
| Sends signup message to the receiving XIS
+
|style="background-color: white;" rowspan="2"|Send Overdrachtsbericht
| Send Aanmeldbericht
+
|style="background-color: white;"|Healthcare professional at organization A (using a XIS)
|-
+
|style="background-color: white;"|Sends Overdrachtsbericht
| Receiving XIS
 
| Acknowledges the signup message with sending XIS
 
| Aanmeldbericht response
 
 
|-
 
|-
 +
|style="background-color: white;"|Healthcare professional at organization B (using a XIS)
 +
|style="background-color: white;"|Receives Overdrachtsbericht
 
|}
 
|}
 +
==Invocation==
 +
The Send Overdrachtsbericht transaction is an HTTP POST method on the target XIS's base, where the body of the POST request is a FHIR document according to [[#Structure of the Overdrachtsbericht (4 HCIMs + PDF)]]. See [[#Sending documents]] for more information.
 +
===Trigger events===
 +
This transaction is invoked when the sending XIS needs to send the Overdrachtsbericht to the receiving XIS.
 +
===Expected response===
 +
The document Bundle should be processed as a [http://hl7.org/fhir/STU3/http.html#transaction transaction] by the receiving XIS. See [[#Processing documents]] for more information.
 +
==Structure of the Overdrachtsbericht (4 HCIMs + PDF)==
 +
The Overdrachtsbericht consists of multiple FHIR resources, which are assembled into a FHIR document. See [[#Creating documents]] for information on how to assemble this document.
  
==Structure of the Aanmeldbericht phase 1==
+
During phase 1, the Overdrachtsbericht is based on the same 4 HCIMs as the Aanmeldbericht (Patient, Betaler, Contactpersoon en Zorgaanbieder). The table below lists the FHIR profiles<ref name="nopackage">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.</ref> that are applicable for the pilot implementation of the Overdrachtsbericht transaction.
 
 
The Aanmeldbericht consists of multiple FHIR resources, which are assembled into a FHIR [http://hl7.org/fhir/STU3/bundle.html Bundle]. The table below lists the FHIR StructureDefinitions that are applicable for the pilot implementation of the 'Aanmeldbericht' transactions.
 
  
 
{| class="wikitable" style="horizontal-align: right"
 
{| class="wikitable" style="horizontal-align: right"
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:400px" | Section
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | Section
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:400px" | FHIR profile
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | FHIR profile
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:50px" | FHIR resource
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | FHIR resource
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:50px" | HCIM name
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | HCIM name
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:50px" | HCIM version
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | HCIM version
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:50px" | Remarks
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | Remarks
 
|-
 
|-
|  
+
| -
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdrachtAanmeldbericht-phase-one eOverdrachtAanmeldbericht-phase-one]
+
| {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/eOverdracht-Overdrachtsbericht-volwassenen-phase-one|title=Overdrachtsbericht phase 1}}
 
| Composition
 
| Composition
 
| -
 
| -
 
| -
 
| -
| Declaration of the Send Aanmeldbericht transaction.
+
| The Composition resource used to assemble the document
 
|-
 
|-
 
|-
 
|-
 
| Datum overplaatsing
 
| Datum overplaatsing
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdracht-TransferDate eOverdracht-TransferDate]
+
| {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/eOverdracht-TransferDate|title=eOverdracht-TransferDate}}
| Extension
+
| ''extension''
 
| -
 
| -
 
| -
 
| -
| DateTime extension used in eOverdracht composition profiles
+
| extension in the Composition resource
 
|-
 
|-
 
| rowspan="2"|Persoonsgegevens
 
| rowspan="2"|Persoonsgegevens
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-patient nl-core-patient]
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-patient|title=nl-core-patient}}
 
| Patient
 
| Patient
 
| Patient
 
| Patient
Regel 68: Regel 92:
 
| -
 
| -
 
|-
 
|-
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Payer zib-Payer]
+
| {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/zib-Payer|title=zib-Payer}}
 
| Coverage
 
| Coverage
 
| Betaler
 
| Betaler
Regel 75: Regel 99:
 
|-
 
|-
 
| rowspan="3"|Sturende organisatie
 
| rowspan="3"|Sturende organisatie
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-organization nl-core-organization]
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-organization|title=nl-core-organization}}
 
| Organization
 
| Organization
 
| Zorgaanbieder
 
| Zorgaanbieder
Regel 81: Regel 105:
 
| -
 
| -
 
|-
 
|-
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner nl-core-practitioner]
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner|title=nl-core-practitioner}}
 
| Practitioner
 
| Practitioner
 
| rowspan="2" |Zorgverlener
 
| rowspan="2" |Zorgverlener
Regel 87: Regel 111:
 
| rowspan="2" | -  
 
| rowspan="2" | -  
 
|-
 
|-
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole nl-core-practitionerrole]
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole|title=nl-core-practitionerrole}}
 
| PractitionerRole
 
| PractitionerRole
 
|-
 
|-
 
| rowspan="3"|Ontvangende organisatie
 
| rowspan="3"|Ontvangende organisatie
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-organization nl-core-organization]
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-organization|title=nl-core-organization}}
 
| Organization
 
| Organization
 
| Zorgaanbieder
 
| Zorgaanbieder
Regel 97: Regel 121:
 
| -
 
| -
 
|-
 
|-
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner nl-core-practitioner]
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner|title=nl-core-practitioner}}
 
| Practitioner
 
| Practitioner
 
| rowspan="2" |Zorgverlener
 
| rowspan="2" |Zorgverlener
Regel 103: Regel 127:
 
| rowspan="2" | -  
 
| rowspan="2" | -  
 
|-
 
|-
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole nl-core-practitionerrole]
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole|title=nl-core-practitionerrole}}
 
| PractitionerRole
 
| PractitionerRole
 
|-
 
|-
Regel 111: Regel 135:
 
| -
 
| -
 
| -
 
| -
| Should be used to send unstructured PDF data.
+
| Used to send unstructured PDF data
 
|}
 
|}
  
==Structure of the Aanmeldbericht phase 2 (complete)==
+
=Use case 3A: Send Aanmeldbericht (PUSH)=
 
 
The Aanmeldbericht consists of multiple FHIR resources, which are assembled into a FHIR [http://hl7.org/fhir/STU3/bundle.html Bundle]. The table below lists the FHIR StructureDefinitions that are applicable for the pilot implementation of the 'Aanmeldbericht' transactions.
 
 
 
{| class="wikitable" style="horizontal-align: right"
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:400px" | Section
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:400px" | FHIR profile
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:50px" | FHIR resource
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:50px" | HCIM name
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:50px" | HCIM version
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:50px" | Remarks
 
|-
 
|
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdrachtAanmeldbericht eOverdrachtAanmeldbericht]
 
| Composition
 
| -
 
| -
 
| Declaration of the Send Aanmeldbericht transaction.
 
|-
 
|-
 
| Datum overplaatsing
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdracht-TransferDate eOverdracht-TransferDate]
 
| Extension
 
| -
 
| -
 
| DateTime extension used in eOverdracht composition profiles
 
|-
 
| rowspan="2"|Persoonsgegevens
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-patient nl-core-patient]
 
| Patient
 
| Patient
 
| v3.1(2017NL)
 
| -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Payer zib-Payer]
 
| Coverage
 
| Betaler
 
| v3.1(2017NL)
 
| -
 
|-
 
| rowspan="3"|Sturende organisatie
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-organization nl-core-organization]
 
| Organization
 
| Zorgaanbieder
 
| v3.1.1(2017NL)
 
| -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner nl-core-practitioner]
 
| Practitioner
 
| rowspan="2" |Zorgverlener
 
| rowspan="2" |v3.2(2017NL)
 
| rowspan="2" | -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole nl-core-practitionerrole]
 
| PractitionerRole
 
|-
 
| rowspan="3"|Ontvangende organisatie
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-organization nl-core-organization]
 
| Organization
 
| Zorgaanbieder
 
| v3.1.1(2017NL)
 
| -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner nl-core-practitioner]
 
| Practitioner
 
| rowspan="2" |Zorgverlener
 
| rowspan="2" |v3.2(2017NL)
 
| rowspan="2" | -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole nl-core-practitionerrole]
 
| PractitionerRole
 
|-
 
| Medische diagnose
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Problem zib-Problem]
 
| Condition
 
| Probleem
 
| v4.1(2017NL
 
| -
 
|-
 
|-
 
| Voorgeschiedenis
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Problem zib-Problem]
 
| Condition
 
| Probleem
 
| v4.1(2017NL
 
| -
 
|-
 
| Let op
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Alert zib-Alert]
 
| Flag
 
| Alert
 
| v3.2(2017NL)
 
| -
 
|-
 
| Vrijheidsbeperking
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-FreedomRestrictingMeasures zib-FreedomRestrictingMeasures]
 
| Procedure
 
| VrijheidsBeperkendeMaatregelen
 
| v3.1(2017NL)
 
| -
 
|-
 
| Actuele patiëntenproblemen
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Problem zib-Problem]
 
| Condition
 
| Probleem
 
| v4.1(2017NL)
 
| -
 
|-
 
| Afspraken patiënt
 
| [https://simplifier.net/resolve?target=simplifier&canonical=hhttp://nictiz.nl/fhir/StructureDefinition/zib-ProcedureRequest zib-ProcedureRequest]
 
| ProcedureRequest
 
| OverdrachtGeplandeZorgActiviteit
 
| v3.1(2017NL)
 
| -
 
|-
 
| Wensen en behoeften patiënt en/of naasten
 
| -
 
| -
 
| -
 
| -
 
| Declared as a text section. See [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdrachtAanmeldbericht composition] profile.
 
|-
 
| rowspan="2"| Voeding/vocht
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-FeedingTubeSystem zib-FeedingTubeSystem]
 
| DeviceUseStatement
 
| SondeSysteem
 
| v3.2(2017NL)
 
| -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Infusion zib-Infusion]
 
| DeviceUseStatement
 
| Infuus
 
| v3.2(2017NL)
 
| -
 
|-
 
| Uitscheiding
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Stoma zib-Stoma]
 
| Observation
 
| Stoma
 
| v3.2(2017NL)
 
| -
 
|}
 
 
 
==Invocations==
 
===Send Aanmeldbericht (PUSH)===
 
====Trigger events====
 
This transaction is invoked when the XIS needs to send the Aanmeldbericht to the receiving XIS.
 
 
 
====Message Semantics====
 
The Aanmeldbericht is sent as a [https://www.hl7.org/fhir/STU3/documents.html FHIR Document]. To create this document, a FHIR Composition resource should be created according to the [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdrachtAanmeldbericht-phase-one eOverdrachtAanmeldbericht-phase-one profile]. This Composition resource references each of the relevant resources included in the Aanmeldbericht. The Composition resource and the relevant resources are subsequently assembed into a FHIR [http://hl7.org/fhir/STU3/bundle.html Bundle] resource which ''Bundle.type'' set to ''document''. The Composition resource should be the first entry in the Bundle.
 
 
 
For the Bundle, the following rules apply:
 
* The Bundle resource SHALL include all the resources listed as described in [[#Structure_of_the_Aanmeldbericht|Structure of the Aanmeldbericht]], each in a ''separate Bundle.entry''.
 
* The resources in the message SHALL be a valid instances of these profiles listed in [[#Structure_of_the_Aanmeldbericht|Structure of the Aanmeldbericht]]
 
* All resources SHALL include their related profile canonical URL in the ''meta.profile'' element in order to show compliance.
 
* The Bundle SHOULD include the resources that are linked from the included resources
 
 
 
{{NoteBox|A FHIR Document is an immutable statement which can't be updated once it's created, it can only be superseded by a new Document. Updating falls outside the scope of the current design.}}
 
 
 
The Send Aanmeldbericht transaction is an HTTP POST method on the target XIS's base:
 
POST [base] {?_format=[mime-type]}
 
where the body of the POST request is the assembled Bundle.
 
 
 
====Expected actions====
 
The document Bundle should be processed as a [http://hl7.org/fhir/STU3/http.html#transaction transaction] by the receiving XIS and each ''Bundle.entry'' should be treated as a ''create'' interaction for the ''Bundle.entry.resource''.
 
 
 
When the resource syntax or data is incorrect or invalid and cannot be used to create a new resource, or when the server rejects the content of the resource because of business rules, it should perform a rollback of the creation of any previous entries and send the appropriate response (see below).
 
 
 
===Aanmeldbericht response (PUSH)===
 
====Trigger events====
 
The target XIS completed processing of the Send Aanmeldbericht transaction.
 
 
 
====Message semantics====
 
The target XIS responds to the Send Aanmeldbericht transaction with an HTTP Response, where:
 
* The status code SHALL be set appropriate to the processing outcome. When the resource syntax or data is incorrect or invalid, and cannot be used to create a new resource, the server returns a 400 Bad Request HTTP status code. When the server rejects the content of the resource because of business rules, the server returns a 422 Unprocessable Entity error HTTP status code. Additional HTTP status code may be used if more appropriate.
 
* On success, the response body SHALL be set to a FHIR Bundle resource containing one entry for each entry in the request, in the same order, with the outcome of processing the entry.
 
* On failure, the response body SHOULD be set to a FHIR [http://hl7.org/fhir/STU3/operationoutcome.html OperationOutcome] resource with detailed error messages describing the reason for the error, and perform a rollback of the creation of any previous entries.
 
 
 
A client may use the returned Bundle to track the outcomes of processing the entry, and the identities assigned to the resources by the server. Each entry element SHALL contain a response element which details the outcome of processing the entry - the HTTP status code, and the location and ETag header values, which are used for identifying and versioning the resources. In addition, a resource may be included in the entry, as specified by the Prefer header.
 
 
 
==Examples==
 
* [https://simplifier.net/nictizstu3-zib2017/eOverdracht-Aanmeldbericht-phase-one-example Aanmeldbericht phase one Composition]
 
* [https://simplifier.net/nictizstu3-zib2017/eOverdracht-Aanmeldbericht-phase-one-Bundle-example Aanmeldbericht phase one Bundle]
 
* [https://simplifier.net/NictizSTU3-Zib2017/eOverdracht-Aanmeldbericht-Composition Aanmeldbericht Composition]
 
* [https://simplifier.net/nictizstu3-zib2017/eoverdracht-aanmeldbericht-bundle Aanmeldbericht Bundle]
 
 
 
=Use case: Overdrachtsbericht Volwassenen=
 
 
==Introduction==
 
==Introduction==
During the pilot, the transfer information is based on a subset of the [[vpk:V3.1_Ontwerp_eOverdracht#Use_Case_1A_-_Verpleegkundige_overdracht:_Overdrachtsbericht_-_volwassenen_.28PUSH.29|Overdrachtsbericht Volwassenen]] (transfer message for adults). Phase one consists of the implementation of four HCIMs. The remaining information from eOverdracht may be sent unstructured in a PDF file.
+
The Send Aanmeldbericht scenario is used by the sending XIS to send the relevant data for the patient intake to the receiving XIS, and constitutes a subset of the Overdrachtsbericht. The structure of the eventual scenario is described in the functional design and additionally in [[vpk:V3.1_Opbouw_eOverdracht_aanmelding|Opbouw Aanmeldbericht]]. For the pilot a limited subset is implemented.
 
+
==Actors==
==Actors and transactions==
+
{| class="wikitable" "cellpadding="10"
 
+
! style="text-align:left;"| '''Transaction group'''
{| class="wikitable" style="horizontal-align: right"
+
! style="text-align:left;"| '''Transaction'''
! Actor
+
! style="text-align:left;"| '''Actor'''
! Role
+
! style="text-align:left;"| '''Role'''
! Transaction
 
|-
 
| Sending XIS
 
| Sends transfer message to the receiving XIS
 
| Send Overdrachtsbericht
 
 
|-
 
|-
| Receiving XIS
+
|style="background-color: white;" rowspan="2"|Send Aanmeldbericht(PUSH)
| Acknowledges transfer message to sending XIS
+
|style="background-color: white;" rowspan="2"|Send Aanmeldbericht
| Overdrachtsbericht response
+
|style="background-color: white;"|Healthcare professional at organization A (using a XIS)
 +
|style="background-color: white;"|Sends Aanmeldbericht
 
|-
 
|-
 +
|style="background-color: white;"|Healthcare professional at organization B (using a XIS)
 +
|style="background-color: white;"|Receives Aanmeldbericht
 
|}
 
|}
 +
==Invocation==
 +
The Send Aanmeldbericht transaction is an HTTP POST method on the target XIS's base, where the body of the POST request is a FHIR document according to [[#Structure of the Aanmeldbericht (4 HCIMs + PDF)]]. See [[#Sending documents]] for more information.
 +
===Trigger events===
 +
This transaction is invoked when the sending XIS needs to send the Overdrachtsbericht to the receiving XIS.
 +
===Expected response===
 +
The document Bundle should be processed as a [http://hl7.org/fhir/STU3/http.html#transaction transaction] by the receiving XIS. See [[#Processing documents]] for more information.
 +
==Structure of the Aanmeldbericht (4 HCIMs + PDF)==
 +
The Aanmeldbericht consists of multiple FHIR resources, which are assembled into a FHIR document. See [[#Creating documents]] for information on how to assemble this document.
  
==Structure of the Overdrachtsbericht phase 1: 4 HCIMs + PDF==
+
During phase 1, the Aanmeldbericht is based 4 HCIMs (Patient, Betaler, Contactpersoon en Zorgaanbieder) and uses a PDF to send the remaining data unstructured. The table below lists the FHIR profiles<ref name="nopackage"/> that are applicable for the pilot implementation of the Aanmeldbericht transaction. All resources SHALL conform to the profiles listed in this table and SHALL include the profile canonical URL in the <code>meta.profile</code> element.
 
 
The Overdrachtsbericht consists of multiple FHIR resources, which are assembled into a FHIR [http://hl7.org/fhir/STU3/bundle.html Bundle]. The table below lists the FHIR StructureDefinitions that are applicable for the pilot implementation of the 'Overdrachtsbericht' transactions. During phase 1, the Overdrachtsbericht is based on the same 4 HCIMs as the aanmeldbericht (Patient, Betaler, Contactpersoon en Zorgaanbieder).  
 
 
 
  
 
{| class="wikitable" style="horizontal-align: right"
 
{| class="wikitable" style="horizontal-align: right"
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:400px" | Section
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | Section
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:400px" | FHIR profile
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | FHIR profile
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:50px" | FHIR resource
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | FHIR resource
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:50px" | HCIM name
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | HCIM name
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:50px" | HCIM version
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | HCIM version
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left; background-color: #E3E3E3 width:50px" | Remarks
+
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;" | Remarks
 
|-
 
|-
|
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdracht-Overdrachtsbericht-volwassenen-phase-one eOverdracht-Overdrachtsbericht-volwassenen-phase-one]
 
| Composition
 
| -
 
| -
 
| Declaration of the Send Overdrachtsbericht volwassenen phase one transaction.
 
|-
 
|-
 
| Datum overplaatsing
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdracht-TransferDate eOverdracht-TransferDate]
 
| Extension
 
| -
 
 
| -
 
| -
| DateTime extension used in eOverdracht composition profiles
+
| {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/eOverdracht-aanmeldbericht-phase-one|Aanmeldbericht phase 1}}
|-
 
| rowspan="2"|Persoonsgegevens
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-patient nl-core-patient]
 
| Patient
 
| Patient
 
| v3.1(2017NL)
 
| -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Payer zib-Payer]
 
| Coverage
 
| Betaler
 
| v3.1(2017NL)
 
| -
 
|-
 
| rowspan="3"|Sturende organisatie
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-organization nl-core-organization]
 
| Organization
 
| Zorgaanbieder
 
| v3.1.1(2017NL)
 
| -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner nl-core-practitioner]
 
| Practitioner
 
| rowspan="2" |Zorgverlener
 
| rowspan="2" |v3.2(2017NL)
 
| rowspan="2" | -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole nl-core-practitionerrole]
 
| PractitionerRole
 
|-
 
| rowspan="3"|Ontvangende organisatie
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-organization nl-core-organization]
 
| Organization
 
| Zorgaanbieder
 
| v3.1.1(2017NL)
 
| -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner nl-core-practitioner]
 
| Practitioner
 
| rowspan="2" |Zorgverlener
 
| rowspan="2" |v3.2(2017NL)
 
| rowspan="2" | -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole nl-core-practitionerrole]
 
| PractitionerRole
 
|-
 
| PDF
 
| [https://www.hl7.org/fhir/binary.html Binary]
 
| Binary
 
| -
 
| -
 
| Should be used to send unstructured PDF data.
 
|}
 
 
 
==Structure of the Overdrachtsbericht phase 2: 15 HCIMs + PDF==
 
 
 
The Overdrachtsbericht consists of multiple FHIR resources, which are assembled into a FHIR [http://hl7.org/fhir/STU3/bundle.html Bundle]. The table below lists the FHIR StructureDefinitions that are applicable for the pilot implementation of the 'Overdrachtsbericht' transactions. During phase 2, the Overdrachtsbericht is based on the same 15 HCIMs as the aanmeldbericht. The remaining information is made available via an unstructured PDF.
 
 
 
{| class="wikitable" style="horizontal-align: right"
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:400px" | Section
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:400px" | FHIR profile
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:50px" | FHIR resource
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:50px" | HCIM name
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:50px" | HCIM version
 
!style="background-color: #4AB8A7; color: white; font-weight: bold; text-align:left;  background-color: #E3E3E3 width:50px" | Remarks
 
|-
 
|
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdrachtOverdrachtsbericht-volwassenen-phase-two eOverdrachtOverdrachtsbericht-volwassenen-phase-two]
 
 
| Composition
 
| Composition
 
| -
 
| -
 
| -
 
| -
| Declaration of the Send Overdrachtsbericht volwassenen phase two transaction.
+
| The Composition resource used to assemble the document
 
|-
 
|-
 
|-
 
|-
 
| Datum overplaatsing
 
| Datum overplaatsing
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdracht-TransferDate eOverdracht-TransferDate]
+
| {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/eOverdracht-TransferDate|eOverdracht-TransferDate}}
| Extension
+
| ''extension''
 
| -
 
| -
 
| -
 
| -
| DateTime extension used in eOverdracht composition profiles
+
| extension in the Composition resource
 
|-
 
|-
 
| rowspan="2"|Persoonsgegevens
 
| rowspan="2"|Persoonsgegevens
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-patient nl-core-patient]
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-patient|nl-core-patient}}
 
| Patient
 
| Patient
 
| Patient
 
| Patient
Regel 436: Regel 197:
 
| -
 
| -
 
|-
 
|-
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Payer zib-Payer]
+
| {{Simplifier|http://nictiz.nl/fhir/StructureDefinition/zib-Payer|zib-Payer}}
 
| Coverage
 
| Coverage
 
| Betaler
 
| Betaler
Regel 442: Regel 203:
 
| -
 
| -
 
|-
 
|-
| rowspan="3"|Sturende organisatie
+
| Sturende organisatie
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-organization nl-core-organization]
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-organization|nl-core-organization}}
 
| Organization
 
| Organization
 
| Zorgaanbieder
 
| Zorgaanbieder
Regel 449: Regel 210:
 
| -
 
| -
 
|-
 
|-
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner nl-core-practitioner]
+
| Ontvangende organisatie
| Practitioner
+
| {{Simplifier|http://fhir.nl/fhir/StructureDefinition/nl-core-organization|nl-core-organization}}
| rowspan="2" |Zorgverlener
 
| rowspan="2" |v3.2(2017NL)
 
| rowspan="2" | -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole nl-core-practitionerrole]
 
| PractitionerRole
 
|-
 
| rowspan="3"|Ontvangende organisatie
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-organization nl-core-organization]
 
 
| Organization
 
| Organization
 
| Zorgaanbieder
 
| Zorgaanbieder
 
| v3.1.1(2017NL)
 
| v3.1.1(2017NL)
| -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitioner nl-core-practitioner]
 
| Practitioner
 
| rowspan="2" |Zorgverlener
 
| rowspan="2" |v3.2(2017NL)
 
| rowspan="2" | -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://fhir.nl/fhir/StructureDefinition/nl-core-practitionerrole nl-core-practitionerrole]
 
| PractitionerRole
 
|-
 
| Medische diagnose
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Problem zib-Problem]
 
| Condition
 
| Probleem
 
| v4.1(2017NL
 
| -
 
|-
 
|-
 
| Voorgeschiedenis
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Problem zib-Problem]
 
| Condition
 
| Probleem
 
| v4.1(2017NL
 
| -
 
|-
 
| Let op
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Alert zib-Alert]
 
| Flag
 
| Alert
 
| v3.2(2017NL)
 
| -
 
|-
 
| Vrijheidsbeperking
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-FreedomRestrictingMeasures zib-FreedomRestrictingMeasures]
 
| Procedure
 
| VrijheidsBeperkendeMaatregelen
 
| v3.1(2017NL)
 
| -
 
|-
 
| Actuele patiëntenproblemen
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Problem zib-Problem]
 
| Condition
 
| Probleem
 
| v4.1(2017NL)
 
| -
 
|-
 
| Afspraken patiënt
 
| [https://simplifier.net/resolve?target=simplifier&canonical=hhttp://nictiz.nl/fhir/StructureDefinition/zib-ProcedureRequest zib-ProcedureRequest]
 
| ProcedureRequest
 
| OverdrachtGeplandeZorgActiviteit
 
| v3.1(2017NL)
 
| -
 
|-
 
| Wensen en behoeften patiënt en/of naasten
 
| -
 
| -
 
| -
 
| -
 
| Declared as a text section. See [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdrachtOverdrachtsbericht-volwassenen-phase-two composition] profile.
 
|-
 
| rowspan="2"| Voeding/vocht
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-FeedingTubeSystem zib-FeedingTubeSystem]
 
| DeviceUseStatement
 
| SondeSysteem
 
| v3.2(2017NL)
 
| -
 
|-
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Infusion zib-Infusion]
 
| DeviceUseStatement
 
| Infuus
 
| v3.2(2017NL)
 
| -
 
|-
 
| Uitscheiding
 
| [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/zib-Stoma zib-Stoma]
 
| Observation
 
| Stoma
 
| v3.2(2017NL)
 
| -
 
 
|-
 
|-
 
| PDF
 
| PDF
Regel 549: Regel 221:
 
| -
 
| -
 
| -
 
| -
| Should be used to send unstructured PDF data.
+
| Used to send unstructured PDF data
 
|}
 
|}
 +
=FHIR Documents=
 +
Both the Aanmeldbericht and the Overdrachtsbericht are sent as a [https://www.hl7.org/fhir/STU3/documents.html FHIR Document]. A document is a FHIR Bundle that assembles all relevant resources that need to be exchanged, together with a [https://www.hl7.org/fhir/STU3/composition.html Composition resource] that summarizes and references all these resources.
  
==Invocations==
+
A FHIR document is immutable and considered to be attested by a healthcare professional.
 +
==Creating documents==
 +
To construct a document, a FHIR Composition resource is created that summarizes and references all the resources that need to be exchanged. This Composition resource is then placed together with all referenced resources in a Bundle with <code>Bundle.type</code> set to "document". The Composition resource SHALL be the first entry.
  
===Send Aanmeldbericht (PUSH)===
+
Profiles have been created for both the Composition and the document Bundle resources for each transaction within eOverdracht. All documents SHOULD adhere to these profiles, which are summarized in this implementation guide at the transaction level.
====Trigger events====
+
==Sending documents==
This transaction is invoked when the XIS needs to send the Overdrachtbericht to the receiving XIS.
+
The document should be sent as an HTTP POST operation on the target XIS's base:
 
 
====Message Semantics====
 
The Overdrachtsbericht is sent as a [https://www.hl7.org/fhir/STU3/documents.html FHIR Document]. To create this document, a FHIR Composition resource should be created according to the [https://simplifier.net/resolve?target=simplifier&canonical=http://nictiz.nl/fhir/StructureDefinition/eOverdracht-OverdrachtsberichtVolwassenen-phase-one eOverdracht-OverdrachtsberichtVolwassenen-phase-one profile]. This Composition resource references each of the resources included in the Overdrachtsbericht. The Composition resource and the relevant resources are subsequently assembed into a FHIR [http://hl7.org/fhir/STU3/bundle.html Bundle] resource which ''Bundle.type'' set to ''document''. The Composition resource should be the first entry in the Bundle.
 
 
 
For the Bundle, the following rules apply:
 
* The Bundle resource SHALL include all the resources listed in [[#Structure_of_the_Overdrachtbericht_phase_1:_4_HCIMs_.2B_PDF|Structure of the Overdrachtsbericht phase 1]] or [[#Structure_of_the_Overdrachtbericht_phase_2:_15_HCIMs_.2B_PDF|Structure of the Overdrachtsbericht phase 2]], each in a ''separate Bundle.entry''.
 
* The resources in the message SHALL be a valid instances of these profiles listed in [[#Structure_of_the_Overdrachtbericht_phase_1:_4_HCIMs_.2B_PDF|Structure of the Overdrachtsbericht phase 1]] or [[#Structure_of_the_Overdrachtbericht_phase_2:_15_HCIMs_.2B_PDF|Structure of the Overdrachtsbericht phase 2]].
 
* All resources SHALL include their related profile canonical URL in the ''meta.profile'' element in order to show compliance.
 
* The Bundle SHOULD include the resources that are linked from the included resources
 
 
 
{{NoteBox|A FHIR Document is an immutable statement which can't be updated once it's created, it can only be superseded by a new Document. Updating falls outside the scope of the current design.}}
 
 
 
The Send Aanmeldbericht transaction is an HTTP POST method on the target XIS's base:
 
 
  POST [base] {?_format=[mime-type]}
 
  POST [base] {?_format=[mime-type]}
where the body of the POST request is the assembled Bundle.
+
where the body of the POST request is the document.
 
+
==Processing documents==
====Expected actions====
+
The document Bundle should be processed as a [http://hl7.org/fhir/STU3/http.html#transaction transaction] by the receiving XIS and each <code>Bundle.entry</code> should be treated as a <code>create</code> interaction for the <code>Bundle.entry.resource</code>. When the receiving XIS cannot create a new resource because of incorrect data or business rules, it should perform a rollback of the creation of any previous entries.
The document Bundle should be processed as a [http://hl7.org/fhir/STU3/http.html#transaction transaction] by the receiving XIS and each ''Bundle.entry'' should be treated as a ''create'' interaction for the ''Bundle.entry.resource''. When the resource syntax or data is incorrect or invalid and cannot be used to create a new resource, or when the server rejects the content of the resource because of business rules, it should perform a rollback of the creation of any previous entries.
 
 
 
===Aanmeldbericht response (PUSH)===
 
====Trigger events====
 
The target XIS completed processing of the Send Overdrachtsbericht transaction.
 
  
====Message semantics====
+
On success, the target XIS SHALL respond:
The target XIS responds to the Send Overdrachtsbericht transaction with an HTTP Response, where:
+
* With the HTTP status code 201 Created.
* The status code SHALL be set appropriate to the processing outcome. When the resource syntax or data is incorrect or invalid, and cannot be used to create a new resource, the server returns a 400 Bad Request HTTP status code. When the server rejects the content of the resource because of business rules, the server returns a 422 Unprocessable Entity error HTTP status code.  
+
* With the Location header containing the new logical id and version id of the created resource version.
* On success, the response body SHALL be set to a FHIR Bundle resource containing one entry for each entry in the request, in the same order, with the outcome of processing the entry.
+
* With a response body set to a Bundle of type "transaction-response", containing one entry for each entry in the request, in the same order, with the outcome of processing the entry. The sender may use the returned Bundle to track the outcomes of processing the entry, and the identities assigned to the resources by the server.
* On failure, the response body SHOULD be set to a FHIR OperationOutcome resource with detailed error messages describing the reason for the error, and perform a rollback of the creation of any previous entries.
 
  
A client may use the returned Bundle to track the outcomes of processing the entry, and the identities assigned to the resources by the server. Each entry element SHALL contain a response element which details the outcome of processing the entry - the HTTP status code, and the location and ETag header values, which are used for identifying and versioning the resources. In addition, a resource may be included in the entry, as specified by the Prefer header.
+
On failure, the target XIS SHALL respond:
 
+
* With an HTTP status code set appropriate to the processing outcome:
==Examples==
+
** When the resource syntax or data is incorrect or invalid, the status code should be 400 Bad Request.
* [https://simplifier.net/nictizstu3-zib2017/eoverdracht-aanmeldbericht-phase-one-example Overdrachtsbericht Composition phase 1]
+
** When the server rejects the content of the resource because of business rules, the status code should be 422 Unprocessable Entity.
* [https://simplifier.net/nictizstu3-zib2017/eoverdracht-aanmeldbericht-phase-one-bundle-example Overdrachtsbericht Bundle phase 1]
+
** Additional HTTP status code may be used if more appropriate.
* [https://simplifier.net/nictizstu3-zib2017/eOverdracht-OverdrachtsberichtVolwassenen-phase-two-example-1 Overdrachtsbericht Composition phase 2]
+
* With a response body set to a FHIR [http://hl7.org/fhir/STU3/operationoutcome.html OperationOutcome] resource with detailed error messages describing the reason for the error.
* [https://simplifier.net/nictizstu3-zib2017/eOverdracht-OverdrachtsberichtVolwassenen-phase-two-example-bundle Overdrachtsbericht Bundle phase 2]
 
* [https://simplifier.net/nictizstu3-zib2017/eOverdracht-OverdrachtsberichtVolwassenen-example-1 Overdrachtsbericht volwassenen Composition]
 
* [https://simplifier.net/nictizstu3-zib2017/eOverdracht-OverdrachtsberichtVolwassenen-example-bundle Overdrachtsbericht Volwassenen Bundle]
 
  
 
=FHIR CapabilityStatements=
 
=FHIR CapabilityStatements=
===Phase one===
+
* {{Simplifier|http://nictiz.nl/fhir/CapabilityStatement/eOverdracht-servercapabilities-phase-one|title=CapabilityStatement server}}
* Link to Server CapabilityStatement  
+
* {{Simplifier|http://nictiz.nl/fhir/CapabilityStatement/eOverdracht-clientcapabilities-phase-one|title=CapabilityStatement client}}
* Link to Client CapabilityStatement
 
 
 
===Phase two===
 
* Link to Server CapabilityStatement
 
* Link to Client CapabilityStatement
 
  
===Complete===
+
=Footnotes=
* Link to Server CapabilityStatement
+
<references />
* Link to Client CapabilityStatement
 

Huidige versie van 21 okt 2020 om 15:11

Introduction

This page will detail the HL7 requirments for exhcanging the data in the eOverdracht Proeftuin phase 1 as described in the functional design. Imnplementation of the eOverdracht Proeftuin is spread over 3 different phases. Phase 2 and 3 can be found by navigating the following links in the table listed below.

Phase 2 and Phase 3 of the eOverdracht Proeftuin
Phase 2 Phase 3
Proeftuin Phase 2 eOverdracht FHIR implementation guide
  • Phase 3 of the eOverdracht proeftuin consists of the total eOverdracht message, therefore you will be directed to the eOverdracht FHIR implementation guide.

In the first phase of the Proeftuin a simplified version of both the Aanmeldbericht en Overdrachtsbericht are being used. Both messages exist of four HCIMs listed in the table below. The Aanmeldbericht is send to the recieving organisation, which after confirmation of recieving the aanmeldberricht, gets send the Overdrachtbericht.


This implementation guide assumes that the reader is familiar with FHIR(STU3).

Overarching FHIR principles

  • This implementation guide does not provide information on finding the right XIS, nor does it provide information about security. It is assumed that the sending XIS is able to make a connection with the receiving XIS.
  • All FHIR resources used within eOverdracht SHALL conform to the profiles listed in this implementation guide and SHALL include the profile canonical URL in their meta.profile element.

Package and dependencies

eOverdracht uses the FHIR Packaging mechanism to conveniently bundle all examples, profiles and other conformance resources you need into a single download. The eOverdracht package has a dependency on the Nictiz Zib2017 package .

Example instances

Example instances of the FHIR messages can be found on Simplifier:

Use case 1A: Send Overdrachtsbericht volwassenen (PUSH)

Introduction

The Send Overdrachtsbericht scenario is used by the sending XIS to send the relevant data for the patient care to the receiving XIS. The structure of the eventual scenario is described in the functional design and additionally in Opbouw Overdrachtsbericht Volwassenen. For the pilot a limited subset is implemented.

Actors

Transaction group Transaction Actor Role
Send Overdrachtbericht (PUSH) Send Overdrachtsbericht Healthcare professional at organization A (using a XIS) Sends Overdrachtsbericht
Healthcare professional at organization B (using a XIS) Receives Overdrachtsbericht

Invocation

The Send Overdrachtsbericht transaction is an HTTP POST method on the target XIS's base, where the body of the POST request is a FHIR document according to #Structure of the Overdrachtsbericht (4 HCIMs + PDF). See #Sending documents for more information.

Trigger events

This transaction is invoked when the sending XIS needs to send the Overdrachtsbericht to the receiving XIS.

Expected response

The document Bundle should be processed as a transaction by the receiving XIS. See #Processing documents for more information.

Structure of the Overdrachtsbericht (4 HCIMs + PDF)

The Overdrachtsbericht consists of multiple FHIR resources, which are assembled into a FHIR document. See #Creating documents for information on how to assemble this document.

During phase 1, the Overdrachtsbericht is based on the same 4 HCIMs as the Aanmeldbericht (Patient, Betaler, Contactpersoon en Zorgaanbieder). The table below lists the FHIR profiles[1] that are applicable for the pilot implementation of the Overdrachtsbericht transaction.

Section FHIR profile FHIR resource HCIM name HCIM version Remarks
- Overdrachtsbericht phase 1 Composition - - The Composition resource used to assemble the document
Datum overplaatsing eOverdracht-TransferDate extension - - extension in the Composition resource
Persoonsgegevens nl-core-patient Patient Patient v3.1(2017NL) -
zib-Payer Coverage Betaler v3.1(2017NL) -
Sturende organisatie nl-core-organization Organization Zorgaanbieder v3.1.1(2017NL) -
nl-core-practitioner Practitioner Zorgverlener v3.2(2017NL) -
nl-core-practitionerrole PractitionerRole
Ontvangende organisatie nl-core-organization Organization Zorgaanbieder v3.1.1(2017NL) -
nl-core-practitioner Practitioner Zorgverlener v3.2(2017NL) -
nl-core-practitionerrole PractitionerRole
PDF Binary Binary - - Used to send unstructured PDF data

Use case 3A: Send Aanmeldbericht (PUSH)

Introduction

The Send Aanmeldbericht scenario is used by the sending XIS to send the relevant data for the patient intake to the receiving XIS, and constitutes a subset of the Overdrachtsbericht. The structure of the eventual scenario is described in the functional design and additionally in Opbouw Aanmeldbericht. For the pilot a limited subset is implemented.

Actors

Transaction group Transaction Actor Role
Send Aanmeldbericht(PUSH) Send Aanmeldbericht Healthcare professional at organization A (using a XIS) Sends Aanmeldbericht
Healthcare professional at organization B (using a XIS) Receives Aanmeldbericht

Invocation

The Send Aanmeldbericht transaction is an HTTP POST method on the target XIS's base, where the body of the POST request is a FHIR document according to #Structure of the Aanmeldbericht (4 HCIMs + PDF). See #Sending documents for more information.

Trigger events

This transaction is invoked when the sending XIS needs to send the Overdrachtsbericht to the receiving XIS.

Expected response

The document Bundle should be processed as a transaction by the receiving XIS. See #Processing documents for more information.

Structure of the Aanmeldbericht (4 HCIMs + PDF)

The Aanmeldbericht consists of multiple FHIR resources, which are assembled into a FHIR document. See #Creating documents for information on how to assemble this document.

During phase 1, the Aanmeldbericht is based 4 HCIMs (Patient, Betaler, Contactpersoon en Zorgaanbieder) and uses a PDF to send the remaining data unstructured. The table below lists the FHIR profiles[1] that are applicable for the pilot implementation of the Aanmeldbericht transaction. All resources SHALL conform to the profiles listed in this table and SHALL include the profile canonical URL in the meta.profile element.

Section FHIR profile FHIR resource HCIM name HCIM version Remarks
- phase 1@ http://nictiz.nl/fhir/StructureDefinition/eOverdracht-aanmeldbericht-phase-one Composition - - The Composition resource used to assemble the document
Datum overplaatsing http://nictiz.nl/fhir/StructureDefinition/eOverdracht-TransferDate extension - - extension in the Composition resource
Persoonsgegevens http://fhir.nl/fhir/StructureDefinition/nl-core-patient Patient Patient v3.1(2017NL) -
http://nictiz.nl/fhir/StructureDefinition/zib-Payer Coverage Betaler v3.1(2017NL) -
Sturende organisatie http://fhir.nl/fhir/StructureDefinition/nl-core-organization Organization Zorgaanbieder v3.1.1(2017NL) -
Ontvangende organisatie http://fhir.nl/fhir/StructureDefinition/nl-core-organization Organization Zorgaanbieder v3.1.1(2017NL)
PDF Binary Binary - - Used to send unstructured PDF data

FHIR Documents

Both the Aanmeldbericht and the Overdrachtsbericht are sent as a FHIR Document. A document is a FHIR Bundle that assembles all relevant resources that need to be exchanged, together with a Composition resource that summarizes and references all these resources.

A FHIR document is immutable and considered to be attested by a healthcare professional.

Creating documents

To construct a document, a FHIR Composition resource is created that summarizes and references all the resources that need to be exchanged. This Composition resource is then placed together with all referenced resources in a Bundle with Bundle.type set to "document". The Composition resource SHALL be the first entry.

Profiles have been created for both the Composition and the document Bundle resources for each transaction within eOverdracht. All documents SHOULD adhere to these profiles, which are summarized in this implementation guide at the transaction level.

Sending documents

The document should be sent as an HTTP POST operation on the target XIS's base:

POST [base] {?_format=[mime-type]}

where the body of the POST request is the document.

Processing documents

The document Bundle should be processed as a transaction by the receiving XIS and each Bundle.entry should be treated as a create interaction for the Bundle.entry.resource. When the receiving XIS cannot create a new resource because of incorrect data or business rules, it should perform a rollback of the creation of any previous entries.

On success, the target XIS SHALL respond:

  • With the HTTP status code 201 Created.
  • With the Location header containing the new logical id and version id of the created resource version.
  • With a response body set to a Bundle of type "transaction-response", containing one entry for each entry in the request, in the same order, with the outcome of processing the entry. The sender may use the returned Bundle to track the outcomes of processing the entry, and the identities assigned to the resources by the server.

On failure, the target XIS SHALL respond:

  • With an HTTP status code set appropriate to the processing outcome:
    • When the resource syntax or data is incorrect or invalid, the status code should be 400 Bad Request.
    • When the server rejects the content of the resource because of business rules, the status code should be 422 Unprocessable Entity.
    • Additional HTTP status code may be used if more appropriate.
  • With a response body set to a FHIR OperationOutcome resource with detailed error messages describing the reason for the error.

FHIR CapabilityStatements

Footnotes

  1. 1,0 1,1 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.