IMX-Geo | Semantisch model basis- en kernregistraties
De Nederlandse basis- en kernregistraties zijn objectgericht ingericht. Elke eenheid van een gegeven – bijvoorbeeld een adres- , is informatiekundig opgedeeld in losse objecten. Zo bestaat een adres bijvoorbeeld uit vier verschillende objecten: een plaats, een pand, lig- of standplaats, een straatnaam en een huisnummer. Om deze objecten als één geheel te presenteren, moet je ze combineren. Het is mogelijk dat gegevens zijn opgedeeld in objecten binnen één en dezelfde registratie, maar er zijn ook gegevens waarvoor je objecten moet ophalen uit verschillende registraties.
Semantisch model brengt het informatielandschap in kaart
Om ervoor te zorgen dat je zonder diepgaande kennis over de structuur van de verschillende registraties, samengestelde gegevens kunt opvragen, werken Kadaster en Geonovum aan een samenhangend semantisch model en een API-orkestratie. In het semantisch model legt Geonovum vast wat de betekenis is van objecten in een registratie en wat de samenhang is tussen verschillende objecten binnen verschillende registraties. Het semantisch model kan je zien als een soort wegenkaart van de dataregistraties. Het Kadaster implementeert dit model in een API-orkestratielaag.
De orkestratielaag kan op basis van het samenhangend semantisch model een route uitstippelen naar gegevens in de verschillende registraties. Via die (API)service kan je dan automatisch de relevante objecten ophalen en deze in één samenhangend antwoord terug ontvangen.
Aanpak
We bouwen het samenhangend semantische model stapsgewijs op. Dat doen we aan de hand van use cases. Sommige use cases zijn heel praktisch (Adres, Gebouw) anderen juist technisch (geautomatiseerde implementatie semantisch model, koppelen externe bronnen). Maar we beginnen eenvoudig. Zo bestaat de eerste use case uit de functie: ‘Opvragen van een adres’.
Wie een samengesteld adres van een adresseerbaar object (verblijfsobject, stand- of ligplaats) wil opvragen uit de BAG, heeft daar vier objecttypen voor nodig:
- het object Verblijfsobject, Ligplaats of Standplaats voor het ID en eventueel de locatie,
- het gerelateerde object Nummeraanduiding voor de postcode en huisnummer (eventueel met toevoegingen),
- het object gerelateerde object OpenbareRuimte voor de straatnaam en
- het gerelateerde object Woonplaats voor de woonplaats.
Via de oranje route in de afbeelding kom je van adresseer object in de BAG naar uiteindelijk het laatste gegeven van een adres in de BAG, de woonplaats.
Voor deze route maken we een compact samenhangend semantisch model Adres. Vervolgens specificeren we de vertaling van de benodigde objectgegevens in de BAG naar het productmodel Adres. De vertaalspecificatie is de basis voor de orkestratie door de registratie. De aansluiting tussen registratie en orkestratielaag en de werking van de orkestratie zelf, testen we met demo-software.
Resultaten
Bij de ontwikkeling van het samenhangend semantisch model werken we aan een aantal vernieuwende standaardisatieaspecten. De koppeling met metadata op gegevensniveau bijvoorbeeld en het opnemen van metadata over de herkomst van gegevens, is relatief nieuw. Daarnaast is de transformatie van de modelleertaal UML in de implementatie in JSON heel interessant. In de loop van dit jaar willen we alle geleerde lessen samen met softwareleveranciers verder beproeven en het model in consultatie brengen.
High 5's
In twee high5's hebben Kadaster en Geonovum het samengesteld ontsluiten van adresgegevens en van gebouwgegevens verkend. Op 23 maart werden de resultaten gepresenteerd. De presentaties zijn hieronder te bekijken.
Samenhang met andere ontwikkelingen
De ontwikkeling van het semantisch model voor basis- en kernregistraties loopt parallel aan en vooruit op het initiatief vanuit het Ministerie van Binnenlandse Zaken om te komen tot een samenhangende objectregistratie. Het vertrekpunt van het SOR programma ligt bij de bron. Het vertrekpunt van het initiatief van Kadaster en Geonovum is het gebruik. Zo dragen beide trajecten bij aan het optimaliseren van hergebruik van basis- en kernregistraties.