VNG-Realisatie / gemma-zaken

Samen ontwikkelen van API's voor Zaakgericht werken
https://vng-realisatie.github.io/gemma-zaken/
Other
41 stars 26 forks source link

Moet het wijzigen van de zaak of het resultaattype bij PUT en PATCH van resultaat mogelijk zijn? #2422

Open basretera opened 4 months ago

basretera commented 4 months ago

In de Zaken API specificatie staat beschreven bij de PUT en PATCH van een resultaat dat het resultaattype niet gewijzigd mag worden. Waarom kun je dan wel een resultaattype in de request body meegeven? Vooral bij de PATCH lijkt me dat onzinnig.

Daarnaast is het zo dat je bij een resultaat ook de zaak URL-referentie mag wijzigen. Deze wijziging vind ik functioneel ook onlogisch. Een resultaat hoort bij een zaak. Je gaat een resultaat als het ware niet verplaatsen naar een andere zaak. Het resultaat bij zaak A wordt niet ineens het resultaat van zaak B. Net als een resultaattype onderdeel is van een zaaktype, is een resultaat onderdeel van een zaak. Het resultaat 'verhuis' je niet ineens naar een andere zaak toe.

HenriKorver commented 3 months ago

Waarom kun je dan wel een resultaattype in de request body meegeven? Vooral bij de PATCH lijkt me dat onzinnig.

Waarschijnlijk is dit gedaan om het OAS-schema beheersbaar te houden. Nu wordt in het OAS-schema voor elke operatie (GET, PUT, PATCH, etc) hetzelfde object Resultaat gebruikt. Als je voor elke operatie bepaalde gedragsregels wilt afdwingen in het request-bericht zul je per operatie een nieuw Resultaat-object in het OAS-schema moeten definiëren. Misschien was dat in dit geval beter geweest, maar het is blijkbaar niet gebeurd.

HenriKorver commented 3 months ago

Daarnaast is het zo dat je bij een resultaat ook de zaak URL-referentie mag wijzigen. Deze wijziging vind ik functioneel ook onlogisch.

Ik begrijp je punt, maar het doet volgens mij ook geen kwaad om dit soort wijzigingen toe te laten. Bijv. als je per ongeluk een resultaat aan de verkeerde zaak gekoppeld hebt dan kun je het nu heel makkelijk corrigeren.

HenriKorver commented 3 months ago

@basretera Kan ik dit issue sluiten?

basretera commented 3 months ago

Het doet allemaal geen kwaad. Er hoort dan in ieder geval goed beschreven run-time gedrag bij.

Daarnaast ben ik van mening dat dingen die onlogisch zijn we niet in een standaard moeten behouden, omdat het ook géén kwaad kan. Maakt de standaard er niet beter/duidelijker op en tot slot moet het ook nog eens door iedereen ontwikkeld en ondersteund worden. Dat kost geld en tijd en dat besteden we dan met elkaar aan iets dat eigenlijk geen nut heeft.