diff --git a/anw/TD-ANWv2024.1.md b/anw/TD-ANWv2024.1.md index fc73f1e..5c23bdc 100644 --- a/anw/TD-ANWv2024.1.md +++ b/anw/TD-ANWv2024.1.md @@ -32,6 +32,9 @@ * [ANW-Regisseur](#anw-regisseur) * [ANW-Bronhouder](#anw-bronhouder) * [ANW-Zorgverlener](#anw-zorgverlener) +* [Uitbreidingen](#uitbreidingen) + * [Registeren van metingen](#registeren-van-metingen) + * [Foutafhandeling van registraties naar het brondossier](#foutafhandeling-van-registraties-naar-het-brondossier) * [TODO](#todo) @@ -62,8 +65,9 @@ ### NUTS-adresboek De regisseur heeft toegang tot het NUTS-adresboek, hierin kunnen de leveranciers voor elke organisatie die onderdeel uit - maken het ANW-netwerk aanduiden dat de betreffende organisatie de service “ANW-Zorgverlener” -en “ANW-Bronhouder” aanbiedt. De regisseur is zelf ook te vinden in het adresboek voor de bronhouder en zorgverlener om toegang +maken het ANW-netwerk aanduiden dat de betreffende organisatie de service “ANW-Zorgverlener” +en “ANW-Bronhouder” aanbiedt. De regisseur is zelf ook te vinden in het adresboek voor de bronhouder en zorgverlener om +toegang te geven tot deze regisseur met als service “ANW-Regisseur”. ### Regisseur vraagt de cliënt / medewerker gegevens op in alle ECD’s @@ -91,7 +95,7 @@ Op basis van het ontvangen access token kan de zorgaanbieder bepalen tot welke e zijn voor deze usecase de volgende twee: [Endpoints voor data regisseur](#endpoints-voor-data-regisseur) Als query wordt de query “ANW-zorg” meegegeven. Hiermee kan de zorgaanbieder bepalen welke -cliënten/medewerkers teruggestuurd moeten worden. +cliënten/medewerkers teruggestuurd moeten worden. Elke leverancier maakt het mogelijk voor organisaties om cliënten als "ANW" cliënt te kenmerken in hun ECD. Afspraak is dat alleen “In zorg” zijnde cliënten teruggegeven worden voor de ANW-usecase en ook alleen “In dienst (actief @@ -692,6 +696,7 @@ Hier staan de verschillende nutsservices die de verschillende partijen moeten re ze beschikbaar moeten stellen. ### ANW-Regisseur + - Service: **ANW-Regisseur** | Endpoint | Beschrijving | @@ -700,6 +705,7 @@ ze beschikbaar moeten stellen. | oauth | Volledige URL van de n2n/auth/v1/accesstoken van de nutsnode van de regisseur | ### ANW-Bronhouder + - Service: **ANW-Bronhouder** | Endpoint | Beschrijving | @@ -709,6 +715,7 @@ ze beschikbaar moeten stellen. | notification | Endpoint waar de notificatie naar toe gestuurd kan worden voor het verzoek om een autorisatie aan te maken voor een “ANW-Zorgverlener” | ### ANW-Zorgverlener + - Service: **ANW-Zorgverlener** | Endpoint | Beschrijving | @@ -717,6 +724,139 @@ ze beschikbaar moeten stellen. | oauth | Volledige URL van de n2n/auth/v1/accesstoken van de nutsnode van de inzage applicatie | | notification | Endpoint waar de notificatie naar toe gestuurd kan worden om mee te delen dat er een authorisatie door een “ANW-Bronhouder” is aangemaakt | +# Uitbreidingen + +## Registeren van metingen + +Eerste uitbreiding op ANW is het registreren van metingen richting het brondossier. Om te registreren is geen +uitbreiding nodig op de bestaande authorization credentials. Vanwege de tekstrapportage is de POST voor observation +toegestaan. Het is aan de +leverancier welke registraties beschikbaar zijn richting het brondossier voor de zorgverlener. Het brondossier +**accepteert te allen tijde** een valide meting volgens de onderstaande Nictiz-profielen. Hoe het brondossier dit +vervolgens +verder verwerkt is aan de leverancier. De registratie zijn losse create requests per meting. Dit gebeurt in dezelfde +stap als het registreren van de tekstrapportage. + +| ZIB | Fhir-profiel | +|:--------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Polsfrequentie | [https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954945](https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954945) | +| Lichaamstemperatuur | [https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954748](https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954748) | +| Lichaamslengte | [https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954746](https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954746) | +| Lichaamsgewicht | [https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954750](https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954750) | +| Respiration | [https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954947](https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954947) | +| Bloeddruk | [https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954945](https://simplifier.net/packages/nictiz.fhir.nl.stu3.zib2017/2.2.10/files/1954945) | + +## Foutafhandeling van registraties naar het brondossier + +In het geval van een fout bij de registratie antwoord het bronsysteem met een OperationOutcome. +Zie [Fout afhandeling/Handling Errors](https://informatiestandaarden.nictiz.nl/wiki/FHIR:V1.0_FHIR_IG_STU3#Handling_errors) +in de implementatiegids van Nictiz. De [operation outcome](https://hl7.org/fhir/STU3/operationoutcome.html) kan door een +systeem gebruikt worden om aan te geven richting de +zorgverlener wat er fout is gegaan. In het geval van inhoudelijke fouten die niet zijn toegestaan volgens de +Nictiz-profielen geeft de operationoutcome +aan welke fout dit betreft. Zodat de zorgverlener de nodige aanpassing kan doen. + +## Relatieve naar volledige URL's +Op het moment worden er relatieve url's gebruikt in de Task van de Regisseur. Deze moeten worden omgezet naar volledige URL's. Hiermee moeten ook de brondossiers en inzage dossier compatible mee zijn. + +## Woningtoegang +Voor woningtoegang wordt er gebruik gemaakt van de Location Resource. In de Location resource wordt in het description veld de sleutelcode gevuld als vrije veld met potentionele beschrijving erbij (TODO: bespreken sleutelcode apart in de resource vullen?). Het inzage dossier kan aan deze Location komen doormiddel van dat die in de input zit van de Task. Het is de verantwoordelijkheid van het Brondossier om bij de PUT van de Task die al gebeurd dan ook dit input mee te sturen. Daarnaast moet de bronhouder ook het verifiable credential updaten om ook hier de Location reference bij in te zetten die in de Task wordt gezet. Als voorbeeld hoe dan de PUT in de nieuwe versie eruit komt zien is: +```json +{ + "resourceType": "Task", + "id": "af10c4c8-bc4d-40c7-a335-fb63fe7158d3", + "meta": { + "profile": [ + "https://nuts.nl/fhir/StructureDefinition/nl-core-authorization-request" + ] + }, + "intent": "order", + "code": { + "coding": [ + { + "code": "ANW-autorisatie-verzoek" + } + ] + }, + "for": { + "reference": "https://fhirserverbron.example.nl/Patient/{patientId}", + "display": "patient display name" + }, + "authoredOn": "2024-01-23T13:23:42.1885689+00:00", + "requester": { + "agent": { + "identifier": { + "system": "http://nuts.nl", + "value": "{DID regiseur}" + }, + "display": "Regiseur A" + }, + "onBehalfOf": { + "identifier": { + "system": "http://nuts.nl", + "value": "{DID authorizing party}" + }, + "display": "Authorizing party C (data owner)" + } + }, + "owner": { + "identifier": { + "system": "http://nuts.nl", + "value": "{DID accessing party}" + }, + "display": "Accessing party B (data accessor)" + }, + "reason": { + "text": "{optional user input of the regisseur}" + }, + "restriction": { + "period": { + "start": "2024-01-23T14:23:42.2264869+01:00", + "end": "2024-01-26T13:23:42.2295674+00:00" + }, + "recipient": [ + { + "reference": "https://fhirserverinzagedossier.example.nl/Practitioner/{practitioner with access Id}", + "display": "anw practitioner display name" + } + ] + }, + "output": [ + { + "type": { + "coding": [ + { + "system": "http://nuts.nl", + "code": "vc-id" + } + ] + }, + "valueString": "did:nuts:EwVMYK2ugaMvRHUbGFBhuyF423JuNQbtpes35eHhkQic#b53bda82-712a-4d20-b673-e67efaf60acc" + } + ], + "input": [ + { + "type": { + "coding": [ + { + "system": "http://hl7.org/fhir/task-input-type", + "code": "location", + "display": "Location" + } + ] + }, + "valueReference": { + "reference": "https://fhirserverbron.example.nl/Location/{locationId}" + } + } + ] +} +``` + +## Versionering +Voor de bovenstaande doorontwikkelingen wordt als versionering tijdelijk gebruik gemaakt naar een link in het compatibility statement (op te halen op het /metadata endpoint) met daarin een instantiates waarbij een van de waarden deze moet bevatten: +"https://github.com/nuts-foundation/bolts/blob/master/anw/TD-ANWv2024.1.md|1.1". De uiteindelijke versie beheer gaat ook werken met het vullen van de instantiates met een link naar een implementation guide voor elke specifieke rol een URI (bronhouder, inzagedossier, reggiseur). In de doorontwikkeling wordt ook het metadata endpoint verwacht dat die publiekelijk toegankelijk is. Wanneer /metadata niet resolvable is of bevat niet de bovenstaande URI dan draait er een "1.0" versie waarbij de bovenstaande doorontwikkelingen nog niet zijn geimplementeerd. + ### TODO * `userContext` voor het opvragen van de lijst van Patient/Practitioner voor ANW-zorg moet duidelijk gemaakt worden: @@ -724,4 +864,4 @@ ze beschikbaar moeten stellen. duidelijk werd is bij een eerder technisch overleg overeengekomen voorlopig te gaan voor `false`, om (pre-)caching makkelijker te maken. Bij moment van schrijven op 24 juli 2024 worden de VCs bij alle partijen nog aangemaakt voor `false`, en vanuit Nedap worden de requests alvast altijd uitgevoerd met een aanwezige user context (in andere - woorden, Nuts-elevatie is verplicht alvorens het regisseursscherm geopend kan worden) en gecached per user. \ No newline at end of file + woorden, Nuts-elevatie is verplicht alvorens het regisseursscherm geopend kan worden) en gecached per user.