Ga naar inhoud

Hoofdmodel Compact

Compacte projectie van het hoofdmodel, bedoeld voor presentaties en overzichts-slides. Subtypen, cardinaliteiten en edge-labels zijn weggelaten; alleen de klassen die de DVTP-databehoefte dragen blijven zichtbaar.

Per deelmodel staat de klasse waarmee de DVTP-pilot-rijen direct mappen voorop: StudieLening (saldo, maandtermijn, aflostermijn) voor DUO, Arbeidsverhouding plus LoonBestanddeel voor de UWV-loonketen, Aftrekpost plus Verzamelinkomen voor de Belastingdienst, KredietOvereenkomst plus AchterstandRegistratie voor BKR, en Tenaamstelling plus ZakelijkRecht voor Kadaster.

Voor de volledige versie met subtypen en cardinaliteiten, zie hoofdmodel. Voor de details per deelmodel, zie de deelmodellen.

Diagram

GBO PlantUML class-diagram

Hoofdmodel

Het hoofdmodel is een brug-diagram: het toont uitsluitend objecttypen die deelmodel-grenzen overschrijden, plus de top-supertypen die binnen één deelmodel wonen maar als aanknopingspunt voor cross-domein-relaties dienen. Subtypen, attributen en codelijsten staan in het betreffende deelmodel.

Partij staat centraal: alle persoons- en organisatie-rollen erven ervan, en de meeste brug-relaties hangen aan een variant van Partij. De brug-klassen die als ingang voor de DVTP-databehoefte dienen zijn opgenomen: Verbintenis (fiscale partner), LoonBestanddeel (loonketen), Aftrekpost (Box 1-aftrekken), AchterstandRegistratie (BKR-toets) en StudieLening (DUO-schuld).

Voor een sterk gereduceerde variant geschikt voor één presentatie-slide, zie hoofdmodel-compact.

Diagram

GBO PlantUML class-diagram

Brug-klassen per deelmodel

Deelmodel Brug-klassen op hoofdmodel-niveau Detail in
Personen NatuurlijkPersoon, Verbintenis Personen
Bedrijven en instellingen NietNatuurlijkPersoon, Inschrijving, Vestiging Bedrijven en instellingen
Adressen en gebouwen Adres, Binnenlandsadres, Postadres, AdresseerbaarObject, Verblijfsobject, Pand Adressen en gebouwen
Onroerende zaken KadastraleOnroerendeZaak, Perceel, Appartementsrecht, ZakelijkRecht, Tenaamstelling, PubliekrechtelijkeBeperking Onroerende zaken
Waarde onroerende zaken WOZObject, WOZWaarde Waarde onroerende zaken
Belastingen Aangifte, Aanslag, Verzamelinkomen, EigenWoning, Aftrekpost, Toeslag, Inkomstenverhouding, LoonAangifte, LoonBestanddeel, Renseignering Belastingen
Krediet KredietOvereenkomst, HypothecairKredietEigenWoning, AchterstandRegistratie Krediet
Onderwijs OnderwijsInstelling, OpleidingDeelname, StudieLening Onderwijs
Werk en Inkomen Uitkering, Arbeidsverhouding Werk en Inkomen

Sleutelrelaties: toelichting

Partij als kern

PartijInschrijving (1..*0..*). Een partij, natuurlijk persoon of niet-natuurlijke persoon, kan ingeschreven zijn in het Handelsregister. Het patroon is symmetrisch voor een eenmanszaak (NP-eigenaar), een holding (NNP-NNP), een VOF (meerdere NP-vennoten) of een eenvoudige BV (één NNP-inschrijving). De relatie hangt aan Partij zodat al deze vormen op één manier modelleerbaar zijn.

PartijTenaamstellingZakelijkRechtKadastraleOnroerendeZaak. Eigendom en andere zakelijke rechten worden via een aparte Tenaamstelling aan een partij gekoppeld. Daardoor zijn meervoudige tenaamstelling (echtparen, mede-eigendom) en historie zonder duplicate-rij-modellering uit te drukken.

NatuurlijkPersoonVerbintenis (20..*). Huwelijk, geregistreerd partnerschap of samenlevingscontract verbinden twee natuurlijke personen. Verbintenis is de aanknopingspoot voor fiscaal partnerschap, vermogensregime en het afleiden van gezinssamenstelling: dezelfde class draagt de DVTP-datapunten rond burgerlijke staat (BRP rij 53), echtscheidingsdatum (rij 63) en gezinssamenstelling (rij 66).

Adres en BAG

AdresseerbaarObjectBinnenlandsadres (11). Elk adresseerbaar object (verblijfsobject, ligplaats, standplaats) vormt precies één binnenlands adres. Postadres en buitenlandsadres zijn zelfstandige adres-subtypen, niet aan een AdresseerbaarObject gebonden.

VerblijfsobjectPand (1..*1..*). Een verblijfsobject ligt in één of meer panden (sluis-VBO over twee panden komt voor), en een pand kan meerdere VBOs bevatten, of leeg zijn zonder VBO. Ligplaats en Standplaats hebben géén pand-relatie; daarom loopt de pand-koppeling via het Verblijfsobject-subtype, niet via het abstracte AdresseerbaarObject.

PandPerceel (1..*1..*). Een BAG-pand kan over meerdere kadastrale percelen liggen, en een perceel kan meerdere panden dragen. Geen 1-op-1-koppeling; bij projectie altijd geometrische overlap.

Adressen van een NietNatuurlijkPersoon: direct via het zetel-attribuut (statutaire vestigingsplaats, alleen plaatsnaam) en indirect via z'n Vestiging-instanties:

  • VestigingBinnenlandsadres (10..1, bezoekadres): fysieke NL-locatie afgeleid van de BAG-keten.
  • VestigingPostadres (10..1, postadres): correspondentieadres; vaak een postbus, soms identiek aan bezoekadres. Apart objecttype omdat HR/KVK postadres- en bezoekadres-historie los administreert.

Onroerend goed en WOZ

AppartementsrechtAdresseerbaarObject (0..10..1). Een appartementsrecht correspondeert typisch met één fysieke ruimte: meestal een verblijfsobject (appartement), soms een standplaats (garagebox). Niet elk AO is gesplitst als appartementsrecht, en niet elk appartementsrecht heeft een corresponderende BAG-AO (gedeelde ruimtes bij een Vereniging van Eigenaren).

WOZObjectAdresseerbaarObject(en) en Perceel(en). De fiscale eenheid van een WOZ-object is een samenstelling, niet identiek aan één pand of één perceel. Een kantoor met parkeerplaats kan twee adresseerbare objecten omvatten; een agrarisch bedrijf meerdere percelen.

Belastingen, Krediet en Wonen

KadastraleOnroerendeZaakEigenWoningHypothecairKredietEigenWoning. Het eigenwoning-regime in Box 1 van de inkomstenbelasting hangt aan precies één kadastrale onroerende zaak. Een hypothecair krediet voor de eigen woning is op diezelfde KOZ gevestigd. Hypotheekrenteaftrek in een IH-aangifte refereert via EigenWoning indirect aan de KOZ.

Inkomstenverhouding (NatuurlijkPersoonNietNatuurlijkPersoon). Spil van de loonaangifteketen: per combinatie van werknemer en inhoudingsplichtige werkgever. De inhoudelijke loon- en periode-data hangt aan de Inkomstenverhouding zelf. De Belastingdienst is wettelijk eigenaar; UWV en SGR voeren operationeel uit, maar inhoudelijk hoort het in Belastingen.

Verzamelinkomen is het enige authentieke gegeven binnen de Basisregistratie Inkomen (BRI). De waarde komt uit een definitief vastgestelde IH-aangifte of, bij ontbreken, uit de loonaangifteketen. Afnemers van inkomensgegevens in inkomensafhankelijke regelingen zijn verplicht het BRI-inkomen te gebruiken.

InkomstenverhoudingLoonBestanddeel (10..*). Bruto periodesalaris, vakantiegeld, dertiende maand, structurele toeslagen, provisie, bonus, overwerk, bijtelling auto van de zaak en inhoudingen pensioen/AO zijn elk een afzonderlijk LoonBestanddeel binnen de inkomstenopgaven van een Inkomstenverhouding. Hier landen de UWV-rijen 1 t/m 19 van de DVTP-Excel; categorisering verloopt via de Loonheffingen-bijlagen (zie Belastingen).

Aftrekpost is de abstracte poot voor alle Box 1-aftrekken die een belastingplichtige in de IH-aangifte kan opvoeren: hypotheekrente- aftrek, lijfrentepremies, partneralimentatie, giften. Concreet subtype HypotheekrenteAftrek koppelt via EigenWoning aan de KadastraleOnroerendeZaak; daardoor sluit dezelfde modellering aan op de BD-rijen 28, 31, 36 en op de eigenwoning-keten.

Werk en Inkomen

ArbeidsverhoudingInkomstenverhouding (10..*). De materiële arbeidsverhouding tussen werknemer en werkgever wordt operationeel zichtbaar via de Inkomstenverhouding-records in de loonaangifteketen. Eén arbeidsverhouding kan meerdere inkomstenverhoudingen tot uiting brengen (bijvoorbeeld bij wisseling van loonadministratie of contract-restructuring).

Uitkering hangt aan een NatuurlijkPersoon als toegekende. De concrete varianten WW, ZW, WIA (IVA, WGA), Wajong, AOW staan in Werk en Inkomen; het abstracte supertype InkomensOndersteuning vormt de cross-domein- abstractie waaronder ook Toeslag valt.

Krediet

KredietOvereenkomstAchterstandRegistratie (10..*). Een achterstand op een kredietovereenkomst leidt tot een melding aan het Centraal Krediet Informatiesysteem. De BKR-toets in een hypotheek- aanvraag (DVTP-rij 15 BKR) gebruikt deze meldingen plus de bijzonderheidscoderingen. HypothecairKredietEigenWoning koppelt diezelfde overeenkomst aan de KadastraleOnroerendeZaak, zodat de hypotheek vanuit twee perspectieven herkenbaar is: financieel (Krediet) en zakelijk-rechtelijk (BRK).

Onderwijs

StudieLeningNatuurlijkPersoon (0..*1). De studieschuld bij DUO hangt direct aan de (oud-)student. Saldo, maandtermijn, aflostermijn totaal en aflostermijn restant zijn de DVTP-DUO-rijen 43 t/m 46 en worden conform de TRHK meegenomen in de woonlastentoets. StudieLening is een eigenstandige class naast OpleidingDeelname: de schuld kan doorlopen nadat de opleiding is afgerond.

OpleidingDeelname koppelt NatuurlijkPersoon (de leerling/student) aan OnderwijsInstelling en Opleiding (laatste binnen het deelmodel). OnderwijsInstelling is een subtype van NietNatuurlijkPersoon met aanvullende BRIN- en RIO-gegevens, zodat de instelling als rechtspersoon volledig in Bedrijven en instellingen blijft passen. DVTP-rij 42 (opleidingsniveau) verwijst naar Opleiding via een afgesloten OpleidingDeelname.

Gedeelde bouwstenen

De typering van attribuutsoorten staat op één gedeelde pagina: Datatypes en codelijsten. Daar zijn beschreven:

  • Simpele datatypes (MIM-primitieven CharacterString, Integer, Real, Boolean, Date, DateTime, Year, Duration, URI) en hun Nederlandse aliassen Tekst, Numeriek, Decimaal, Indicatie, Datum, DatumTijd, Jaar, Duur, inclusief lengte- en precisie-varianten (Tekst24, Numeriek9, Alfanumeriek10).
  • Identificerende datatypes (BSN, KVKnummer, Vestigingsnummer, Kenteken, KadastraleAanduiding, BRINcode) — de natuurlijke zoeksleutels per register, met formaatconstraints.
  • Aanvullende datatypes (DatumIncompleet, BAGID, NEN3610ID, UUID, Geometrie met subtypes Punt, Vlak, Lijn, Bedrag, Breuk, ObjectAanduiding, Codelijst~bron).
  • Stelselbrede codelijsten (BRP-LT 33 Gemeenten, CBS SBI, CBS Wijk- en Buurtcodering, ISO 3166, Kadaster Kadastrale Gemeenten, TOOI) met cross-walks (ISO 3166 ↔ BRP-LT 32 nationaliteit, ISO 3166 ↔ BRP-LT 34 landen, IND ↔ BRP-LT 56 verblijfstitel) en onderhoudsritme.

Deelmodel-specifieke codelijsten (BRP-LT op het personen-spoor, KVK-rechtsvormen, WOZ Gebruikscode, SBR-NT enumeraties, CKI-codes, Loonheffingen-bijlagen, BRIN/RIO-codes, BKWI-codes) staan op de bijbehorende deelmodel-pagina.

Patronen

Codelijst-strategie

GBO hanteert een hybride aanpak: internationale norm leidend voor semantiek waar die bestaat (ISO 3166, IND), BRP-Landelijke Tabel leidend voor uitwisseling met de BRP-keten. Zie Datatypes en codelijsten voor het volledige overzicht en de cross-walks.

Identifier-strategie

Per objecttype is afgesproken welk identificerend kenmerk autoritatief is; in de attribuut-tabellen van de deelmodellen staat dat attribuut vet. Het uitgangspunt is een herkenbare, authentieke registersleutel, niet een intern nummer:

  • BSN voor NatuurlijkPersoon, ook voor niet-ingeschreven personen (BRP-bron).
  • KVK-nummer voor NietNatuurlijkPersoon en het hele cluster daaronder, inclusief Inschrijving; vestigingsnummer voor Vestiging.
  • NEN3610-ID (BAG-id en BRK-id) voor BAG-objecten en BRK-objecten.
  • Kadastrale aanduiding voor Perceel en Appartementsrecht.
  • WOZ-objectnummer + verantwoordelijke gemeente voor WOZObject (WOZ-objectnummer is alleen uniek binnen één gemeente).
  • Kenteken voor Voertuig.
  • BRIN of instellingscode-RIO voor OnderwijsInstelling; opleidingscode (CROHO/CREBO) voor Opleiding.
  • Partij is een abstract supertype en draagt sinds v0.3 (besluit 2026-08-10) geen eigen identifier. Een partij is uitsluitend aanwijsbaar met de authentieke sleutels van haar subtypen: bsn (IngeschrevenPersoon), rsin en kvkNummer (NietNatuurlijkPersoon). Het eerdere GBO-eigen UUID-attribuut is verwijderd omdat het nergens uit te vragen viel en als dood veld in de bronschema's van BRK, BRV en WOZ terechtkwam. Een relatie naar Partij mag daarom niet tot een sleutel-referentie worden herleid: wijst een relatie naar Partij, dan hoort Partij met de relevante subtypen in het bron-profiel te staan.
  • De overige GBO-eigen UUID's (adresId van de niet-BAG-adresvormen, identificatie van Onderneming) blijven interne sleutels en worden niet als externe identifier gebruikt; het adresId van Binnenlandsadres is de BAG-identificatie van de Nummeraanduiding en daarmee wel extern bruikbaar.

Voorkomen-mixin (bitemporaliteit)

Voorkomen is geen klasse maar een mixin van attributen die elk basisregistratie-objecttype kan dragen. De mixin levert bitemporele expressiviteit conform HC-BAG en BRP-Historie (twee tijdlijnen: materiële geldigheid en formele registratie).

Mixin-attribuut Type Cardinaliteit Tijdlijn
beginGeldigheid Datum 1 Materieel: start
eindGeldigheid Datum 0..1 Materieel: einde (open = lopend)
tijdstipRegistratie DatumTijd 1 Formeel: start
eindRegistratie DatumTijd 0..1 Formeel: einde (open = actueel)
versie Numeriek 1 Monotone teller

Daarnaast vier datakwaliteits-flags die los van Voorkomen kunnen leven maar er vaak mee gepaard gaan:

Flag Type Cardinaliteit Toelichting
geconstateerd Datum 0..1 Datum waarop officieel geconstateerd.
inOnderzoek Indicatie 1 Markering dat de kwaliteit in onderzoek is.
documentdatum Datum 0..1 Datum van het bron-document (akte).
documentnummer Identificatie 0..1 Identificatie van het bron-document.

Diagram-conventie

Diagrammen op deze site tonen geen attribuut-blokken in class-boxes; attributen, datatypes en codelijsten staan steeds in tekst onder het diagram, per objecttype. Die scheiding houdt de plaat scanbaar en de detailniveau-keuze expliciet. Rendering: PlantUML met ELK-layout.