Bundle (eHealth Bundel)
Doel
De (FHIR) Bundle (resource) is een container voor een verzameling FHIR resources. De FHIR resources in de container kan alleen geïnterpreteerd of gewijzigd worden in de context van de container.
De FHIR resources in de container kunnen direct benaderd worden door gebruik te maken van RESTful API.
Referentie
FHIR Specification (v4.0.1: R4 - Mixed Normative and STU). Dit is de huidige gepubliceerde versie. Zie ook: https://www.hl7.org/fhir/bundle.html.
Koppeltaal 2.0 profiel van Bundle
Element | Omschrijving | Card. | Type |
---|---|---|---|
type | Bepaalt het doel van de bundel resources (bv "searchset" , "collection" of "transaction") . Zie: http://hl7.org/fhir/bundle-type | 1..1 | code |
identifier | Persistente identifier voor de bundel | 0..1 | Identifier |
total | Als het een "searchset" is, dan aangeven wat het aantal matches is met de zoekopdracht | 0..1 | unsignedInt |
link | Voor het later ophalen van de bundel | 0..* | BackboneElement |
entry | De toegang tot de verschillende verzamelde resources. Elke entry element bevat een FHIR Resource | 0..* | BackboneElement |
entry.fullUrl | URI van de resource (een absoluut URL server adres of een URI voor UUID/OID) | 0..1 | uri |
entry.resource | Een resource in de bundel | 0..1 | Resource |
Voorbeelden
Aannames en opmerkingen:
- De Bundle.id wordt uitgegeven en beheerd door de beheerder van de resources (FHIR Store) en is OAuth2 beschermd.
- Alleen een OAuth2 server verleent autorisatie aan een applicatie.
Transaction (JSON)
{ "resourceType": "Bundle", "type": "transaction", "entry": [ { "fullUrl": "urn:uuid:61ebe359-bfdc-4613-8bf2-c5e300945f0a", "resource": { "resourceType": "Endpoint", "text": { "status": "additional", "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">Voorbeeld</div>" }, "identifier": "VzvzDomainKickAssApp01", "name": "KickAssApp", "status": "active", "address": "https://nl.vzvz.com/KickAssApp", "connectionType": { "system": "http://terminology.hl7.org/CodeSystem/endpoint-connection-type", "code": "hl7-fhir-rest" }, "payloadType": [ { "coding": [ { "system": "http://hl7.org/fhir/resource-types", "code": "Task" } ] } ], "managingOrganization": { "reference": "http://hapi.fhir.org/baseR4/Organization/1736984", "type": "Organization" } }, "request": { "method": "POST", "url": "Endpoint" } }, { "resource": { "resourceType": "Organization", "text": { "status": "additional", "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">Voorbeeld</div>" }, "identifier": [ { "system": "http://fhir.nl/fhir/NamingSystem/agb-z", "value": "12345678" }, { "system": "http://fhir.nl/fhir/NamingSystem/ura", "value": "12345678" } ], "active": true, "type": [ { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/organization-type", "code": "prov", "display": "Healthcare Provider" } ] } ], "name": "GGZ-XYZ", "telecom": [ { "system": "phone", "value": "(+31) 627508550" }, { "system": "email", "value": "hoofd@ggz-xyz.nl" } ], "address": [ { "city": "Amsterdam", "postalCode": "1000AA", "country": "NLD" } ], "endpoint": { "identifier": "VzvzDomainKickAssApp01", "type": "Endpoint" } }, "request": { "method": "PUT", "url": "Organization/1736984" } } ] }
(JSON) Result op een Transactie
{ "resourceType": "Bundle", "id": "e92cdb5b-7e07-4763-9738-021d5b167a2d", "type": "transaction-response", "link": [ { "relation": "self", "url": "http://hapi.fhir.org/baseR4" } ], "entry": [ { "response": { "status": "201 Created", "location": "Endpoint/1754183/_history/1", "etag": "1", "lastModified": "2021-01-19T16:54:02.431+00:00" } }, { "response": { "status": "200 OK", "location": "Organization/1736984/_history/2", "etag": "2" } } ] }
Search Bundle op Patient.identifier (XML)
<Bundle xmlns="http://hl7.org/fhir"> <id value="593b6ab2-b977-4b0e-bd0a-36c220d93355"/> <meta> <lastUpdated value="2021-01-19T15:29:03.996+00:00"/> </meta> <type value="searchset"/> <total value="1"/> <link> <relation value="self"/> <url value="http://hapi.fhir.org/baseR4/Patient?_format=xml&_pretty=true&identifier=systeemnaamuitgave%7CBerendBotje-01"/> </link> <entry> <fullUrl value="http://hapi.fhir.org/baseR4/Patient/1754096"/> <resource> <Patient xmlns="http://hl7.org/fhir"> <id value="1754096"/> <meta> <versionId value="1"/> <lastUpdated value="2021-01-19T15:28:21.267+00:00"/> <source value="#AWLsIUVnS9RFllGS"/> </meta> <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"> <div class="hapiHeaderText">Berend <b>BOTJE </b> </div> <table class="hapiPropertyTable"> <tbody> <tr> <td>Identifier</td> <td>BerendBotje-01</td> </tr> <tr> <td>Date of birth</td> <td> <span>20 December 1963</span> </td> </tr> </tbody> </table> </div> </text> <identifier> <use value="usual"/> <system value="systeemnaamuitgave"/> <value value="BerendBotje-01"/> </identifier> <active value="true"/> <name> <text value="Berend Botje"/> <family value="Botje"/> <given value="Berend"/> </name> <gender value="male"/> <birthDate value="1963-12-20"/> <managingOrganization> <type value="Organization"/> <identifier> <system value="http://fhir.nl/fhir/NamingSystem/agb-z"/> <value value="12345678"/> </identifier> </managingOrganization> </Patient> </resource> <search> <mode value="match"/> </search> </entry> </Bundle>