Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Als ZTC-beheerder wil ik zaakobjecttypen kunnen inrichten #1846

Closed
MarcoKlerks opened this issue Jun 11, 2021 · 11 comments
Closed

Als ZTC-beheerder wil ik zaakobjecttypen kunnen inrichten #1846

MarcoKlerks opened this issue Jun 11, 2021 · 11 comments
Assignees

Comments

@MarcoKlerks
Copy link

…. zodat bij het aanmaken of wijzigen van een zaak helder is van welke objecttypen objecten aan de zaak gekoppeld kunnen of zelfs moeten worden.

Het “zaakobjecttype” staat wel in het ImZTC, maar wordt nog niet gefaciliteerd in de Catalogi API.

Door het “zaakobjecttype” wel te gaan faciliteren kan beter geborgd worden dat aan een zaak alleen relevante objecten worden gekoppeld én dat verplichte objecten ook daadwerkelijk gekoppeld worden. Met name het borgen van verplichtingen draagt bij aan de volledigheid van de zaakregistraties.

Ook wil ik later nog een user story toevoegen om te borgen dat bij resultaattypen bij de 'brondatumArchiefprocedure’ alleen verwezen kan worden naar objecttypen die ook als zaakobjecttypen aan het zaaktype zijn gekoppeld. Die user story moet ik echter nog even goed uitdenken ;-).

Ieder ‘zaakobjecttype’ zal uiteraard aan een ‘zaaktype’ gekoppeld moeten worden. Ook moet ieder ‘zaakobjecttype’ aan een ‘objecttype’ gekoppeld moeten worden. Welke objecttypen er zijn staat momenteel deels in de Objecttypen API en deels in de Stelselcatalogus. Het is nog niet uit te sluiten of er in de toekomst nog andere bronnen bij komen. Overigens worden objecttypen in de Stelselcatalogus "begrippen" genoemd.

Ik zal een aparte user story aanmaken voor het koppelen van een zaakobject aan een zaak conform de inrichting van zaakobjecttypen en zaaktypen.

Zaakobjecttypen-schets

@michielverhoef
Copy link
Collaborator

Hallo Marco,

Ik zal een aparte user story aanmaken voor het koppelen van een zaakobject aan een zaak conform de inrichting van zaakobjecttypen en zaaktypen.

Dat mag maar wat mij betreft mag dit ook vallen onder #1847

@MarcoKlerks
Copy link
Author

Dat mag maar wat mij betreft mag dit ook vallen onder #1847

Ik zie je reactie nu pas. Ik heb de user story al aangemaakt (#1848).

@michielverhoef
Copy link
Collaborator

Sorry, ik had #1847 al veel eerder aan moeten maken. Iets te ijverig aan de slag gegaan

@michielverhoef
Copy link
Collaborator

Hallo Marco,

Kun jij een aantal casussen aanleveren zodat we kunnen beoordelen of de huidige structuur van een ZAAKOBJECTTYPE voldoet?
Het gaat dan om https://www.gemmaonline.nl/index.php/Imztc_2.2/doc/objecttype/zaakobjecttype

Ik verwacht eigenlijk dat dit wel zal kloppen maar aangezien we het nu nieuw toevoegen kunnen we het maar beter gelijk goed doen.

@hdksi
Copy link
Collaborator

hdksi commented Jun 15, 2021

Voorwaarde lijkt me dat eenmaal gepubliceerde Objecttypes niet verwijderd worden. Issue aangemaakt bij de Objecten API om te vragen in welke mate de persistentie van Objecttypen gegarandeerd is: maykinmedia/objects-api#206.

@MarcoKlerks
Copy link
Author

Kun jij een aantal casussen aanleveren zodat we kunnen beoordelen of de huidige structuur van een ZAAKOBJECTTYPE voldoet?
Het gaat dan om https://www.gemmaonline.nl/index.php/Imztc_2.2/doc/objecttype/zaakobjecttype

Casussen:

  1. Reparatie of onderhoud aan objecten in de fysieke ruimte dienen 5 jaar bewaard te worden na sloop van het object. Neem bijvoorbeeld een zaaktype als "Het onderhouden van bruggen". Je wilt daar een "overbruggingsdeel" uit de BGT aan kunnen koppelen. De eigenschap "objectEinddatum" geldt als de brondatum voor het berekenen van de de archiefactiedatum.
  2. Een sollicitatie die geleid heeft tot een aanstelling moet bewaard worden tot 10 jaar na einde dienstverband. Hiervoor zal vanuit obecten-API een "medewerker""-object of een "dienstverband"-object aan de zaak gekoppeld moeten kunnen worden. Op de registratie zal een datumveld met nog onbekende naam (afhankelijk van de inrichting van het objecttype) staan dat de brondatum is voor het berekenen van de archiefactiedatum.

Kunnen jullie daarmee uit de voeten?

@michielverhoef michielverhoef added this to the Catalogi API 1.2.0 milestone Aug 25, 2021
@ArjanKloosterboer
Copy link
Contributor

In de issuebeschrijving is een gegevensmodel gevisualiseerd. Strikt genomen is de daarin opgenomen relatie 'Zaakobject - Zaakobjecttype' m.i. niet nodig. Elke relatie 'Zaak - Object' (via Zaakobject) is uniek oftewel komt slechts één keer voor (d.w.z. eenzelfde object kan niet twee keer gerelateerd zijn aan één zaak). Dan kan uit de andere relaties afgeleid worden om welk zaakobjecttype het gaat.
Verder, in ImZTC en RGBZ is nog sprake van 'Ander zaakobject(type)'. M.i. is dit in de CG-wereld niet meer nodig. Van elk te koppelen objecttype is daarin een registratie aanwezig. Het maakt dan niet meer uit of het een basisregistratieobject of een ander soort object is.

@MarcoKlerks
Copy link
Author

In de issuebeschrijving is een gegevensmodel gevisualiseerd. Strikt genomen is de daarin opgenomen relatie 'Zaakobject - Zaakobjecttype' m.i. niet nodig. Elke relatie 'Zaak - Object' (via Zaakobject) is uniek oftewel komt slechts één keer voor (d.w.z. eenzelfde object kan niet twee keer gerelateerd zijn aan één zaak). Dan kan uit de andere relaties afgeleid worden om welk zaakobjecttype het gaat.

Strikt genomen heb je gelijk. Echter wordt deze relatie ook gelegd bij:

  • statussen en statustypen,
  • resultaten en resultaattypen,
  • rollen en roltypen,
  • besluiten en besluittypen,
  • informatieobjecten en informatieobjecttypen.

Al deze relaties zijn net zo uniek. Ik zou, om consistent te blijven, daarom ook het zaakobject aan het zaakobjecttype willen linken.

Overigens staat in het ImZTC het ZAAKOBJECTTYPE als een 'objecttype' gedefinieerd. Dit in tegenstelling tot bijvoorbeeld het ZAAK-INFORMATIEOBJECT-TYPE dat als een 'relatieklasse' staat gedefinieerd. Ook ROLTYPE en STATUSTYPE zijn bijvoorbeeld als 'objecttype' gedefinieerd. Dat is dus een argument voor de hierboven gestelde vergelijking.

Nu zou je overigens met een aanpassing van het ImZTC van het ZAAKOBJECTTYPE ook een 'relatieklasse' kunnen maken, maar dan... een relatie waarmee? In het ImZTC komt het 'objecttype' OBJECTTYPE namelijk niet voor! Zou je dat 'objecttype' wel in het ImZTC opnemen, dan moet m.i. de Catalogi API ook OBJECTTYPEn gaan ondersteunen. Maar het idee is juist om dat met de Objecten API te gaan doen. Lastig, lastig..... ;-)

Verder, in ImZTC en RGBZ is nog sprake van 'Ander zaakobject(type)'. M.i. is dit in de CG-wereld niet meer nodig. Van elk te koppelen objecttype is daarin een registratie aanwezig. Het maakt dan niet meer uit of het een basisregistratieobject of een ander soort object is.

Zie ook #1871 .

@michielverhoef
Copy link
Collaborator

Zaakobjecttypen is opgenomen in de nieuwe versie van de Catalogi API: https://catalogi-api.test.vng.cloud/api/v1/schema/#tag/zaakobjecttypen

@ArjanKloosterboer
Copy link
Contributor

Hoe is dit geïmplementeerd, gezien bovenstaande discussie? Met Zaakobjecttype is de relatie naar relevante objecttypen anders gemodelleerd in het CimZTC dan bijvoorbeeld die naar Resultaattypen en Statustypen. Feitelijk is de relatie naar objecttypen niet genormaliseerd oftewel een zaakobjecttype is specifiek voor een zaaktype. Een ander zaaktype waarvoor hetzelfde objecttype relevant is, heeft een eigen gerelateerd zaakobjecttype. M.i. is dit achterhaald en zouden objecttypen dmv een n:m-relatie aan zaaktypen gerelateerd moeten worden ipv zaakobjecttypen (dmv een n:1-relatie). Dus geen resource Zaakobjecttype in de API maar een resource Objecttype.
En m.i. is het in een Common Ground-gegevenslandschap niet meer relevant of dat objecttype een RSGB-object is of niet. Dat was destijds (10 jaar geleden?) gedaan omdat RSGB-objecttypen wel gemodelleerd waren, andere objecttypen niet. In een CG-gegevenslandschap is elk daarin beschikbaar objecttype ex- of impliciet gemodelleerd. Het is nu de kans om deze ontwikkelingen hedendaags in de API te implementeren.

@michielverhoef
Copy link
Collaborator

@ArjanKloosterboer kunnen we hier nog even contact over hebben? Ik ben het met je eens dat we dit gelijk goed moeten doen maar zie ook nog wel kanttekeningen bij Objecttype.
@hdksi kun jij hier ook bij aansluiten?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants