Skip to main content
Skip table of contents

Use Cases Adressering Server

Overzicht Adressering Server

Onderstaande figuur toont een overzicht van de interfaces, services en functies van de Adressering Server.

De Adressering Server helpt bij het bepalen welke interacties en versies, uit een beoogde set, kunnen worden geïnitieerd bij een bepaalde Resource Server. Verder biedt de Adressering Server ook informatie over interacties die uitgevoerd kunnen worden. De Adressering Server houdt ook rekening met  transformaties tussen informatiestandaarden die eventueel, op het pad tussen Resource Client en Resource Server, zouden kunnen worden uitgevoerd.

Tevens biedt de Adressering Server Resource Clients de mogelijkheid om informatie op te halen over interacties (bijvoorbeeld compatibele interacties, zodat Resource Clients bij zoekopdrachten in ZORG-AB rekening te kunnen met welke interacties doelsystemen kunnen ontvangen).

afbeelding-20250604-081852.png

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 "Adressering".

Bepaal route

Primaire actor

Resource Client, RB MedMij-in, Autorisatie Server ZA

Systeem

Adressering Server

Secundaire actor

Resource Broker APR, Transformatie Server, ZORG-AB

Code

AOF.UC.ADS.100.v8

Realiseert Feature

getRoutingInfo

Pre-condities

Het systeem is slechts benaderbaar voor

  • GBx-applicaties die zijn aangesloten op het AORTA netwerk, OF

  • componenten van VZVZ die zijn aangesloten via een intern netwerk of op het AORTA netwerk

Het systeem beschikt over up-to-date gegevens betreffende de door RB MedMij-in ondersteunde MedMij gegevensdiensten, en de daarbinnen gehanteerde AORTA interactie-id's.

Het systeem beschikt over een voldoende actueel AORTA Stelseltoken die het via de AORTA Stelsel Metadata Interface heeft verkregen.

Het systeem beschikt over up-to-date gegevens betreffende de ondersteunde interacties en compatible interacties.

Het systeem beschikt over up-to-date gegevens betreffende de ondersteunde transformaties (transformatie server metadata), die het heeft verkregen via Feature getTransformatieMetadata. De base-URL van de Transformatie Server is verkregen uit het AORTA Stelseltoken.

Het systeem beschikt over up-to-date gegevens betreffende ondersteunde scopes van externe GTK’s.

Triggers

  • De primaire actor stuurt een routing info request in

Main flow

AOF.UCe.VAL.100.v1 - Toetsing type content

Uitkomst

Stap

Omschrijving

i

Het systeem ontvangt een verzoek en start de verwerking.

Het systeem toetst of het gevraagde type content (Accept header) en het gehanteerde type content (Content-Type header) worden ondersteund.

NB. wanneer het verzoek wordt ontvangen van een component van VZVZ, dan hoeft geen toets op type content te worden uitgevoerd.

Gevraagd type content niet ondersteund

statuscode 406 Not Acceptable

  • Deze situatie kan slechts optreden wanneer requests worden ontvangen via HTTP(S)

Gehanteerd type content niet ondersteund

statuscode 415 Unsupported Media Type

  • Deze situatie kan slechts optreden wanneer requests worden ontvangen via HTTP(S)

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

Stap

Omschrijving

Uitkomst

1

Het systeem toetst of het verzoek voldoet aan de interface specificatie.

Ongeldig verzoek

statuscode 400 Bad Request

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

2

Het systeem stelt vast voor het verzoek voor welke interactie-id('s) routing info wordt gevraagd. Zie de Toelichting bepalen ontvangen interactie-id(s)

NB. interacties van het type transaction of batch, worden hierin vooralsnog niet uitgesplitst in de individuele interacties die deel uitmaken van de batch/transaction.

Tijdelijke work-around (nodig tot GBZ-applicaties cancelation van notificaties gaan ondersteunen). Indien de uitvoerbare interactie een “update:twiin-TaskNotifiedPull:1” interactie betreft, dan behandelt het systeem deze als “create:twiin-TaskNotifiedPull:1“. In de response (exit stap) wordt als interactie-id echter wel opgenomen “update:twiin-TaskNotifiedPull:1“.

Interactie-id kan niet worden bepaald (komt niet voor in de AORTA interactietabel en/of is onjuist)

statuscode 400 Bad Request

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

3

Het systeem stelt vast voor voor het verzoek welke beoogde doel systeem(en) routing info wordt gevraagd. Zie de Toelichting bepalen beoogde destination(s).

Destination kan niet worden bepaald

statuscode 400 Bad Request

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

4

Het systeem stelt de routeringsinformatie vast m.b.v. het routeringsalgoritme. Als input voor het routeringsalgoritme wordt het interactie-id(s) en beoogde doelsystem(en) gebruikt. Zie de Beschrijving routeringsalgoritme.

Destination niet gevonden

statuscode 404 Not Found

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

5

<exit>

Het systeem retourneert een response naar de primaire actor.

Verwerking succesvol

statuscode 200 OK

Post-condities

Het systeem heeft het verzoek op de juiste wijze verwerkt en heeft een daarbij passende response geretourneerd.

Het systeem heeft van het ontvangen request, de volgende attributen gelogd:

  • datum en tijd van ontvangst

  • request-id

  • initial-request-id

  • sender-id

    • role-id wanneer de sender van het request een VZVZ component is, en de aanroep niet via TLS geschiedt

    • common name wanneer de aanroep via TLS geschiedt

==

Het systeem heeft voor ieder uitgaand request, dat bij het doorlopen van de use case werd verzonden, de volgende attributen gelogd:

  • datum en tijd van verzending

  • request-id

  • initial-request-id

  • receiver-id

    • role-id wanneer de receiver van het request een VZVZ component is, en de aanroep niet via HTTP geschiedt

    • FQDN wanneer de aanroep via HTTP geschiedt

Het systeem heeft van de geretourneerde response, de volgende attributen gelogd:

  • datum en tijd van response

  • request-id van het bijbehorende request

  • initial-request-id van het bijbehorende request

  • receiver-id

    • role-id wanneer de receiver van de response een VZVZ component is, en de aanroep niet via TLS geschiedt

    • common name wanneer de aanroep via TLS geschiedt

  • HTTP statuscode en eventueel geretourneerde foutinformatie

==

Het systeem heeft voor iedere response, die bij het doorlopen van de use case werd ontvangen, de volgende attributen gelogd:

  • datum en tijd van response

  • request-id van het bijbehorende request

  • initial-request-id van het bijbehorende request

  • sender-id

    • role-id wanneer de sender van de response een VZVZ component is, en de aanroep niet via TLS geschiedt

    • common name wanneer de aanroep via TLS geschiedt

  • HTTP statuscode en eventueel geretourneerde foutinformatie

Toelichting bepalen ontvangen interactie-id(’s)

De Adressering Server moet uit het verzoek bepalen voor welke interactie‑id(s) routeringsinformatie is opgevraagd. Voor elk ontvangen interaction‑object wordt één interactie‑id bepaald. De wijze waarop het interactie‑id wordt bepaald, is afhankelijk van de samenstelling van het ontvangen interaction‑object.

Bepalingswijze 1 – interaction.id

Indien het interaction‑object is gevuld met het attribuut id, wordt dit attribuut gebruikt als interactie‑id. Het versie‑deel in het id‑attribuut wordt geïnterpreteerd als een major versienummer conform semver (bijv. 1, * of x).

Voorbeeld: search:mp-MedicationAgreement:1


Bepalingswijze 2 – method + url + aortaVersion (Legacy)

Indien het interaction‑object is gevuld met method, url en aortaVersion, bepaalt de Adressering Server het interactie‑id door:

  • het interactietype af te leiden uit de HTTP‑method;

  • het resource‑type en eventueel resource‑id af te leiden uit de URL;

  • de interactieversie af te leiden uit aortaVersion.

Eventuele URL‑parameters en een meegezonden base‑URL worden genegeerd. Deze methode wordt uitsluitend gebruikt voor legacy interacties.

Voorbeeld: read:Observation:2.1:request of search:Observation:2.1:request


Bepalingswijze 3 – type + fhirProfile + fhirProfileVersion

Indien het interaction‑object is gevuld met type, fhirProfile en fhirProfileVersion, stelt de Adressering Server het interactie‑id samen op basis van:

  • het FHIR interactietype (type);

  • het opgegeven FHIR‑profiel;

  • de major versie van het FHIR‑profiel, afgeleid uit fhirProfileVersion.

Voorbeeld: read:zib-LivingSituation:2


Bepalingswijze 4 – type + fhirProfile

Indien het interaction‑object is gevuld met type en fhirProfile, stelt de Adressering Server het interactie‑id samen op basis van:

  • het FHIR interactietype (type);

  • het opgegeven FHIR‑profiel.

In dit geval wordt geen versie vastgelegd.

Voorbeeld: search:zib-LivingSituation

Toelichting bepalen beoogde destination(s)

De Adressering Server moet uit het verzoek bepalen voor welke beoogde doel systeem(en) routeringsinformatie is opgevraagd. Dit kan resulteren in 0..n appIDs of 0..1 URA. De wijze waarop de destination wordt bepaald, is afhankelijk van de gebruikte samenstelling van het interaction‑object:

Voor interaction‑bepalingswijzen 1, 3 en 4 wordt de beoogde destination appID of URA bepaald op basis van het destination‑object.


Voor interaction-bepalingswijze 2 (Legacy) wordt de destination appID:

  • Indien de interaction.url een appID bevat wordt deze gebruikt als beoogde destination

  • Indien de interaction.url geen appID bevat wordt het destination bepaald op basis van het destination-object.

Indien meerdere interaction-objecten aanwezig zijn, kan per interaction een andere wijze van destination-bepaling van toepassing zijn.

Merk op, De Adressering Server kan meerdere beoogde destinations (appIDs en/of URA) bepalen; de uiteindelijke selectie van een destination vindt plaats in vervolgstappen van de flow.

Beschrijving routeringsalgoritme

Het routeringsalgoritme heeft als doel om, gegeven een ontvangen interactie‑id en beoogde destination(s), de beste uitvoerbare match te bepalen tussen de versturende en ontvangende interactie‑id’s waarvoor zowel client als server aantoonbaar de vereiste conformances, transformaties en autorisatiecontext ondersteunen. Het algoritme omvat de volgende stappen:

  1. Voor elke ontvangen interactie(s) wordt bepaald m.b.v. de Transformatie server getTransformatieMetadata, vast welke uitvoerbaar zijn (eventueel na toepassing van een transformatie) en naar welke uitgaande interactie‑id’s deze zou worden getransformeerd.

  2. Voor de uitvoerbare interactie(s) wordt bepaald of de beoogde doelsysteem(en) de interactie ondersteunen (de conformance om het interactie-id te kunnen verwerken).

    1. De Resource Broker GTK wordt hierin als reguliere GBx-applicatie (Resource Server) beschouwd. RB GTK heeft één appID, en kan interacties opzetten met alle, op Twiin aangesloten, externe GTK’s.

    2. Indien het beoogde doel systeem een URA is wordt bepaald, m.b.v. het Applicatie Register (APR) getApplications bepaald welke appIDs bij deze URA horen en welke conformances deze hebben. Er wordt bepaald welke appIDs de uitvoerbare interactie(s) ondersteunen.

    3. Indien het beoogde doel systeem appID(s) betreft wordt bepaald, m.b.v. het APR getApplication welke appIDs de uitvoerbare interactie(s) ondersteunen.

  3. Op alle van de APR ontvangen conformances worden additionele toetsen uitgevoerd. Zie de Toelichting conformance en Toelichting additionele conformance toetsen).

  4. Indien in stap 2 geen geschikte appID gevonden is in het APR wordt m.b.v. ZORG-AB gecontroleerd welke interacties de URA kan ontvangen.

  5. Voor elke appID wordt op basis van de opgehaalde systeemrollen bepaald of de de appID AORTA access_tokens kan verwerken, en zo ja wat de hoogste versie is die wordt ondersteund.

    1. Indien een transformatie vereist is, wordt altijd minimaal AORTA access_token versie 3 toegepast

    2. Voor een v3-bron is dit de hoogste versie die door de RB VnC wordt ondersteund.

    3. Bij een fhir-bron moet de hoogste ondersteunde versie van de GBx-applicatie (resource server) worden meegegeven.

  6. Op basis van de verzamelde uitvoerbare routes selecteert de Adressering Server per destination (appID) de beste uitvoerbare match. De selectie vindt plaats op basis van de hieronder beschreven voorkeursregels bepalen route.

  7. Indien voor een interactie geen uitvoerbare route kan worden bepaald, wordt voor deze interactie geen destinationInfo opgenomen in de getRoutingInfoResponse.

Het resultaat van het routeringsalgoritme wordt opgenomen in de routeringsinformatie (getRoutingInfoResponse)

Toelichting conformances

Het APR bevat gegevens over welke systeemrollen een applicatie ondersteunt. Deze APR-gegevens zijn ook opvraagbaar via ZORG-AB.

Aan een systeemrol zijn, indien van toepassing, conformanceregels verbonden, met daarin de volgende gegevens:

  • interactie-id

  • ontvangen (ja/nee)

  • verzenden (ja/nee)

Het interactie-id heeft voor FHIR-interacties de volgende structuur:

  • <basis interactietype>:<FHIR-profiel>:<major FHIR profiel versie>, bijv. "search:mp-MedicationAgreement:1", OF
    operation:<operation name>:<major operation versie>, bijv. "operation:$get-aorta-data:1".

  • Voor oude interactie-id’s (<= AoF 0.7) geldt: de FHIR code (bijvoorbeeld "search" of "read"), het FHIR resourcetype (bijvoorbeeld "Observation") en interactieversie (bijvoorbeeld "1.0.x") worden tezamen opgevat als een interactie-id, en wel in het formaat "<code>:<resourcetype>:<versie>:<request/response>". Voorbeeld: “search:Observation:2.1:request”.

HL7v3-interacties worden in het APR altijd geregistreerd in request-response-paren. Voor FHIR-interacties wordt altijd gewerkt met één conformance voor een interactie, namelijk degene voor een request-interactie. Bijvoorbeeld, wanneer een GBx-applicatie een FHIR-request mag verzenden, dan mag deze applicatie altijd ook de bijbehorende response ontvangen. Wanneer een GBx-applicatie een FHIR-request mag ontvangen, dan mag ook de bijbehorende response worden geretourneerd (verzonden).

Om een v3-interactie te mogen initiëren (initiate=yes) en de bijbehorende response te mogen ontvangen heeft een GBx-applicatie een conformance nodig voor de request-interactie en één voor de bijbehorend response-interactie:

  • Initiëren van een request - verzenden “ja”.

  • Ontvangen van bijbehorende response - ontvangen “ja”.

Om een medische bouwsteen via een generieke query (HL7v3) te kunnen opvragen (trigger=yes), heeft een initiërende GBx-applicatie, naast conformances voor de generieke query, conformances nodig voor:

  • De betreffende v3-request-interactie, waarbij verzenden op “nee” staat en ontvangen op “nee” staat, EN voor de bijbehorende v3-response-interactie, waarbij ontvangen op “ja” staat (het laatste wordt geborgd door het TKID-proces).

Om een v3-interactie te mogen ontvangen (process=yes) en de bijbehorende response te mogen retourneren heeft een GBx-applicatie een conformance nodig voor de request-interactie en één voor de bijbehorend response-interactie:

  • Ontvangen van een request - ontvangen “ja”.

  • Retourneren van bijbehorende response - verzenden “ja”.

In het TKID-proces wordt geborgd dat een v3-systeem altijd beschikt over benodigde conformances voor de responses, doordat request-response paren zijn opgenomen in eenzelfde systeemrol.

Om een FHIR-interactie te mogen initiëren (initiate=yes) en de bijbehorende response te mogen ontvangen heeft een GBx-applicatie, zoals gezegd, slechts een conformance nodig voor de request-interactie:

  • Initiëren van een request inclusief ontvangen van bijbehorende response - verzenden “ja”.

Om een medische bouwsteen via een $get-aorta-data operation (HL7FHIR) te kunnen opvragen (trigger=yes), heeft een initiërende GBx-applicatie, naast een conformance voor de $get-aorta-data, een conformance nodig voor:

  • de betreffende FHIR-interactie, waarbij verzenden op “ja” OF op “nee” staat en waarbij ontvangen op “nee” staat.

Om een FHIR-interactie te mogen ontvangen (process=yes) en de bijbehorende response te mogen retourneren heeft een GBx-applicatie een conformance nodig voor de request-interactie:

  • Ontvangen van een request inclusief retourneren van bijbehorende response - ontvangen “ja”.

Toelichting additionele conformance toetsen

Het systeem toetst altijd ook of een destination (appID) in staat is om interacties te verwerken ten behoeve van MedMij, danwel ten behoeve van zorgaanbieder-zorgaanbieder uitwisseling. Dit wordt gedaan middels specifieke systeemrollen in het APR:

  • DVZA.BES* voor MedMij uitwisseling.

  • GBZ.BES* voor zorgaanbieder-zorgaanbieder uitwisseling binnen AORTA.

NB. aangezien v3-systemen allemaal verkeer moeten ontvangen van GBZ'en, maar de systeemrol GBZ.BES* nog niet hebben gekoppeld, is het noodzakelijk dat de Adressering Server er vooralsnog vanuit gaat dat, wanneer een v3-interactie zal worden uitgestuurd, het betreffende systeem altijd open staat voor ontvangst van zorgaanbieder-zorgaanbieder verkeer.

Een routing info request heeft betrekking op zorgaanbieder-zorgaanbieder uitwisseling wanneer deze wordt ingestuurd door Autorisatie Server ZA, of door een GBx-applicatie.

Een routing info request heeft betrekking op MedMij uitwisseling wanneer deze wordt ingestuurd door Resource Broker MedMij-in.

Voorkeursregels bepalen route

  1. Indien de client, m.b.v. de Applicatieregister hasConformance , een interactie niet ondersteunt, dan wordt voor deze nooit destinationInfo opgenomen in de getRoutingInfoResponse. De client mag deze interactie immers niet initiëren.

  2. Indien een client RoutingInfo vraagt voor meerdere interacties, die functioneel equivalent zijn aan elkaar, dan wordt hiervan, per destination (appID), voor maximaal één interactie destinationInfo opgenomen in de getRoutingInfoResponse (dataminimalisatie).

  3. Voor een interactie wordt, bij een specifieke destination (appID), slechts destinationInfo opgenomen in de getRoutingInfoResponse wanneer de betreffende GBx-applicatie deze interactie, of een compatible versie ervan, of een transformeerbare versie ervan blijkens het APR ondersteund.

  4. Bij de selectie van de juiste interactie uit een set van interacties die tot eenzelfde groep behoren gelden de volgende eisen:

    1. Niet transformeren heeft de voorkeur boven een nieuwere versie gebruiken.

    2. Exact dezelfde interactie heeft voorkeur boven gebruik van een nieuwere compatible versie.

    3. Nieuwe versie gaat voor een oudere versie. Let op: interacties binnen eenzelfde protocol kunnen functioneel equivalent zijn, maar een totaal ander interactie-id hanteren. In deze situaties kan de nieuwste versie worden bepaald a.d.h.v. een preference attribuut in de AORTA interactietabel.

  5. Client-specifieke filtering en selectie van interacties wordt slechts gedaan wanneer een appID is ontvangen van de client.

Wanneer in één request RoutingInfo wordt gevraagd voor meer dan één destination, dan wordt bovenstaand algoritme uitgevoerd voor iedere gevonden destination (appID), waardoor eenzelfde interactie, door de client, dus mogelijk kan worden geïniteerd bij meerdere applicaties van eenzelfde zorgaanbieder.

Voorbeeld werking routeringsalgoritme

Inhoud van de interactietabel:

interactieId

Preference

Protocol

groupId

create:vitalsign-bloodglucose:1

2

application/fhir

create:LaboratoryTestResult:1

create:vitalsign-bloodglucose:2

1

ZTZM_IN000004NL01

1

application/hl7-v3

search:mp-MedicationAgreement:1

1

application/fhir

search:MediationAgreement:1

QUMA_IN991201NL04

1

application/hl7-v3

search:mp-VariableDosingRegimen:1

1

application/fhir

search:VariableDosingRegimen:1

QUDS_IN000001NL01

1

application/hl7-v3

search:mp612-DispenseToFHIRConversion-AdministrationAgreement:1

3

application/fhir

search:AdministrationAgreement

search:mp-AdministrationAgreement:1

1

application/fhir

search:zib-AdministrationAgreement:2

2

application/fhir

QURX_IN990111NL

2

application/hl7-v3

QUTA_IN991211NL02

1

application/hl7-v3

Interacties delen eenzelfde groupId wanneer ze functioneel equivalent zijn. Verschillende interacties zijn technisch, per definitie, niet gelijk aan elkaar.

Functioneel equivalente interacties kunnen al dan niet transformeerbaar zijn naar elkaar. Ondersteunde transformaties worden vastgelegd in de Transformatie Server metadata.

Inhoud van de Transformatie Server metadata:

Transformatie Algoritme ID

Input

Output

Type

Protocol

Interactie-ID

Type

Protocol

Interactie-ID

1.1

request

application/fhir+xml, application/fhir+json

create:vitalsign-bloodglucose:1

request

application/hl7-v3+xml

ZTZM_IN000004NL01

1.2

request

application/fhir+xml, application/fhir+json

create:vitalsign-bloodglucose:2

request

application/fhir+xml, application/fhir+json

create:vitalsign-bloodglucose:1

2.1

request

application/fhir+xml, application/fhir+json

search:mp-MedicationAgreement:1

request

application/hl7-v3+xml

QUMA_IN991201NL04

2.2

response

application/hl7-v3+xml

QUMA_IN991203NL04

response

application/fhir+xml, application/fhir+json

search:mp-MedicationAgreement:1

3.3

request

application/fhir+xml, application/fhir+json

search:mp-AdministrationAgreement:1

request

application/hl7-v3+xml

QUTA_IN991211NL02

3.4

response

application/hl7-v3+xml

QUTA_IN991213NL02

response

application/fhir+xml, application/fhir+json

search:mp-AdministrationAgreement:1

3.5

request

application/hl7-v3+xml

QUTA_IN991211NL02

request

application/fhir+xml, application/fhir+json

search:mp-AdministrationAgreement:1

3.6

response

application/fhir+xml, application/fhir+json

search:mp-AdministrationAgreement:1

response

application/hl7-v3+xml

QUTA_IN991213NL02

request (oorspronkelijk request)

application/hl7-v3+xml

QUTA_IN991211NL02

3.7

request

application/fhir+xml, application/fhir+json

search:mp-AdministrationAgreement:1

request

application/hl7-v3+xml

QURX_IN990111NL

3.8

response

application/hl7-v3+xml

QURX_IN990113NL

response

application/fhir+xml, application/fhir+json

search:mp-AdministrationAgreement:1

Betreffende interactie, zoals benoemd in de input, kan, na de genoemde transformatie, worden geïnitieerd bij een server die de interactie, zoals benoemd in de output, ondersteund.

Inhoud van het APR:

Applicatie

Conformances (send + receive)

1

create:vitalsign-bloodglucose:1

2

create:vitalsign-bloodglucose:2

3

ZTZM_IN000004NL01

4

search:mp-MedicationAgreement:1

search:mp-VariableDosingRegimen:1

5

QUMA_IN991201NL04

QUMA_IN991203NL04

6

QUDS_IN000001NL01

QUDS_IN000003NL01

7

search:mp-AdministrationAgreement:1

search:zib-AdministrationAgreement:2

8

QURX_IN990111NL

QUTA_IN991211NL02

9

search:zib-AdministrationAgreement:2

QUTA_IN991211NL02

Inhoud van getRoutingInfoRequest en getRoutingInfoResponse:

getRoutingInfoRequest 

getRoutingInfoResponse

Client

Destination

Interactions

Destination

Interaction

Transformation

1

2, 3

create:vitalsign-bloodglucose:1

3

create:vitalsign-bloodglucose:1

1.1

2

1, 3

create:vitalsign-bloodglucose:2

1

create:vitalsign-bloodglucose:2

1.2

3

1, 2

ZTZM_IN000004NL01

-

-

-

4

5, 6

search:mp-MedicationAgreement:1

search:mp-VariableDosingRegimen:1

5

search:mp-MedicationAgreement:1

2.1

Onbekend

2, 3

create:vitalsign-bloodglucose:1

create:vitalsign-bloodglucose:2

2

create:vitalsign-bloodglucose:2

-

3

create:vitalsign-bloodglucose:1

1.1

7

8

search:zib-AdministrationAgreement:2

-

-

-

7

8

search:mp-AdministrationAgreement:1

8

search:mp-AdministrationAgreement:1

3.3

7

9

search:mp-AdministrationAgreement:1

search:zib-AdministrationAgreement:2

9

search:zib-AdministrationAgreement:2

-

Ophalen interactie info

Primaire actor

Resource Client (GBx-applicatie)

Systeem

Adressering Server

Secundaire actor

Transformatie Server

Code

AOF.UC.ADS.200.v1

Realiseert Feature

getInteractionInfo

Pre-condities

Het systeem is slechts benaderbaar voor

  • GBx-applicaties die zijn aangesloten op het AORTA netwerk, OF

  • componenten van VZVZ die zijn aangesloten via een intern netwerk of op het AORTA netwerk

Het systeem beschikt over een voldoende actueel AORTA Stelseltoken die het via de AORTA Stelsel Metadata Interface heeft verkregen.

Het systeem beschikt over up-to-date gegevens betreffende de ondersteunde interacties en compatible interacties.

Het systeem beschikt over up-to-date gegevens betreffende de ondersteunde transformaties (transformatie server metadata), die het heeft verkregen via Feature getTransformatieMetadata. De base-URL van de Transformatie Server is verkregen uit het AORTA Stelseltoken.

Triggers

  • De primaire actor stuurt een interaction info request in

Main flow

AOF.UCe.VAL.100.v1 - Toetsing type content

Uitkomst

Stap

Omschrijving

i

Het systeem ontvangt een verzoek en start de verwerking.

Het systeem toetst of het gevraagde type content (Accept header) en het gehanteerde type content (Content-Type header) worden ondersteund.

NB. wanneer het verzoek wordt ontvangen van een component van VZVZ, dan hoeft geen toets op type content te worden uitgevoerd.

Gevraagd type content niet ondersteund

statuscode 406 Not Acceptable

  • Deze situatie kan slechts optreden wanneer requests worden ontvangen via HTTP(S)

Gehanteerd type content niet ondersteund

statuscode 415 Unsupported Media Type

  • Deze situatie kan slechts optreden wanneer requests worden ontvangen via HTTP(S)

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

Stap

Omschrijving

Uitkomst

1

Het systeem toetst of het verzoek voldoet aan de interface specificatie.

Ongeldig verzoek

statuscode 400 Bad Request

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

2

Het systeem stelt vast voor welke ontvangen interactie-id('s) interactie info wordt gevraagd. Zie de Toelichting bepalen ontvangen interactie-id(s)

Interactie-id kan niet worden bepaald (komt niet voor in de AORTA interactietabel en/of is onjuist)

statuscode 400 Bad Request

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

3

Het systeem bepaald m.b.v. de transformatie server metadata de interactie-ids waarnaar de gevraagde interactie getransformeerd kan worden.

4

<exit>

Het systeem retourneert een response naar de primaire actor.

Verwerking succesvol

statuscode 200 OK

Post-condities

Het systeem heeft het verzoek op de juiste wijze verwerkt en heeft een daarbij passende response geretourneerd.

Het systeem heeft van het ontvangen request, de volgende attributen gelogd:

  • datum en tijd van ontvangst

  • request-id

  • initial-request-id

  • sender-id

    • role-id wanneer de sender van het request een VZVZ component is, en de aanroep niet via TLS geschiedt

    • common name wanneer de aanroep via TLS geschiedt

==

Het systeem heeft voor ieder uitgaand request, dat bij het doorlopen van de use case werd verzonden, de volgende attributen gelogd:

  • datum en tijd van verzending

  • request-id

  • initial-request-id

  • receiver-id

    • role-id wanneer de receiver van het request een VZVZ component is, en de aanroep niet via HTTP geschiedt

    • FQDN wanneer de aanroep via HTTP geschiedt

Het systeem heeft van de geretourneerde response, de volgende attributen gelogd:

  • datum en tijd van response

  • request-id van het bijbehorende request

  • initial-request-id van het bijbehorende request

  • receiver-id

    • role-id wanneer de receiver van de response een VZVZ component is, en de aanroep niet via TLS geschiedt

    • common name wanneer de aanroep via TLS geschiedt

  • HTTP statuscode en eventueel geretourneerde foutinformatie

==

Het systeem heeft voor iedere response, die bij het doorlopen van de use case werd ontvangen, de volgende attributen gelogd:

  • datum en tijd van response

  • request-id van het bijbehorende request

  • initial-request-id van het bijbehorende request

  • sender-id

    • role-id wanneer de sender van de response een VZVZ component is, en de aanroep niet via TLS geschiedt

    • common name wanneer de aanroep via TLS geschiedt

  • HTTP statuscode en eventueel geretourneerde foutinformatie

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.