Correctie vanaf ontstaan WOZ object
WOZ objecttype is fout geregistreerd wordt gecorrigeerd.Brondata
CorrectieVanafOntstaanVoorbeeldTest-als-een-woz-object-gecorrigeerd-wordt-vanaf-ontstaan-dan-worden-er-twee-nieuwe-snapshots-geproduceerd.jsonCommit9fbbe67Opgehaald18 september 2026
In het eerste voorbeeld van correctie hebben we de laatste van twee gevolgen gecorrigeerd. Nu kan het natuurlijk ook zo zijn dat er eerder in de tijdlijn een fout gemaakt is. In dit voorbeeld corrigeren we het gevolg waarin het WOZ object ontstaan is. Achteraf is gebleken dat het WOZ objecttype verkeerd vastgelegd is.
In onze uitgangspositie hebben we, net als eerder, een registratie van een WOZ object en overdracht.
We willen het woz objecttype corrigeren, dat beschreven is in WozObjectGeregistreerd. Dit gevolg gaan we dus corrigeren met het volgende commando:
Verwerking: commando → gevolg
Dit commando leidt tot een correctiegevolg waarin we het WOZ objecttype corrigeren. In dit gevolg wordt aangegeven welk gevolg gecorrigeerd moet worden en hoe het ontstaansgevolg had moeten zijn:
Belangrijk hier om op te merken is het 'had-moeten-gebeuren-op-tijdstip' in het gecorrigeerde gevolg. Elk gevolg heeft een 'gebeurd-op-tijdstip': het moment in de tijd waarop het gevolg vastgelegd is. Dit is een door het systeem vastgelegd tijdstip dat voor de business relevant is, omdat het de vastlegging van de oorspronkelijke mutatie betreft (downstream verandert de system time). Dit tijdstip is bijzonder relevant bij correctie, omdat we bij het construeren van de 'gevolgen zoals ze hadden moeten zijn' moeten weten in welke volgorde deze gevolgen moeten staan. Dit lijkt in dit, relatief simpele voorbeeld wellicht niet heel belangrijk. Er zijn echter in de praktijk vaak veel complexere correctiescenario's aan de orde, waarbij de tijdlijn niet makkelijk te deduceren is.
Daarom dat we bij elk toegevoegde gevolg een 'had-moeten-gebeuren-op-tijdstip' meegeven. De correctant moet aangeven waar in het gevolgenjournaal de toevoeging had moeten zitten. dit tijdstip wordt vertaald naar het 'gebeurd op' tijdstip in de 'gevolgen zoals ze hadden moeten zijn'. Voor meer achtergrond over tijdstippen, zie hier.
In de tijdlijnen van de entiteit is te zien dat het begingevolg wordt 'vervangen' door een gecorrigeerd gevolg. Het al bestaande gevolg na het 'foute' begingevolg, kan gewoon gelijk blijven. In de validaties is gecontroleerd dat dit is toegestaan.
Ondanks het feit dat we maar één gevolg corrigeren, bevat onze projectie twee nieuwe toestanden. Dit komt omdat de projectie het WOZ objecttype op twee plaatsen vastlegt: in de toestand die hoort bij het ontstaan van het WOZ object, en in de toestand die is ontstaan naar aanleiding van de overdracht. We moeten de correctie dus doorwerken.
Doorwerken is een belangrijke reden om te werken met gevolgen die je na correctie kan vertalen naar een lijst gevolgen hoe ze hadden moeten zijn. Door het gevolgenjournaal, de gebeurtenistijdlijn, te corrigeren, is het mogelijk om alle doorwerkingen van correcties met terugwerkende kracht te herstellen.