Klantinteracties

B1767 - We gebruiken de ID als identificatie voor het opvragen (raadplegen) van resources

Zolang we de HTTP-operaties gebruiken zijn we ook aan de conventies daaromtrent gebonden. Één van die conventies is dat het opvragen van een specifieke resource (zoals partij) op basis van de unieke identificatie gaat. Binnen de API is er één property die als unieke identificatie wordt gebruikt. Die identificatie wordt ook gebruik om relaties tussen resources onderling te leggen. Er is binnen klantinteracties gekozen om dat op basis van de ID te doen.

Dat betekent dat het selecteren van een resource op basis van alle andere properties leidt tot een zoek-actie m.b.v. query-parameters. Dat geldt in ieder geval voor hert nummer van de partij.

Ik snap vanuit gebruikers-perspectief dat een partij op bais van het nummer geraadpleegd wordt, maar vantui API-pserpectief is dat een zoek-functie.

Voor zoeken op basis van de partij-identificator geldt iets vergelijkbaars. De gebruiker denkt dat hij een partij op basis van het burgerservicenummer direct opvraagt. Achter de schermen vult de consumerapplicatie naast het Burgerservicenummer (ObjectID) echter het ook de relevante soortObject, soortObjectId en externRegister in als query-parameters voor een zoek-actie op de resource partij-identifcator. Vanuit de gevonden partij-identificator wordt met de property identificeerdePartij de juiste partij geraadpleegd (op basis van het ID dus).

Vraagstuk: Welke identificatie gebruiken we voor het opvragen (raadplegen?) van een partij.

In de beschrijving van F0138 - Vraag partij op wordt beschreven dat een partij wordt opgevraagd op basis van het nummer of de externe id.

Deze identificerende properties zijn geen van beide gegarandeerd uniek. Er is wel een uniek identificerende property gedefinieerd met het ID.

Het beschrijven van deze functionele wens, maar in hoeverre is bij de beschrijving van deze functies rekening gehouden met met technische implementeerbaarheid ?

Voorbeeld: De relatie tussen een klantcontact en een partij wordt (via de klantcontactBetrokkene) gelegd op basis van de ID. Stel dat ik het klantcontact en de gerelateerde klantcontactBetrokkene heb opgevraagd, dan heb ik de ID van de gerelateerde partij tot mijn beschikking. Ik kan echter volgens beschrijving F0138 - Vraag partij op niet de ID gebruiken om de betreffende partij op te halen.

Ik snap dat er vanuit de gebruiker behoefte is om op basis van het nummer of de externe identificatie een partij te kunnen vinden, maar dat is technisch gezien in mijn beleving een zoek-functie en geen opvraag functie.

Uiteraard geldt dit vraagstuk niet alleen voor de partij, maar voor de architectuur van de hele API.