Ga naar hoofdinhoud

Visualisaties t.b.v. voorbeelden

Om in de voorbeelden duidelijk te maken wat daar precies gebeurt en in welke volgorde, zijn visualisaties behulpzaam. Die voorbeelden laten zien hoe registers werken in de praktijk: welke commando's binnenkomen, welke gevolgen worden vastgelegd, welke notificaties worden verstuurd en welke snapshots in de projectie ontstaan. De volgorde en het verloop over tijd spelen daarin een centrale rol.

De TijdlijnViewer maakt zichtbaar wat er is gebeurd over het verloop van de tijd: notificaties, commando's, gevolgen en snapshots verschijnen als gebeurtenissen op een chronologische tijdlijn. Welke onderdelen zichtbaar zijn, hangt af van welke gegevens worden meegegeven aan het component — alle elementen zijn optioneel.

De ProjectieViewer bouwt voort op de TijdlijnViewer en legt de nadruk op projecties. Het component ondersteunt het bekijken van verschillende projecties en visualiseert ze in een bitemporeel diagram, zodat duidelijk wordt hoe de toestand van gegevens zich over twee tijdsdimensies heeft ontwikkeld.

De TijdlijnViewer

De TijdlijnViewer toont de verwerkte gebeurtenissen in een register als een chronologische tijdlijn. De tijdlijn loopt van boven naar beneden: het vroegste tijdstip staat bovenaan, het nieuwste onderaan.

Elke gebeurtenis heeft een eigen kleur:

  • Paars — notificaties: signalen die vanuit buiten de bounded context worden ontvangen of vanuit de bounded context naar buiten worden verstuurd
  • Blauw — commando's: de instructies die zijn binnengekomen en verwerkt
  • Oranje — gevolgen: de vastgelegde effecten van die verwerking
  • Groen — snapshots: de resulterende toestanden in de projectie

Klik op een item in de tijdlijn om de details ervan te bekijken. De details verschijnen in de tijdlijn.

vroegste
AppartementsrechtOntstaan
Notificatietijdstip21 juli 2026 om 12:48:33
RegistreerNieuwWozObject
Commandotijdstip21 juli 2026 om 12:48:39
WozObjectGeregistreerd#deb70..
Gevolgtijdstip21 juli 2026 om 12:48:39
WozObjectTypeProjectie#1
Geldig vanaf21 juli 2026 om 12:48:33Gevolg21 juli 2026 om 12:48:39Projectie21 juli 2026 om 12:48:40
MijnWozObjectQuery3Response#2
Geldig vanaf21 juli 2026 om 12:48:33Gevolg21 juli 2026 om 12:48:39Projectie21 juli 2026 om 12:48:40
BelangenBijWozObjectProjectie#3
Geldig vanaf21 juli 2026 om 12:48:33Gevolg21 juli 2026 om 12:48:39Projectie21 juli 2026 om 12:48:40
Metadata
Afgespeelde gevolgdeb70d59-68a4-426a-89cf-69dd6acdbd03
Gevolg typeWozObjectGeregistreerd
Replayed nav correctiefalse
Is correctiefalse
Belangen
Partijtijdstip21 juli 2026 om 12:48:33
Woz objectnummer1000000001
Eigenaren
– Jan Janssen
– Janneke Janssen
Woz objecttijdstippen
Tijdstip ontstaan21 juli 2026 om 12:48:33
nieuwste

De ProjectieViewer

De ProjectieViewer combineert de TijdlijnViewer met een aanvullend onderdeel: een bitemporeel diagram. Dit diagram maakt zichtbaar hoe de staat van een collectie gegevens zich over twee tijdsdimensies heeft ontwikkeld.

Drie tijdsdimensies

Elke snapshot in de projectie heeft drie tijdsdimensies. Zie ook Tijdstippen en geldigheid voor de conceptuele achtergrond.

  • het geldigheidstijdstip: vanaf wanneer de snapshot geldig is in het domein. Als er ook een eindetijdstip bekend is, vormen ze samen een geldigheidstijdvak. Dit tijdstip is afkomstig uit het commando en wordt meegedragen in het gevolg.
  • het gevolgtijdstip: wanneer het gevolg is vastgelegd in het register (de Axon event store). Dit is het tijdstip uit de gevolgenboekhouding.
  • het projectietijdstip: wanneer de projectierij is weggeschreven naar de database. Dit tijdstip wordt bepaald bij het produceren van de projectie. Het is alleen zichtbaar in de projectie, niet in het gevolg zelf.

Het bitemporeel diagram

Onder de tijdlijn staat in de ProjectieViewer een bitemporeel diagram. Dit diagram toont de snapshots als rechthoeken in een tweedimensionaal vlak:

  • De horizontale as geeft het geldigheidstijdstip (en geldigheidstijdvak) van de snapshot weer.
  • De verticale as geeft het gevolgtijdstip of het projectietijdstip weer — te wisselen via de links aan de linkerkant van het diagram.

De geselecteerde snapshot is groen gemarkeerd; overige snapshots zijn grijs. Door op een vlak te klikken selecteer je het betreffende snapshot.

Meerdere projecties

Wanneer de meegegeven snapshots afkomstig zijn van meer dan één projectietype, toont de ProjectieViewer automatisch een knoppenbalk onder de tijdlijn. De balk heeft het label Projectie: en bevat voor elke projectie een knop met de naam van die projectie. De actieve projectie is blauw gemarkeerd; de overige zijn omlijnd.

Door op een knop te klikken wissel je naar die projectie. De tijdlijn filtert dan op de snapshots van de geselecteerde projectie, en het bitemporeel diagram toont de tijdlijnen die daarbij horen.

De projectiedetails

Naast het diagram staat het projectiedetailpaneel. Dit toont de projectierij die hoort bij de geselecteerde snapshot: het geldigheidstijdstip, het gevolgtijdstip en de inhoud van de rij, zoals objectnummer, type, kadastraal object en belanghebbenden.

Voorbeeld

Onderstaand voorbeeld toont een collectie gegevens rondom een WOZ-object. Klik op een snapshot in de tijdlijn of het diagram om de bijbehorende projectierij te bekijken.

vroegste
WozObjectGeregistreerd#deb70..
Gevolgtijdstip21 juli 2026 om 12:48:39
MijnWozObjectQuery3Response#2
Geldig vanaf21 juli 2026 om 12:48:33Gevolg21 juli 2026 om 12:48:39Projectie21 juli 2026 om 12:48:40
nieuwste
MijnWozObjectQuery3Response#2
Metadata
Afgespeelde gevolgdeb70d59-68a4-426a-89cf-69dd6acdbd03
Gevolg typeWozObjectGeregistreerd
Replayed nav correctiefalse
Is correctiefalse
Woz object
Gebruikers
Woz object typeAPPARTEMENT
Nog te beoordelenfalse
Woz objectnummer1000000001
Gerelateerde gebouwen
Gerelateerde kadastrale objectenGDA01-A-1234
Eigenaren
– Jan Janssen
– Janneke Janssen
Woz objecttijdstippen
Tijdstip ontstaan21 juli 2026 om 12:48:33
Projectie:
#2 | Jan Janssen,Janneke JanssenGevolgtijdstipofProjectietijdstipTijdstip geldigheid

Technische architectuur

De viewer-componenten zijn technische componenten van deze documentatie en bouwen op elkaar voort. Het onderstaande diagram toont welk component afhankelijk is van welk ander component.

VoorbeeldScenario is een zelfstandige wrapper zonder afhankelijkheden van andere viewer-componenten. Deze geeft informatie over het gebruikte scenario en locatie van de data die gebruikt wordt. Deze staat gebruikelijk in elk voorbeeld bovenaan en geeft een korte info over het scenario en een metadata over de gebruikte data, wat een referentie is naar de .json die gebruikt is.

Scenario

Naar aanleiding van een appartementsrechtsplitsing ontstaat een nieuw appartement in de BRK.

Brondata
BestandBrkBridgeAppartementOntstaanVoorbeeldTest-er-ontstaat-een-nieuw-appartement.jsonCommite91fd39Opgehaald22 juli 2026