Bounded contexten in het BRP-domein
De BRP is geen monolithisch systeem. Achter het begrip "de gemeente registreert een persoon" gaan twee wezenlijk verschillende taken schuil, met elk hun eigen verantwoordelijkheid, hun eigen taal en hun eigen regels. In Uit betrouwbare bron modelleren we die als twee afzonderlijke bounded contexten: de Burgerlijke Stand en de Bevolkingsregistratie.
Burgerlijke Stand
De Burgerlijke Stand is verantwoordelijk voor het opmaken van officiële akten bij civiele levensgebeurtenissen: geboorte, huwelijk, geregistreerd partnerschap, echtscheiding en overlijden. Deze bounded context werkt strikt formeel: elke handeling resulteert in een juridisch document — de akte — dat rechtsgevolgen heeft en door de wet is voorgeschreven.
De ambtenaar die dit doet heet de Ambtenaar Burgerlijke Stand (ABS). Diens bevoegdheid is wettelijk begrensd: alleen een ABS mag een geboorteakte opmaken. Die akte is het brondocument.
Kenmerkende gevolgen:
GeboorteAkteOpgemaaktHuwelijksAkteOpgemaaktOverlijdensAkteOpgemaaktCorrectieAkteOpgemaaktAdoptieAkteOpgemaakt
Bevolkingsregistratie
De Bevolkingsregistratie beheert het bevolkingsregister: de actuele en historische snapshot van alle ingeschreven personen. Deze bounded context is de afnemer van de Burgerlijke Stand: wanneer een geboorteakte is opgemaakt, verwerkt de Bevolkingsregistratie die akte als aanleiding om een persoon in te schrijven.
Maar de Bevolkingsregistratie heeft ook eigen bevoegdheden. Adreswijzigingen, verhuizingen en immigraties gaan buiten de Burgerlijke Stand om — die levensgebeurtenissen produceren geen akte, maar worden direct verwerkt door de Bevolkingsregistratie.
Kenmerkende gevolgen:
PersoonIngeschrevenInBRPBsnToegewezenVerhuizingPersoonsgegevenGecorrigeerdPersoonGeadopteerd
De relatie: upstream en downstream
De Burgerlijke Stand is upstream van de Bevolkingsregistratie voor civiele gebeurtenissen. Een geboorte leidt eerst tot een akte (Burgerlijke Stand), en daarna tot een inschrijving in het register (Bevolkingsregistratie). De Bevolkingsregistratie abonneert zich op de gevolgen van de Burgerlijke Stand en verwerkt die in het eigen model.
flowchart TD
LG([Levensgebeurtenis])
subgraph BS ["Burgerlijke Stand"]
BS_CMD[Command: MaakAkteOp]
BS_E[Gevolg: AkteOpgemaakt]
BS_CMD --> BS_E
end
subgraph BR ["Bevolkingsregistratie"]
BR_CMD[Command: verwerk akte]
BR_E["Gevolg: PersoonIngeschreven / BsnToegewezen / ..."]
BR_CMD --> BR_E
end
PROJ[(BRP-projectie<br/>momenten)]
LG --> BS_CMD
BS_E -->|trigger| BR_CMD
BR_E --> PROJ
Twee tijdlijnen in de voorbeelden
De scheiding tussen de twee bounded contexten is zichtbaar in elke voorbeeldpagina. Elk scenario toont twee afzonderlijke tijdlijnen:
Burgerlijke Stand — aktes
De BS produceert aktes: juridische documenten die een levensgebeurtenis vastleggen. Een akte heeft geen geldigheidstijdstip in bitemporale zin — de akte is het brondocument. De BS-tijdlijn toont daarom alleen een eventenlog, zonder bitemporaal diagram.
Bevolkingsregistratie — snapshots
De BR verwerkt aktes en andere aanleidingen tot snapshots in het bevolkingsregister. Elke snapshot heeft een geldigheidstijdstip (wanneer de situatie van kracht was) en een gevolgtijdstip (wanneer het systeem het wist). Dat maakt het bitemporale diagram zinvol: het laat zien hoe kennis over de werkelijkheid zich in de tijd opbouwt.
De verhuizing is het enige voorbeeld zonder BS-tijdlijn: een adreswijziging is geen civiele levensgebeurtenis en produceert geen akte.
Dezelfde ambtenaar, twee rollen
In de praktijk is het bij de meeste gemeenten dezelfde medewerker die achtereenvolgens beide rollen vervult: eerst als Ambtenaar Burgerlijke Stand (akte opmaken), dan als medewerker Bevolkingsregistratie (inschrijving verwerken). Dat is een implementatiedetail van de uitvoeringsorganisatie.
Conceptueel zijn het twee afzonderlijke handelingen, met elk hun eigen juridische grondslag en hun eigen verantwoordelijkheid. Een goede implementatie maakt dat onderscheid expliciet — ook al zit dezelfde persoon op dezelfde stoel.
Welke bounded context speelt een rol in de voorbeelden?
| Voorbeeld | Burgerlijke Stand | Bevolkingsregistratie |
|---|---|---|
| Inschrijving geboorteaangifte | ✓ | ✓ |
| Verhuizing | ✓ | |
| Late geboorteaangifte | ✓ | ✓ |
| Correctie persoonsgegevens | ✓ | ✓ |
| Adoptie | ✓ | ✓ |