Use Cases Resource Broker MedMij-in
Overzicht Resource Broker MedMij-in
Onderstaande figuur toont een overzicht van de interfaces, services en functies van de Resource Broker MedMij-in component.
Resource Broker MedMij-in vervult de rol van Resource Server, zoals beschreven in het MedMij afsprakenstelsel, en ontsluit hierbij, in samenwerking met Resource Broker VnC, AORTA Resource Servers van zorgaanbieders die diensten willen aanbieden op het MedMij netwerk.
De services zijn toegankelijk via een geboden interface en worden beschreven in de vorm van use cases. Een service wordt altijd vervult middels één of meerdere applicatiefuncties, bijvoorbeeld RB-Logging. De Resource Broker MedMij-in component maakt zelf ook gebruik van een aantal interfaces, bijvoorbeeld van de Verzending & Consolidatie Interface.
Ondersteunde MedMij gegevensdiensten
Bij het doorlopen van de use cases in deze sectie, worden de MedMij gegevensdiensten ondersteund, zoals benoemd in de specificaties van de MedMij Resource Broker Interface.
Opleveren MedMij CapabilityStatement
Primaire actor | PGO Server |
---|---|
Systeem | MedMij FHIR Processor |
Secundaire actor | Autorisatie Server ZA, Resource Broker VnC |
Pre-condities
Het systeem is aangesloten op het MedMij netwerk. |
Het systeem is slechts benaderbaar voor PGO Servers die zijn aangesloten op het MedMij netwerk. |
Triggers
De primaire actor wil het CapabilityStatement van de resource broker ophalen.
Main flow
Stap | Omschrijving | Uitzondering(en) |
---|---|---|
1 | Het systeem ontvangt een verzoek en start de verwerking. | |
2 | Het systeem toetst of het verzoek voldoet aan de interface specificatie. | Ongeldig FHIR-verzoek statuscode 400 Bad Request
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
3 | Het systeem bepaalt het te retourneren CapabilityStatement, met daarin de capabilities, zoals te vinden in de Implementation Guides van de informatiestandaarden die horen bij de op het betreffende ResourceEndpoint geboden MedMij gegevensdiensten. | |
4 <exit> | Het systeem retourneert een response naar de primaire actor. |
Post-condities
Het systeem heeft het verzoek op de juiste wijze verwerkt en heeft een daarbij passende response geretourneerd. |
Verwerken MedMij FHIR-interactie
Primaire actor | PGO Server |
---|---|
Systeem | MedMij FHIR Processor |
Secundaire actor | ZORG-AB, Resource Broker VnC |
Pre-condities
Het systeem is aangesloten op het MedMij netwerk. |
Het systeem is slechts benaderbaar voor PGO Servers die zijn aangesloten op het MedMij netwerk. |
Triggers
De primaire actor stuurt een resource request in
Main flow
Stap | Omschrijving | Uitzondering(en) |
---|---|---|
1 | Het systeem ontvangt een verzoek en start de verwerking. | |
2 | Het systeem controleert, m.b.v. de MedMij Whitelist, of requests van deze primaire actor mogen worden verwerkt. | Primaire actor is niet geautoriseerd statuscode 403 Forbidden
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
3 | Het systeem doorloopt use case extension "Toetsing tokens bij inkomend request". | |
4 | Het systeem doorloopt use case extension "Inhoudelijke toetsing request". | |
5 | Het systeem doorloopt use case extension "Toetsing scope van request". | |
6 | Het systeem verkrijgt bij ZORG-AB de URA die hoort bij de zorgaanbieder in het MedMij access_token en verkrijgt ook de ondersteunde conformances. | |
7 | Het systeem doorloopt use case extension "Adressering van request". | |
8 | Wanneer een te adresseren applicatie geschikt is o.b.v. ondersteunde HL7v3-conformances, maar het ontvangen request NIET wordt ondersteund door de Transformatie Service (d.w.z. lege response vanuit Adressering), dan doorloopt het systeem, voor iedere geschikt bevonden applicatie, de use case extension Verzenden Generieke Query, en gaat daarna verder naar de exit stap van de main flow. | Geen geschikte applicatie gevonden statuscode 404 Not Found
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
9 | Het systeem initieert de use case Inwisselen MedMij access_token middels de AORTA Token Interface. De juiste versie van deze interface wordt gekozen o.b.v. de hoogste versie van het AORTA access_token dat wordt ondersteund door de te adresseren applicatie. | |
10 | Het systeem controleert of het client_id uit de token exchange response overeenkomt met het client_id van de primaire actor die het resource request heeft gestuurd. | Het client_id komt niet overeen statuscode 401 Unauthorized
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
11 | Het systeem initieert de use case Verzenden & Consolideren benodigde interacties middels de Verzending & Consolidatie Interface en vult bij het doorsturen van het ontvangen resource request zo nodig het attribuut Patient.identifier met het BSN van de gebruiker. | |
12 | Het systeem ontvangt een response. | |
13 | Het systeem doorloopt use case extension "Screening van response". | |
14 <exit> | Het systeem retourneert een response naar de primaire actor. |
Post-condities
Het systeem heeft het verzoek op de juiste wijze verwerkt en heeft een daarbij passende response geretourneerd. |
Het systeem heeft het ontvangen request en de geretourneerde response gelogd. |
Verwerken $is-allowed
Primaire actor | Autorisatie Server MedMij |
---|---|
Systeem | MedMij FHIR Processor |
Secundaire actor | ZORG-AB, Resource Broker VnC |
Pre-condities
Het systeem is aangesloten op het MedMij netwerk. |
Het systeem is slechts benaderbaar voor
|
Triggers
De primaire actor initieert een $is-allowed operation
Main flow
Stap | Omschrijving | Uitzondering(en) |
---|---|---|
1 | Het systeem ontvangt een verzoek en start de verwerking. | |
2 | Het systeem doorloopt use case extension "Toetsing tokens bij inkomend request". | |
3 | Het systeem doorloopt use case extension "Inhoudelijke toetsing request". | |
4 | Het systeem doorloopt use case extension "Toetsing scope van request". | |
5 | Het systeem verkrijgt bij ZORG-AB de URA die hoort bij de zorgaanbieder in het MedMij access_token en verkrijgt ook de ondersteunde conformances. | |
6 | Het systeem doorloopt use case extension "Adressering van request". | |
7 | Het systeem initieert de use case Inwisselen MedMij access_token middels de AORTA Token Interface. | |
8 | Het systeem controleert of het client_id uit de token exchange response overeenkomt met het client_id van de primaire actor die het resource request heeft gestuurd. | Het client_id komt niet overeen statuscode 401 Unauthorized
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
9 | Het systeem initieert de use case Verzenden & Consolideren benodigde interacties middels de Verzending & Consolidatie Interface. | |
10 | Het systeem ontvangt een response. | |
11 <exit> | Het systeem retourneert een response naar de primaire actor. |
Post-condities
Het systeem heeft het verzoek op de juiste wijze verwerkt en heeft een daarbij passende response geretourneerd. |
Het systeem heeft het ontvangen request en de geretourneerde response gelogd. |
Use Case extensions
Verzenden Generieke Query
Stap | Omschrijving | Uitzondering(en) |
---|---|---|
1 | Het systeem verzendt een gerichte generieke HL7v3 query met de juiste contextcode, zoals beschreven in de toelichting "Bepalen contextCode". | |
2 | Het systeem ontvangt een HL7v3 batch antwoord met alle door het xIS opgeleverde gegevens. | |
3 | Het systeem vertaalt filtert zo nodig de HL7v3 responses naar HL7-FHIR, en voegt hierbij OperationOutcome resources voor opgetreden foutmeldingen. Zie ook de toelichting "Vertaling en filtering". | Fout bij vertaling statuscode 500 Internal Server Error Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
4 | Het systeem verwijdert in de response opgenomen BSN's. |
Toelichtingen
Toelichting token exchange endpoint
De URL van het juiste token exchange endpoint is configureerbaar in het systeem, maar kan desgewenst ook via de AS Metadata Interface worden verkregen.
Bepalen contextCode
Bij het bepalen van de juiste contextcode houdt het systeem rekening met het volgende:
Met behulp van het ZAB dient gecontroleerd te worden of het systeem van de zorgaanbieder de specifieke systeemrol (DVZA.BES.2020) voor het beschikbaar stellen van de betreffende gegevens aan het LSP ondersteunt;
Wanneer het systeem van de zorgaanbieder de specifieke systeemrol wel ondersteunt, dan dient de resource server een "opgeschaalde versie" van een contextcode in te sturen via de generieke query aan de ZIM (bijvoorbeeld "MEDVER").
Wanneer geen van de systemen van de zorgaanbieder de specifieke systeemrol ondersteunt, dan dient de resource server een "pilot versie" van een contextcode in te sturen via de generieke query aan de ZIM (bijvoorbeeld "MEDVERPLT").
Vertaling en filtering
De opgeleverde HL7v3 antwoorden worden vertaald naar de juiste FHIR resources, waarbij gebruik wordt gemaakt van door Nictiz beheerde XSLT vertalingen. Let op: de XSLT vertaalt van XML naar XML. Het systeem voert zo nodig zelf vertaling uit van XML naar JSON.
De juiste vertaling en eventueel benodigde filtering o.b.v. zoekparameters, wordt uitgevoerd op basis van:
het AORTA interactie-ID van het antwoordbericht die is opgenomen in de batchwrapper van het antwoord van het LSP,
zo nodig het ID van de gebruikte MedMij gegevensdienst (waarbij rekening gehouden moet worden met kopie-gegevensdiensten die kunnen worden gebruikt in gecontroleerde livegangen) en
het aan het PGO te retourneren FHIR resource type.