Skip to main content
Skip table of contents

GMW Berichtencatalogus uitgiftewebservice

Let op: dit document is een conceptversie en dus in progress!. Deze berichtencatalogus wordt onderdeel van de baseline behorende bij de gegevenscatalogus versie 1.1 van de Grondwatermonitoringput (GMW) . Het document gaat bij release van (standaarden-)versie 1.1 de bestaande documentatie Uitgiftehandboek en Koppelvlakbeschrijving vervangen. De releasedatum volgens de standaard-versie 1.1 zal zijn op 1 juli 2025. Wij verwachten dat de documentatie, inclusief xsd’s, enkele maanden eerder beschikbaar is.

1. Inleiding

1.1. Voorwoord

Betrouwbare en toegankelijke informatie over de samenstelling en opbouw van de ondergrond is van groot belang voor een dichtbevolkt land als het onze. Het helpt overheden, bedrijven en burgers om op feiten gebaseerde beslissingen te nemen over het gebruik van de ondergrond, bijvoorbeeld in verband met bereikbaarheid, waterveiligheid, warmte- en koudeopslag, aardgasproductie en de winning van aardwarmte. Ook voorkomen we zo dat informatie dubbel moet worden ingewonnen omdat het niet centraal is geregistreerd.

Het verzamelen, beschikbaar stellen, en gebruiken van al deze informatie is sinds september 2015 wettelijk vastgelegd in de Basisregistratie Ondergrond (BRO). Op 1 januari 2018 is het eerste deel van de Wet BRO in werking getreden, op 1 januari 2020 het tweede deel, op 1 januari c.q. 1 juli 2021 het derde deel en op 1 januari c.q. 1 juli 2022 het vierde deel.

Omdat de BRO een onderdeel is van het Stelsel van Basisregistraties, zijn verplichtingen met betrekking tot aanlevering, gebruik, terugmelding en onderzoek in de werkprocessen van overheidsorganisaties opgenomen in de Wet BRO. De BRO-gegevens worden centraal geregistreerd in de Landelijke Voorziening BRO (LV-BRO).

1.2. Doelstelling

Het document Handreiking Afname BRO Gegevens beschrijft via welke uitgiftekanalen BRO-gegevens geraadpleegd of gedownload kunnen worden en welke functionele en technische mogelijkheden deze kanalen bieden. Onder de noemer 'BRO uitgifte API' vallen dan in het bijzonder de 'REST uitgifteservice' en de 'SOAP webservice'. Functioneel gezien lijken deze twee uitgifteservices veel op elkaar.

  • De REST service is met name handig om als software ontwikkelaar 'incidenteel even snel en alleen publieke gegevens' op te halen uit de LV-BRO, zonder dat je je eerst moet aanmelden en zonder dat een PKIoverheid certificaat nodig is.

  • De SOAP webservice is met name geschikt om frequent en volledig geautomatiseerd in een machine-to-machine omgeving toegang te hebben tot alle beschikbare gegevens. Hiervoor moet je je aanmelden en heb je een PKIoverheid certificaat nodig.

Blijft over de vraag: hoe zien de uitgifteverzoeken en hun antwoorden er uit om gegevens over een grondwatermonitoringput (GMW) op te vragen en wat is de structuur van de diverse uitgiftedocumenten?

1.3. Doelgroepen

Doelgroepen voor dit document zijn organisaties en personen die aan de afnamekant van de BRO opereren, waaronder bestuursorganen (bestuurders, beleidsmakers, BRO-coördinatoren) en bedrijven (ingenieurs, software-leveranciers).

1.4. Samenhang met andere documentatie

De informatievoorziening over de afname van BRO-gegevens vindt plaats op 3 niveaus.

  1. Het startpunt met algemene informatie over de diverse uitgiftekanalen is het document Handreiking Afname BRO Gegevens. Dit document verwijst door naar het volgende niveau.

  2. Het tweede niveau bevat algemene informatie per uitgiftekanaal (zie https://basisregistratieondergrond.nl/inhoud-bro/aanleveren-opvragen/gegevens-opvragen/ ):

    1. De handleiding van de REST uitgifteservice is te vinden op https://www.bro-productomgeving.nl/bpo/latest/informatie-voor-softwareleveranciers/url-s-publieke-rest-services

    2. Algemene informatie over de SOAP webservice is te vinden op https://basisregistratieondergrond.nl/inhoud-bro/aanleveren-opvragen/instructies/gegevens-opvragen-via-soap-webservices/ . De handleiding voor het inrichten van SoapUI in het bijzonder is te vinden op https://basisregistratieondergrond.nl/inhoud-bro/aanleveren-opvragen/instructies/gegevens-opvragen-via-soap-webservices/aansluiten-demo-omgeving-soapui/

  3. Het derde niveau is de BRO Productomgeving. Hier vindt u specifieke informatie per domein/registratieobjecttype zoals scopedocument, gegevenscatalogus en werkafspraken, storymap, berichtencatalogi voor inname en uitgifte, voorbeeldberichten voor inname en uitgifte.

Het verdient aanbeveling dat u zich eerst bekend maakt met de aangeven informatie uit de eerste 2 niveau's.
Daarna kunt u zich verdiepen in de GMW-specifieke informatie in de BRO productomgeving, waaronder de GMW gegevenscatalogus en eventuele werkafspraken en in het bijzonder dit document, de GMW berichtencatalogus uitgiftewebservice.

1.5. Leeswijzer

Hoofdstuk 2 beschrijft de algemene werking van de GMW uitgiftewebservice.
Hoofdstuk 3 beschrijft de structuur van de diverse uitgiftedocumenten.
Hoofdstuk 4 bevat een toelichting op enkele voorbeeldberichten.
Hoofdstuk 5 bevat de toegestane waarden van de enumeraties (niet-beheerde lijsten met toegestane waarden).
Hoofdstuk 6 bevat verwijzingen (URN's en URL's) naar de codelijsten (beheerde lijsten met toegestane waarden).
Hoofdstuk 7 bevat een vertaaltabel, aan de hand waarvan, gegeven de Engelstalige naam van een entiteit of een attribuut, de Nederlandse naam in de catalogus kan worden opgezocht.

1.6. Versiehistorie

Versie

Datum

Omschrijving

1.0

19-06-2024

Eerste versie na samenvoeging van de voorgaande documenten Uitgiftehandboek GMW en Koppelvlakbeschrijving Uitgifteservice GMW.

2. Algemene werking van de GMW uitgiftewebservice

Dit hoofdstuk beschrijft de algemene werking van de GMW uitgiftewebservice.
Paragraaf 2.1 beschrijft de operaties die de GMW uitgiftewebservice ondersteunt.
Paragraaf 2.2 beschrijft de BRO-berichten (request en response) die een rol spelen bij die operaties.

2.1. Operaties

De GMW uitgiftewebservice wordt gerealiseerd als een SOAP-webservice. De onderstaande figuur beschrijft de operaties van de webservice, hun requests en hun responses.

image-20240703-114621.png

De wsdl kan worden gedowload van https://schema.broservices.nl/dsgmw-v1.1.wsdl
De GMW uitgiftewebservice ondersteunt twee soap operaties:

  • dispatchCharacteristics (uitgifte van kengegevens).

  • dispatchData (uitgifte van objectgegevens).

Een soap operatie heeft een request en een response:

  • Het DispatchCharacteristicsRequest (Verzoek tot uitgifte van kengegevens) en de DispatchCharacteristicsResponse (Bericht van verzending van kengegevens).

  • Het DispatchDataRequest (Verzoek tot uitgifte van objectgegevens) en de DispatchDataResponse (Bericht van verzending van objectgegevens).

Naast een functioneel antwoord (een bericht van verzending) kan een verzoek ook leiden tot een foutmelding:

  • SOAP:Fault (Systeemfout): als er tijdens de verwerking van het uitgifteverzoek een onverwachte fout optreedt in het BRO-systeem, dan leidt dit tot een SOAP:Fault.

  • ParseFault (Validatiefout): als de uitgiftewebservice constateert dat een uitgifteverzoek niet een welgevormd XML-bericht is of dat het niet voldoet aan de XSD-schemavalidatie, dan leidt dit tot een ParseFault.

2.2. BRO-berichten

Deze paragraaf beschrijft de verschillende BRO-berichten (request, response en foutmeldingen) die een rol spelen in de GMW uitgiftewebservice.

2.2.1. DispatchCharacteristicsRequest

Het BRO-bericht DispatchCharacteristicsRequest bevat het uitgifteverzoek tot het leveren van de in het BRO-register opgenomen kengegevens van de GMW registratieobjecten die voldoen aan bepaalde kenmerken. Het DispatchCharacteristicsRequest (Verzoek tot uitgifte van kengegevens) van de GMW uitgiftewebservice is een specialisatie van AbstractDispatchCharacteristicsRequest in de package brocommon, waaraan het het attribuut criteria (kenmerken) toevoegt met de GMW specifieke kenmerken.

image-20240703-124639.png

De definities van de attributen van de CriteriaSet uit brocommon staan in onderstaande tabel:

Naam in XML-bestand

Nederlandse naam

Type

Kardinaliteit

Definitie

deliveryAccountableParty

bronhouder

CharacterString

0..1

Het KvK-nummer van de maatschappelijke activiteit van de publiekrechtelijke rechtspersoon die bronhouder is van de gegevens in de basisregistratie ondergrond.

qualityRegime

kwaliteitsregime

Enumeration

0..1

De aanduiding van de kwaliteitseis waaraan de gegevens van het object moeten voldoen.

registrationPeriod

periode van registreren

DatePeriod

0..1

Het datuminterval waarbinnen de datum van het tijdstip registratie van het registratieobject moet liggen.

correctionPeriod

periode van corrigeren

DatePeriod

0..1

Het datuminterval waarbinnen het laatste correctietijdstip van het registratieobject moet liggen.

underReview

in onderzoek

IndicationYesNo

0..1

De aanduiding die aangeeft of het registratieobject door de registerbeheerder in onderzoek is genomen.

area

gebied

Area

1..1

De begrenzing van een geografisch gebied aan het aardoppervlak, in de vorm van een rechthoek of een cirkel, waarbinnen het registratieobject moet liggen.

 De definities van de attributen, die GMW_CriteriaSet uit dsgmw-messages.xsd hieraan toevoegt, staan in onderstaande tabel:

Naam in XML-bestand

Nederlandse naam

Type

Kardinaliteit

Definitie

withPrehistory

withPrehistory

IndicationYesNoEnumeration

0..1

[TODO]

owner

owner

ChamberOfCommerceNumber

0..1

De identificatie de onderneming, die eigenaar van het fysieke object is, heeft in het Handelsregister.

constructionStandard

constructionStandard

ConstructionStandard

0..1

De norm of verzameling normen die omschrijven volgens welke afspraken, specificaties en/of criteria de grondwatermonitoringput is geplaatst.

constructionPeriod

constructionPeriod

DatePeriod

0..1

removalPeriod

removalPeriod

DatePeriod

0..1

removed

removed

IndicationYesNoEnumeration

0..1

Indicatie of de grondwatermonitoringput fysiek verwijderd is.

tubeStatus

tubeStatus

TubeStatus

0..1

Geclassificeerde aanduiding of een buis fysiek geschikt is voor grondwatermonitoring

screenPositionRange

screenPositionRange

VerticalPositionRange

0..1

initialFunction

initialFunction

InitialFunction

0..1

Aanduiding van de initiële functie waarvoor de grondwatermonitoringput is ingericht.

minimumNumberOfTubes

minimumNumberOfTubes

Integer

0..1

geoOhmCablePresent

geoOhmCablePresent

IndicationYesNoEnumeration

0..1

wellHeadProtector

WellHeadProtectorType

0..1

minimumTubeTopDiameter

minimumTubeTopDiameter

Diameter

0..1

minimumTubeTopDiameter

minimumTubeTopDiameter

Diameter

0..1

2.2.2. DispatchDataRequest

Het BRO-bericht DispatchDataRequest bevat het uitgifteverzoek tot het leveren van de in het BRO-register opgenomen gegevens van een bepaald registratieobject. Daarbij wordt het registratieobject geïdentificeerd door zijn BRO-ID. Het DispatchDataRequest (Verzoek tot uitgifte van objectgegevens) van de GMW uitgiftewebservice is een specialisatie van DispatchDataRequest in de package brocommon, waaraan het het attribuut dataToBeDelivered (te leveren gegevens) toevoegt.

De definities van de drie transactiegegevens (uit brocommon) staan in onderstaande tabel:

Naam in XML-bestand

Nederlandse naam

Type

Kardinaliteit

Definitie

requestReference

verzoekkenmerk

CharacterString

1..1

Een voor de afnemer unieke aanduiding van het uitgifteverzoek.

broId

BRO-ID

RegistrationObjectCode

1..1

De identificatie van de grondwatermonitoringput in de registratie ondergrond.

Toelichting:
De basisregistratie ondergrond kent bij registratie automatisch de juiste waarde aan het attribuut toe.
De registratieobjectcode van een grondwatermonitoringput bestaat uit de drie hoofdletters GMW, gevolgd door een code van 12 cijfers inclusief eventuele voorloopnullen. Voorbeeld: GMW000000123456.

dataToBeDelivered

te leveren gegevens

DataToBeDelivered

1..1

Aanduiding welke gegevens over het registratieobject worden opgevraagd: alleen de actuele gegevens of de volledige materiële geschiedenis.

 2.2.3. SOAP:Fault

Tijdens de uitvoering van een operatie kan er een onverwachte fout optreden in het BRO-systeem. Hiervoor kunnen verschillende oorzaken zijn, zoals het falen van bepaalde software of hardware. Deze onverwachte fouten worden beschouwd als een technische fout veroorzaakt door het BRO-systeem. De BRO stuurt dan een bericht in de vorm van een generieke SOAP:Fault (Systeemfout).

Een SOAP:Fault (Systeemfout) bestaat uit twee verplichte gegevens en één optioneel gegeven. De definities van deze gegevens staan in onderstaande tabel:

Naam in XML-bestand

Nederlandse naam

Type

Kardinaliteit

Definitie

faultcode

foutcode

CharacterString

1..1

Aanduiding waar de fout is opgetreden.

Toelichting:
Vaste waarde "soap:Server".

faultstring

fouttekst

CharacterString

1..1

Summiere beschrijving van de fout.

Toelichting:
Vaste waarde "Er is een fout in het BRO-systeem geconstateerd".

detail

details

AnyType

0..1

Aanvullende informatie over de opgetreden fout en de vermoedelijke oorzaak.

Toelichting:
Het gegeven kan een simpele waarde hebben, b.v. tekst, of een samengestelde waarde.

2.2.4. ParseFault

Als er fouten in het uitgifteverzoek worden gevonden tijdens de technische controle van een uitgifteverzoek, bijvoorbeeld het uitgifteverzoek is niet een welgevormd XML-bericht of het uitgifteverzoek voldoet niet aan de schemavalidatie, dan worden deze beschouwd als een softwarefout in het systeem van de data-afnemer. Het BRO-systeem stuurt dan een bericht in de vorm van een ParseFault (Validatiefout).

Het BRO-bericht ParseFault (Validatiefout) is in feite een gemodelleerde vorm van de algemene SOAP:Fault (Systeemfout), waarbij op de plek van het detail de gegevens van de ParseFault (Validatiefout) worden opgenomen. In de ParseFault (Validatiefout) zit een lijst met abortReasons (Redenen afbreken).

Dit BRO-bericht begint met een SOAP:Fault (Systeemfout), bestaande uit drie gegevens, waarin het attribuut detail het specifieke type ParseFault (Validatiefout) heeft. De definities van deze gegevens staan in onderstaande tabel:

Naam in XML-bestand

Nederlandse naam

Type

Kardinaliteit

Definitie

faultcode

foutcode

CharacterString

1..1

Aanduiding waar de fout is opgetreden.

Toelichting:
Vaste waarde "soap:Client".

faultstring

fouttekst

CharacterString

1..1

Summiere beschrijving van de fout.

Toelichting:
Vaste waarde "Het verzoek voldoet niet aan het schema".

detail

details

ParseFault

0..1

Aanvullende informatie over de opgetreden fout en de vermoedelijke oorzaak.
Het type van het gegeven is ParseFault (Validatiefout).

Regel:
Het gegeven is aanwezig bij een softwarefout.

De ParseFault (Validatiefout) bestaat uit drie gegevens en een lijst met abortReasons. De definities van de gegevens van ParseFault (Validatiefout) staan in onderstaande tabel:

Naam in XML-bestand

Nederlandse naam

Type

Kardinaliteit

Definitie

requestReference

verzoekkenmerk

CharacterString

0..1

Een voor de dataleverancier unieke aanduiding van het uitgifteverzoek.

Toelichting:
Waarde overgenomen uit het request. Dit gegeven is optioneel omdat de softwarefout geconstateerd kan worden voordat het BRO-systeem het uitgifteverzoek heeft kunnen lezen.

transactionId

transactiecode

CharacterString

0..1

Een voor het BRO-systeem unieke aanduiding voor de verwerking van een innameverzoek of uitgifteverzoek.

Toelichting:
Waarde toegekend door het transactieregister. Dit gegeven is optioneel omdat de softwarefout geconstateerd kan worden voordat het BRO-systeem een transactie heeft kunnen aanmaken.

abortTime

moment van afbreken

DateTime

1..1

Tijdstip, toegekend door de webservice, waarop de verwerking van het uitgifteverzoek is afgebroken.

abortReason

reden afbreken

AbortReason

1..*

Lijst met redenen waarom de verwerking van het uitgifteverzoek is afgebroken.

Toelichting:
Om praktische redenen wordt de lijst beperkt tot maximaal 99 redenen.

Iedere AbortReason (Reden afbreken) bestaat uit twee gegevens. De definities staan in onderstaande tabel:

Naam in XML-bestand

Nederlandse naam

Type

Kardinaliteit

Definitie

sequenceNumber

volgnummer

Integer

1..1

Een binnen deze lijst van abortReasons (redenen afbreken) uniek nummer.

Toelichting:
Numerieke waarde bedoeld om de lijst met foutmeldingen te kunnen sorteren.

specification

foutmelding

CharacterString

1..1

Omschrijving van de validatie fout.

2.2.5. DispatchCharacteristicsResponse

Onder normale omstandigheden bestaat het antwoord op een DispatchCharacteristicsRequest (Verzoek tot uitgifte van kengegevens) uit een DispatchCharacteriscticsResponse (Bericht van verzending van kengegevens). Het antwoord dispatchCharacteristicsResponse is gedefinieerd in het XSD-bestand dsgmw-messages.xsd. Het is een specialisatie van DispatchResponse zoals gedefinieerd in brocommon.xsd. Het voegt daaraan toe het attribuut numberOfDocuments (aantal documenten) en een optionele lijst met dispatchDocuments (uitgiftedocumenten).

Het BRO-bericht dispatchCharacteristicsResponse kan twee betekenissen hebben:

  • Een bericht van afwijzing.

  • Een bericht van verzending van kengegevens.

Onderstaande tabel geeft weer welke gegevens onder welke omstandigheden in het BRO-bericht opgenomen zullen worden. De lijst met criterionErrors (kenmerkfouten) speelt alleen een rol bij de uitgifte van kenmerken.

Gegeven

Afwijzing

Verzending

responseType

requestReference

rejectionTime

 

dispatchTime

 

rejectionReason

 

criterionError

 

numberOfDocuments

 

dispatchDocument

 

Onderstaande tabel bevat de definities van de gegevens van de DispatchResponse uit brocommon.xsd:

Naam in XML-bestand

Nederlandse naam

Type

Kardinaliteit

Definitie

responseType

berichttype bevestiging van verzending

ResponseType

1..1

Aanduiding van de betekenis van het antwoord.

Regels:
Als het BRO-systeem een semantische fout heeft geconstateerd in één of meer waarden van de attributen van de criteria (kenmerken) in het uitgifteverzoek, dan heeft het attribuut de waarde rejection.

Als het BRO-systeem het uitgifteverzoek succesvol heeft verwerkt, dan heeft het attribuut de waarde dispatch.

requestReference

verzoekkenmerk

CharacterString

1..1

Het kenmerk van het uitgifteverzoek, dat de afnemer heeft meegegeven om voor eigen doeleinden het uitgifteverzoek te kunnen identificeren, waarop dit bericht een antwoord is.

Toelichting:
De waarde wordt overgenomen uit het request.

rejectionTime 

tijdstip van afwijzing

DateTime

0..1

Tijdstip, toegekend door de webservice, waarop het uitgifteverzoek is afgewezen.

Regels:
Dit gegeven is alleen aanwezig als het gegeven responseType de waarde 'rejection' heeft.

dispatchTime 

tijdstip van verzending

DateTime

0..1

Tijdstip, toegekend door de webservice, waarop de opgevraagde gegevens zijn verzonden.

Regels:
Dit gegeven is alleen aanwezig als het gegeven responseType de waarde 'dispatch' heeft.

rejectionReason 

reden afwijzing

CharacterString

0..1

De reden waarom het uitgifteverzoek is afgewezen.

Regels:
Dit gegeven is alleen aanwezig als het gegeven responseType de waarde 'rejection' heeft.

Als dit antwoord wordt gegeven naar aanleiding van een dispatchCharacteristicsRequest (verzoek tot uitgifte van kengegevens) en de uitgiftewebservice heeft een of meer fouten geconstateerd in het uitgifteverzoek, dan heeft dit gegeven de vaste waarde "Er zijn 1 of meer fouten geconstateerd in de kenmerken".

Als dit antwoord wordt gegeven naar aanleiding van een dispatchDataRequest (verzoek tot uitgifte van objectgegevens) en de uitgiftewebservice heeft geen registratieobject gevonden met de broId in het uitgifteverzoek, dan heeft dit gegeven de vaste waarde "Dit registratieobject bestaat niet".

criterionError 

kenmerkfout

CriterionError 

0..*

Lijst met foutmeldingen met betrekking tot een geconstateerde fout in de kenmerkenverzameling van een uitgifteverzoek, bestaande uit een volgnummer en een omschrijving.

Regels:
Deze lijst is niet aanwezig als het gegeven responseType de waarde 'dispatch' heeft.

Toelichting:
Om praktische redenen is de lijst beperkt tot maximaal 99 elementen.

Onderstaande tabel bevat de definities van de gegevens die DispatchCharacteristicsResponse uit dsgmw-messages.xsd toevoegt aan DispatchResponse uit brocommon:

Naam in XML-bestand

Nederlandse naam

Type

Kardinaliteit

Definitie

numberOfDocuments

aantal documenten

Integer

0..1

Het aantal registratieobjecten dat voldoet aan de criteria (kenmerken) in het uitgifteverzoek.

Regels:
Dit gegeven is alleen aanwezig als het gegeven responseType de waarde 'dispatch' heeft.

dispatchDocument

uitgiftedocument

AbstractRegistrationObject

0..*

Het element dispatchDocument bevat de gegevens van een grondwatermonitoringput registratieobject.

Deze lijst van uitgiftedocumenten bevat de kengegevens van de registratieobjecten die voldoen aan de criteria (kenmerken) in het uitgifteverzoek.

Regels:
Deze lijst is alleen aanwezig als het gegeven responseType de waarde 'dispatch' heeft.

Een uitgiftedocument in de lijst is van het type BRO_DO als het betreffende registratieobject uit registratie is genomen. 

Een uitgiftedocument in de lijst is van het type GMW_C als het betreffende registratieobject niet uit registratie is genomen. 

Toelichting:
Om praktische redenen is de lijst beperkt tot maximaal 2000 uitgiftedocumenten.

Vanwege het polymorfe karakter is het type óf een BRO_DO uit de package brocom, óf een GMW_PO_DP, óf een GMW_PO, óf een GMW_PPO_DP, óf een GMW_PPO uit de package dsgmw-messages. Deze types hebben allen als gemeenschappelijke vader het type AbstractRegistrationObject uit de package brocommon.

Als er geen registratieobjecten zijn gevonden die voldoen aan de kenmerken, dan heeft het attribuut numberOfDocuments de waarde 0 en is de lijst met dispatchDocuments leeg.

Als er meer dan 2000 registratieobjecten zijn gevonden die voldoen aan de kenmerken, dan heeft het attribuut numberOfDocuments de waarde 2000 en is de lijst met dispatchDocuments beperkt tot dat aantal.

 

Ieder dispatchDocument (uitgiftedocument) is:

  • óf van het type dsgmw:GMW_C, met daarin de kengegevens van een grondwatermonitoringput die niet uit registratie is genomen,

  • óf van het type brocom:BRO_DO, met daarin de kengegevens van een registratieobject dat uit registratie is genomen.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.