Koppelvlakbeschrijving Uitgifteservice GMW
Inleiding
Dit document beschrijft het koppelvlak van de uitgiftewebservice voor het registratieobject grondwatermonitoringput (GMW) voor de Landelijke Voorziening Basisregistratie Ondergrond (BRO). Deze koppelvlakbeschrijving gaat in op de technische werking van het koppelvlak om GMW-gegevens uit te kunnen wisselen tussen het systeem van de data-afnemer en het systeem van de BRO.
Doel en doelgroep
Doel van dit document is inzicht bieden in de werking van de uitgiftewebservice. Het proces van gegevensuitgifte zoals beschreven in het 'Uitgiftehandboek Grondwatermonitoringput' is in dit document vertaald naar het technische koppelvlak van de webservice: de Application Programming Interface (API).
Dit document richt zich op de technisch specialisten die de aansluiting realiseren tussen de systemen van de data-afnemers en de Landelijke Voorziening BRO. Kennis van XML en webservices is daarvoor vereist. Het document is echter zo geschreven dat overige belangstellenden de technische werking van het koppelvlak kunnen volgen.
Leeswijzer
Hoofdstuk 2 beschrijft de algemene technische werking van het koppelvlak van de uitgiftewebservice van de Landelijke Voorziening BRO. Dit hoofdstuk is bedoeld voor de lezer die een globaal idee wil krijgen hoe de geautomatiseerde gegevensuitwisseling van de BRO werkt.
Hoofdstuk 3 beschrijft vervolgens het koppelvlak van de GMW uitgiftewebservice in technische termen: de Application Programming Interface (API). De functionaliteit voor opvragen van de kengegevens van een verzameling registratieobjecten die voldoen aan bepaalde zoekcriteria en de functionaliteit voor het opvragen van de gegevens van een bepaald registratieobject komen daarbij aan bod.
De hoofdstukken 4 en verder beschrijven het UML-model van de uitgiftewebservice. Dezelfde structuur is van toepassing op de WSDL en XSD-bestanden van de uitgiftewebservice.
Bijlage A bevat de vertalingen van de berichten en de codelijsten van het Engels naar het Nederlands. Deze bijlage is een praktisch hulpmiddel aangezien de Engelstalige XML-berichten gebaseerd zijn op Nederlandse definities uit het uitgiftehandboek en de catalogus.
Referenties
Titel | Vindplaats |
---|---|
[1] Nederlandse Overheid Referentie Architectuur 3.0 (NORA) | NORA, website |
[2] Digikoppeling 3.0 | Logius, website |
[3] NEN3610:2011 | Geonovum, website |
[4] Guidance and profile of GML for use with Aviation Data | OGC 12-028http://www.opengis.net/doc/dp/gml-aviation-guidance |
Versiehistorie
Versie | Datum | Omschrijving |
---|---|---|
1.0 | 21-06-2017 | Bijgewerkt n.a.v. review commentaar. |
1.0.1 | 25-07-2017 | Stereotype FeatureType toegevoegd aan RegistrationObject |
1.0.2 | 26-07-2017 | Figuren in 6.3.2 en 6.4.6 vervangen i.v.m. toevoegen NITGCode en wellCode; tabel in 11.1.1 uitgebreid m.b.t. NITGCode en wellCode en tabel in 11.1.3 gecompleteerd i.r.t. hoofdstuk 8. |
1.1.0 | december 2017 | Aangepast op de BRO-keten (Project Start Architectuur versie 1.0) |
1.1.1 | 28-01-2019 | Contactgegevens BRO servicedesk aangepast |
1.2.0 | 16-10-2020 | Characteristics en GroundwaterMonitroingWell: uitgifte van NITGCode en wellCode aangepast conform werkafspraak putcode. |
1.2.1 | 20-10-2020 | DispatchCharacteristicsRequest en Characteristics bijgewerkt m.b.t. Criteria en DiameterRange. |
1.2.2 | 22-10-2020 | Tekst m.b.t. actueelHistorisch aangepast. |
Contactinformatie
Voor vragen, suggesties of opmerkingen over de inhoud van dit document kunt u contact opnemen met de BRO Servicedesk. Bel 088 – 8644 999 of mail naar support@broservicedesk.nl.
Verder vindt u op basisregistratieondergrond.nl. verdere technisch inhoudelijke instructie voor het opvragen van gegevens bij de Landelijke Voorziening BRO.
Opvragen van grondwatermonitoringput
Inleiding
Dit hoofdstuk beschrijft hoe het opvragen van gegevens van het GMW-registratieobject werkt. Hierbij wordt ingegaan op de algemene technische werking van het koppelvlak van de GMW uitgiftewebservice. Er wordt uitgelegd hoe het systeem van de data-afnemer en de Landelijke Voorziening communiceren en welke standaarden worden gehanteerd. Dit geeft een beeld hoe de geautomatiseerde gegevensuitwisseling met de BRO werkt.
Communicatie tussen twee systemen
Een data-afnemer kan geautomatiseerd gegevens van het GMW-registratieobject opvragen bij de BRO via de GMW uitgiftewebservice. Het systeem van de dataleverancier stuurt hiervoor een verzoek (request) aan de GMW uitgiftewebservice van de BRO. Het systeem van de BRO reageert op dit verzoek met een antwoord (response). Deze response bevat het resultaat van de verwerking van het request. Onderstaande afbeelding geeft dit schematisch weer.
Via het verzoek aan de GMW uitgiftewebservice kunnen met verschillende bewerkingen (operaties) verschillende gegevensverzamelingen worden opgevraagd. Elke operatie heeft een eigen request en een eigen response. De GMW uitgiftewebservice is daarmee het koppelvlak ofwel de Application Programming Interface (API) voor de uitgifte van GMW.
Communicatiestandaarden
De communicatie tussen het systeem van de data-afnemer en het BRO-systeem verloopt over een aantal lagen. In de volgende afbeelding is per laag aangegeven welke communicatiestandaard van toepassing is.
De keuzes van de communicatiestandaarden die zijn gebruikt bij de inrichting van het BRO-systeem zijn gebaseerd op de NORA (Nederlandse Overheid Referentie Architectuur; zie referentie [1]) en de Digikoppeling specificaties (zie referentie [2]).
Gegevens- en berichtenstandaarden
Omdat alle registratieobjecten van de BRO een relatie hebben met een locatie op het aardoppervlak, zijn de gegevens en berichten volgens de NEN3610 standaard (zie referentie [3]) gemodelleerd.
Logistieke standaard
Als logistieke standaard is voor de BRO het 2W-be profiel van Digikoppeling (zie referentie [2]) gehanteerd. Het koppelvlak is daarom gerealiseerd als een WUS-webservice waarvoor een aantal onderliggende standaarden zijn voorgeschreven, waaronder WSDL 1.0 en SOAP 1.1. In onderstaande afbeelding is dat schematisch weergegeven.
Het WSDL-document (Web Service Definition Language) beschrijft in technische termen de volledige API (Application Programming Interface) van de GMW uitgiftewebservice (zie hoofdstuk 3). Het beschrijft de operaties, inclusief request en response, maar ook het protocol (in dit geval SOAP) waarmee request en response worden uitgewisseld en de URL waarop de webservice benaderd kan worden.
SOAP (Simple Object Access Protocol) is een protocol voor het versturen van berichten. Een SOAP bericht bestaat uit een Envelope met daarin de Header en de Body. De Body bevat het eigenlijke XML-bericht dat uitgewisseld wordt. Ieder XML-bericht dat als onderdeel van een SOAP-bericht met het BRO-systeem uitgewisseld wordt, is beschreven in een aantal BRO XML-schema's (XSD). Deze structuur van een SOAP-bericht is in de volgende afbeelding samengevat.
De XML-schema's (XSD) volgen de gegevensdefinities van de catalogus nauwkeurig, maar soms leidt de toepassing van de NEN3610 standaard tot afwijkingen. Daar waar wordt afgeweken van de catalogus wordt dat expliciet toegelicht. Omdat de XSD is uitgewerkt in het Engels en de catalogus in het Nederlands is beschreven, is in bijlage A een vertaling van de berichtgegevens opgenomen.
Netwerkstandaard
Als netwerkstandaard wordt TCP/IP over het internet gehanteerd.
Toegangscontrole
Voordat een bericht terecht komt in een operatie van de applicatie laag, vindt er een toegangscontrole plaats binnen de logistieke laag. Dit gebeurt conform de Digikoppeling standaard (zie referentie [2]). De toegangscontrole bestaat uit versleuteling, identificatie, authenticatie en autorisatie. Nadere details staan beschreven in paragraaf 3.3.
API voor het opvragen van grondwatermonitoringput
Inleiding
In dit hoofdstuk wordt het koppelvlak in technische termen beschreven: de API (Application Programming Interface). Hierbij staan de twee functionaliteiten centraal: opvragen van kengegevens en opvragen van gegevens.
Elke functionaliteit heeft verschillende operaties. Deze worden beschreven in paragraaf 3.2. Paragraaf 3.3 beschrijft het patroon van verwerking van de operaties. De daaropvolgende paragrafen beschrijven de mapping van de berichten uit het uitgiftehandboek op requests en responses in de API. De inhoud van de requests/responses wordt beschreven in hoofdstuk 4 en verder.
Operaties
De API voor het opvragen van grondwatermonitoringput biedt de data-afnemer basale functionaliteit. Deze functionaliteit wordt gerealiseerd door twee operaties van de GMW uitgiftewebservice:
- dispatchCharacteristics voor het opvragen van de kengegevens van grondwatermonitoring-putten, die voldoen aan bepaalde kenmerken.
- dispatchData voor het opvragen van de gegevens van een bepaalde grondwatermonitoringput.
Onderstaande tabel bevat een samenvatting van de operaties en de bijbehorende requests:
Operatie | Request | Response |
---|---|---|
dispatchCharacteristics | dispatchCharacteristicsRequest | dispatchCharacteristicsResponse |
dispatchData | dispatchDataRequest | dispatchDataResponse |
Elke operatie heeft een eigen request en response, die de verschillende verzoeken en antwoorden realiseren die in het uitgiftehandboek beschreven zijn. In de volgende paragrafen wordt deze mapping kort toegelicht.
Verwerking
De verwerking van een uitgifteverzoek verloopt volgens een vast patroon. Een uitgifte operatie begint bij het doen van een uitgifteverzoek door middel van een request en eindigt met de response. Het patroon van de verwerking van een uitgifte operatie is hieronder weergegeven.
Stap 1: Doen van een verzoek tot levering
Het initiatief om een operatie te beginnen ligt bij het systeem van de data-afnemer. Dat roept de betreffende operatie van de uitgiftewebservice aan met het request als parameter.
Stap 2: Uitvoeren toegangscontrole
Dit bestaat uit identificatie, authenticatie, versleuteling en autorisatie.
Voor de beveiliging van de gegevensuitwisseling worden, conform de Digikoppeling specificaties, PKIoverheid services server certificaten gebruikt. Zowel de data-afnemer als de BRO beschikt over een dergelijk certificaat. In het certificaat is een identificatie op basis van 20 cijfers opgenomen die uniek is voor de houder van het certificaat.
Op het moment dat het systeem van een data-afnemer een operatie aanroept van de webservice van het BRO-systeem wisselen beide systemen eerst hun PKIoverheid services server certificaten uit. Aan de hand van de identificatie in de certificaten weten beide partijen met wie gegevens uitwisseling plaatsvindt. De techniek van het PKIoverheid services server certificaat garandeert dat de identificatie in het certificaat ook daadwerkelijk van die partij is (authenticatie).
Als authenticatie succesvol is verlopen, worden beide certificaten vervolgens gebruikt om al het dataverkeer tussen de systemen te versleutelen. Deze versleuteling maakt het voor derden onmogelijk om de data te lezen of te wijzigen.
Voor het opvragen van gegevens bij het BRO-systeem zijn rechten nodig. Aan de hand van de identificatie in het certificaat wordt bepaald of het systeem van de data-afnemer geautoriseerd is de operatie uit te voeren. Als hierbij een fout optreedt, ontvangt de data-afnemer een melding met een http-statuscode.
Als niet wordt voldaan aan de toegangscontrole, dan leidt dit tot:
- Een http '401 Unauthorized' foutmelding.
- Of een 'ssl error invalid certificate' foutmelding.
- Of een andere http-foutmelding met een http-statuscode anders dan '200 OK'.
Stap 3: Controleren verzoek
Als de toegangscontrole succesvol is verlopen, dan wordt het request technisch en inhoudelijk gecontroleerd.
De technische controle vindt plaats door het request te valideren op basis van de XSD. Als hierbij fouten gevonden worden, dan worden deze beschouwd als een technische fout van het systeem van de data-afnemer en teruggegeven als een parseFault.
De inhoudelijke controle vindt plaats door het request te controleren volgens de regels die zijn gedefinieerd in de catalogus of het uitgiftehandboek (business rules). Deze regels zijn niet in de XSD vastgelegd, maar worden gecontroleerd door de programmatuur van het BRO-systeem. Voorbeelden van controles zijn:
- Is een waarde niet groter dan de toegestane maximale waarde?
- Voldoet een waarde aan de toegestane waardes voor een gegeven?
Als hierbij fouten worden gevonden, dan worden deze beschouwd als een gebruiksfout en teruggegeven in een response bericht.
Stap 4: Verzamelen van gegevens
Als alle controles succesvol zijn verlopen dan verzamelt het BRO-systeem de opgevraagde gegevens en wordt het resultaat teruggegeven in een response bericht.
Berichten bij opvragen kengegevens
Bij het opvragen van kengegevens zijn drie berichten van toepassing: een verzoek tot levering, een bericht van afwijzing en een bericht van verzending.
Request: verzoek tot levering van kengegevens
Het verzoek tot levering van kengegevens wordt gerealiseerd door DispatchCharacteristicsRequest. Onderstaande figuur geeft de mapping weer van het verzoek tot levering in het uitgiftehandboek op het datatype DispatchCharacteristicsRequest in dit document (zie paragraaf 6.1), zoals gebruikt door de dispatchCharacteristics operatie (zie hoofdstuk 5).
Het (platte) element requestReference is een voor de data-afnemer unieke aanduiding van het request.
Het (gestructureerde) element criteria specificeert de afzonderlijke kenmerken waaraan de registratieobjecten moeten voldaan.
Zie paragraaf 6.1 voor nadere details.
Response: bericht van afwijzing
Het uitgiftehandboek benoemt als mogelijke reactie op een uitgifteverzoek een bericht van afwijzing. De webservice gebruikt hiervoor een response van het datatype DispatchCharacteristicsResponse.
Het handboek definieert een aantal berichten als antwoord op een uitgifteverzoek. In de SOAP webservice definities mag elk request slechts één response hebben. Daarom is het element responseType toegevoegd, om de betekenis van de response te duiden. In dit geval heeft het element responseType de vaste waarde rejection.
De waarde van het element requestReference is overgenomen uit het request. De waarde van de overige elementen wordt toegekend door de webservice. Het element rejectionReason bevat een waarde uit de tabel met gebruiksfouten; zie het uitgiftehandboek.
Als deze response wordt gegeven omdat er een of meer gebruiksfouten in het element criteria in het request zijn geconstateerd, dan is de waarde van rejectionReason "er zijn 1 of meer fouten geconstateerd in de kenmerkenverzameling" en volgen er na dit element een of meer criterionErrors.
Response: bericht van verzending
Het uitgiftehandboek benoemt als mogelijke reactie op een uitgifteverzoek een bericht van verzending. De webservice gebruikt hiervoor een response van het datatype DispatchCharacteristicsResponse.
Het handboek definieert een aantal berichten als antwoord op een uitgifteverzoek. In de SOAP webservice definities mag elk request slechts één response hebben. Daarom is het element responseType toegevoegd, om de betekenis van de response te duiden. In dit geval heeft het element responseType de vaste waarde dispatch.
De waarde van het element requestReference is overgenomen uit het request. De waarde van de overige elementen wordt toegekend door de webservice. Het tijdstip van verzending en het aantal uitgiftedocumenten staan in de elementen dispatchTime en numberOfDocuments. De kengegevens van de objecten, die voldoen aan de kenmerkenverzameling in het request, staan in de lijst met dispatchDocuments.
Berichten bij opvragen gegevens
Bij het opvragen van gegevens van een bepaald registratieobject zijn drie berichten van toepassing: een verzoek tot levering, een bericht van afwijzing en een bericht van verzending.
Request: verzoek tot levering
Onderstaande figuur geeft de mapping weer van het uitgifteverzoek in het uitgiftehandboek op het datatype DispatchDataRequest in dit document (zie paragraaf 6.2), zoals gebruikt door de dispatchData operatie (zie hoofdstuk 5).
Het element requestReference is een voor de data-afnemer unieke aanduiding van het request.
Het element broId is de unieke aanduiding van het registratieobject waarvan de gegevens worden opgevraagd.
Het element dataToBeDelivered geeft aan welke gegevens worden opgevraagd:
- actueel: alleen de actuele gegevens van het registratieobject worden opgevraagd.
- actueelHistorisch: de putgegevens bij inrichting en de volledige materiële geschiedenis worden opgevraagd.
Zie paragraaf 6.2 voor nadere details.
Response: bericht van afwijzing
Het uitgiftehandboek benoemt als mogelijke reactie op een uitgifteverzoek een bericht van afwijzing. De webservice gebruikt hiervoor een response van het datatype DispatchDataResponse.
Het handboek definieert een aantal berichten als antwoord op een uitgifteverzoek. In de SOAP webservice definities mag elk request slechts één response hebben. Daarom is het element responseType toegevoegd, om de betekenis van de response te duiden. In dit geval heeft het element responseType de vaste waarde rejection.
De waarde van het element requestReference is overgenomen uit het request. De waarde van de overige elementen wordt toegekend door de webservice. Het element rejectionReason bevat een waarde uit de tabel met gebruiksfouten; zie het uitgiftehandboek.
Response: bericht van verzending
Het uitgiftehandboek benoemt als mogelijke reactie op een uitgifteverzoek een bericht van verzending. De webservice gebruikt hiervoor een response van het datatype DispatchDataResponse.
Het handboek definieert een aantal berichten als antwoord op een uitgifteverzoek. In de SOAP webservice definities mag elk request slechts één response hebben. Daarom is het element responseType toegevoegd, om de betekenis van de response te duiden. In dit geval heeft het element responseType de vaste waarde dispatch.
De waarde van het element requestReference is overgenomen uit het request. De waarde van de overige elementen wordt toegekend door de webservice. Het tijdstip van verzending staat in het elementen dispatchTime.
Het element dispatchDocument bevat de gegevens over de opgevraagde grondwatermonitoringput.
Berichten bij technische fouten
Er zijn twee soorten berichten mogelijk bij een technische fout: een softwarefout of een systeemfout. In de volgende paragrafen wordt dit toegelicht.
Softwarefout
Als bij de technische controle van het request fouten in het verzoek en/of het brondocument worden gevonden (bijvoorbeeld het request is niet een welgevormd XML bericht of het request 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 melding in de vorm van een parseFault. Zie paragraaf 8.16 voor nadere details.
Systeemfouten
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. Zie paragraaf 8.24 voor nadere details.
Modellering van de interface
Dit hoofdstuk en de volgende hoofdstukken beschrijven in detail de interface van de GMW uitgiftewebservice aan de hand van een UML-model.
Packagestructuur
De interface beschrijving is onderverdeeld in verschillende packages. Deze paragraaf beschrijft de samenhang van de packages. Deze onderverdeling is ook van toepassing op de WSDL en XSD-bestanden. De hoofdstukken 5 en verder beschrijven elk een van de packages.
Onderstaande figuur geeft een overzicht van de packagestructuur.
De interfaces van de innamewebservice en de uitgiftewebservice zijn gemodelleerd in de isgmw en dsgmw packages.
Om de beheerbaarheid van de modellen en de software te vergroten, is gestreefd naar herbruikbaarheid van gemodelleerde gegevenstypes. Er is bijvoorbeeld veel overlap in de gegevens in het registratieverzoek en de objectgegevens bij uitgifte. Door deze overlappende gegevens onder te brengen in een gemeenschappelijk model voor inname en uitgifte is hergebruik mogelijk.
De gegevenstypes voor de inname- respectievelijk uitgiftewebservice zijn gemodelleerd in package isgmw-messages respectievelijk dsgmw-messages.
Herbruikbare gegevenstypes die specifiek zijn voor GMW zijn gemodelleerd in package gmwcommon.
Gegevenstypes die herbruikbaar zijn voor alle registratieobjecten van de BRO zijn gemodelleerd in brocommon.
GMW maakt verder op diverse manieren gebruik van concepten uit de GML-standaard van de OGC (ISO 19136). Aan het gebruik van deze standaard kleven enkele praktische bezwaren:
- De standaard is omvangrijk en slechts een klein deel wordt gebruikt in de BRO.
- De software om de standaard te ondersteunen is omvangrijk.
- Het gebruik van de standaard is niet eenvoudig.
Om deze bezwaren weg te nemen zijn in overleg met GeoNovum profielen opgesteld. Rand voor waarde bij het opstellen van de profielen was dat berichten die voldoen aan de profielen ook moeten voldoen aan de OGC-standaarden. Het GML-profiel is gemodelleerd in package gml-profile.
De volgende hoofdstukken beschrijven deze packages als gegevensmodel voor de GMW uitgiftewebservice. De packages isgmw en isgmw-messages worden buiten beschouwing gelaten, aangezien deze de innamewebservice betreffen.
Modelleerregels
In het UML-model worden de volgende stereotypes gebruikt om bepaalde functionaliteit te duiden.
CodeList
De catalogus maakt een onderscheid in beheerde en niet-beheerde enumeraties.
Het domein van een beheerde enumeratie is een uitbreidbare opsomming van toegestane waarden. Er wordt voor een beheerde enumeratie gekozen als niet alle waarden bekend zijn en uitbreiding mogelijk moet zijn (zie paragraaf 4.2.3 voor niet-beheerde enumeraties).
Het stereotype CodeList wordt in UML gebruikt om aan te geven dat een datatype een beheerde enumeratie is. In de XSD leidt dit tot een complexType wat een restrictie is van het gml complexType CodeWithAuthority (zie paragraaf 9.3).
DataType
Het stereotype DataType wordt in UML gebruikt om aan te geven dat een data type een niet-identificeerbaar, gestructureerd data type is. In de XSD leidt dit tot een complexType zonder een gml:id attribuut.
Enumeration
De catalogus maakt een onderscheid in beheerde en niet-beheerde enumeraties.
Het domein van een niet-beheerde enumeratie is een vaste, limitatieve opsomming van toegestane waarden. Er wordt voor een niet-beheerde enumeratie gekozen als alle waarden bekend zijn en uitbreiding niet nodig is (zie paragraaf 4.2.1 voor beheerde enumeraties).
Het stereotype Enumeration wordt in UML gebruikt om aan te geven dat een datatype een niet-beheerde enumeratie is. In de XSD leidt dit tot een simpleType als restrictie van het type string met een lijst van benoemde waarden. Voorbeeld:
< simpleType name= "IndicationYesNoEnumeration" > |
FeatureType
Het stereotype FeatureType wordt in UML gebruikt om aan te geven dat een klasse een identificeerbaar fenomeen in de werkelijkheid representeert, dat direct of indirect is geassocieerd met een locatie relatief ten opzichte van de aarde. In de XSD leidt dit tot een complexType dat is afgeleid van AbstractFeature uit het GML-profiel (zie paragraaf 9.1). In een XML-bericht heeft een object van deze klasse een gml:id attribuut.
Type
Het stereotype Type wordt in UML gebruikt om aan te geven dat een klasse een identificeerbaar object anders dan een FeatureType (zie paragraaf 4.2.4) representeert. In de XSD leidt dit tot een complexType dat is afgeleid van AbstractGML uit het GML-profiel (zie paragraaf 9.2). In een XML-bericht heeft een object van deze klasse een gml:id attribuut (zie paragraaf 9.1).
Union
Het stereotype Union wordt in UML gebruikt om aan te geven dat in een voorkomen precies een van de eigenschappen aanwezig is (polymorfisme). In de XSD wordt dit gerealiseerd als een choice.
Voidable
Het stereotype Voidable wordt in UML gebruikt om aan te geven dat een element aanwezig is maar geen waarde heeft. De modellering in UML en XSD en het gebruik in XML is afhankelijk van het datatype of domein van het betreffende attribuut:
- Codelijst, enumeratie
- De uitwerking is opgenomen in de lijst met toegestane waarden.
- In het UML-model is het stereotype Voidable niet opgenomen.
- In een XSD-bestand krijgt zo'n element niet het attribuut nilllable="true".
- Als in een XML-bericht het element wordt opgenomen, dan heeft het element een waarde uit de codelijst.
- Integer, double, string
- Het gegeven is aanwezig, maar heeft geen waarde.
- In het UML-model is het stereotype Voidable opgenomen voor deze situatie.
- In een XSD-bestand krijgt zo'n element het attribuut nilllable="true".
- In een XML-bericht wordt in voorkomende gevallen het element opgenomen, met een lege waarde en met het attributen xsi:nil="true".
- Er wordt geen onderscheid gemaakt in de waarden geen, onbekend, o.i.d.
- PartialDate
- Voor IMBRO/A-gegevens kan de situatie zich voordoen, dat er wel een waarde is, maar dat deze onbekend is bij de dataleverancier.
- Voor deze situatie voorziet het UML-model de optie voidReason met als vaste waarde onbekend.
- In een XSD-bestand krijgt zo'n element niet het attribuut nilllable="true".
- In een XML-bericht wordt het element opgenomen, met als kind-element voidReason met als waarde onbekend.
- Daarnaast kan (tot nu toe alleen bij IMBRO/A) sprake zijn van het feit, dat het gegeven überhaupt geen waarde heeft.
- In het UML-model wordt het stereotype Voidable opgenomen.
- In een XSD-bestand krijgt zo'n element het attribuut nilllable="true".
- In een XML-bericht wordt het element opgenomen met een lege waarde (er is geen kind-element voidReason aanwezig).
- Voor IMBRO/A-gegevens kan de situatie zich voordoen, dat er wel een waarde is, maar dat deze onbekend is bij de dataleverancier.
Package dsgmw – de uitgiftewebservice interface
De onderstaande figuur geeft de interface van de GMW uitgiftewebservice weer:
Onderstaande tabel bevat een samenvatting van operaties met bijbehorende datatype van het request en response:
Operatie | Request datatype | Response datatype |
---|---|---|
dispatchCharacteristics | DispatchCharacteristicsRequest | DispatchCharacteristicsResponse |
dispatchData | DispatchDataRequest | DispatchDataResponse |
Zie hoofdstuk 6 voor de request en response datatypes uit de package dsgmw-messages. Technische fouten (zie paragraaf 3.6) worden afgehandeld met een Fault bericht uit de SOAP-package.
De WSDL
De GMW uitgiftewebservice wordt technisch volledig beschreven door de WSDL van de GMW uitgiftewebservice (dsgmw.wsdl). De onderdelen van dit bestand worden hieronder kort toegelicht.
Types
Het onderdeel types in een WSDL definieert een XML-schema met daarbinnen XML-types en XML-elementen. Voor de GMW uitgiftewebservice zijn deze opgenomen in een afzonderlijke berichten XSD (dsgmw-messages.xsd) die in het types element wordt geïmporteerd.
Message
Het onderdeel message in een WSDL specificeert de berichten die per operatie worden uitgewisseld, uitgedrukt in parts. In de parts worden XML-elementen uit het types onderdeel van de WSDL gebruikt. Voor elke operatie wordt een request message en een response message gespecificeerd.
PortType
Het onderdeel portType in een WSDL specificeert de beschikbare functionaliteit van de webservice in de vorm van een of meer operaties (operations) met hun request en response messages en de parseFault.
Binding
Het onderdeel binding in een WSDL specificeert details over het transportmechanisme dat gebruikt wordt voor de webservice, waaronder het communicatieprotocol en het formaat van de input en de output. Digikoppeling schrijft als binding SOAP 1.1, 'document-literal wrapped' met als transport binding http voor. Voor elke operatie is de style 'document' en de input en output use 'literal'.
Service
Het onderdeel service in een WSDL beschrijft volgens welke portType en op welke URL de webservice gepubliceerd is.
De XSD-bestanden
In de XSD-bestanden worden alle XML types en elementen gedefinieerd die gebruikt worden in de WSDL voor de GMW uitgiftewebservice. In alle XSD-bestanden van de BRO wordt, conform de NEN3610 voorschriften, gebruik gemaakt van verschillende XSD-bestanden van de internationale W3C en OGC-standaarden.
Deze schema's worden in de navolgende hoofdstukken beschreven, elk schema in een eigen hoofdstuk. De opbouw van een element of datatype in een schema wordt afgebeeld in een diagram en waar relevant worden bijzonderheden in de tekst toegelicht. Voor de inhoudelijke betekenis van de afzonderlijke gegevens wordt verwezen naar het uitgiftehandboek en de catalogus van de GMW.
De XSD-bestanden zijn opgesteld in het Engels. De vertaling naar Nederlandse termen die gebruikt worden in het uitgiftehandboek en in de catalogus staat in Bijlage A (zie paragraaf 11.1).
Package dsgmw-messages – de berichten XSD
De package dsgmw-messages bevat datatypes voor de requests, responses, kenmerkenverzameling en uitgiftedocumenten voor de uitgifteverzoeken.
DispatchCharacteristicsRequest
Het DispatchCharacteristicsRequest bevat alleen een (plat) element requestReference en een (gestructureerd) element criteria.
Het element criteria van type CriteriaSet bevat een aantal optionele elementen voor de selectiecriteria. Het datatype CriteriaSet in de package dsgmw-messages is een specialisatie van CriteriaSet in de package brocommon (zie paragraaf 8.8), waaraan enkele GMW specifieke elementen worden toegevoegd.
Merk op dat CriteriaSet in de package brocommon een verplicht element area bevat (zie paragraaf 8.2). Alleen kengegevens van registratieobjecten, waarvan de gestandaardiseerde locatie (zie paragraaf 8.26) valt binnen het opgegeven gebied, worden uitgeleverd.
Zie het uitgiftehandboek voor nadere details over de betekenis en toepassing van de kenmerkenverzameling.
VerticalPositionRange
Het datatype verticalPositionRange bevat een begin en eindwaarde, beiden van het datatype VerticalPosition (zie paragraaf 7.7), zodat in de criteriaSet een voorwaarde kan worden opgenomen waarbij de verticale positie van een eigenschap van de put in het opgegeven bereik moet liggen.
Merk op dat beide elementen verplicht zijn.
DispatchDataRequest
Het DispatchDataRequest is een specialisatie van de abstract klasse DispatchData Request in de package brocommon (zie paragraaf 8.12), waaraan het een element dataToBeDelivered toevoegt.
Het element dataToBeDelivered geeft aan welke gegevens over het registratieobject worden opgevraagd.
DataToBeDelivered
Datatype met een niet-beheerde enumeratie (zie ook paragraaf 4.2.3) van toegestane waarden.
De betekenis van de waarden is als volgt:
- actueel: alleen de actuele gegevens van het registratieobject worden opgevraagd.
- actueelHistorisch: de putgegevens bij inrichting en de (volledige) materiële geschiedenis worden opgevraagd.
DispatchCharacteristicsResponse
Het DispatchCharacteristicsResponse is een specialisatie van DispatchResponse in de package brocommon (zie paragraaf 8.13), waaraan het een element numberOfDocuments en een optionele lijst met dispatchDocuments toevoegt.
Merk op dat DispatchResponse in brocommon naast de platte elementen ook een optionele lijst met criterionErrors bevat. Zie voor nadere informatie hierover en over welke elementen onder welke omstandigheden verwacht kunnen worden paragraaf 3.4.2.
De kardinaliteit van de lijst met dispatchDocuments is onbegrensd (maxOccurs="unbounded"), maar het BRO-systeem beperkt de lijst softwarematig tot maximaal 2000 uitgiftedocumenten.
DispatchCharacteristics
Het datatype DispatchCharacteristics bevat de kengegevens van een GMW-registratieobject.
Het datatype heeft het stereotype Union (zie ook paragraaf 4.2.6), waarmee wordt aangegeven dat het datatype polymorf is en dat voor ieder element een van de twee mogelijke alternatieven uitgegeven zal worden:
- met de naam BRO_DO en van het datatype DeregisteredObject (zie paragraaf 8.11) met de kengegevens van een grondwatermonitoringput dat voldoet aan de criteria in het request en dat uit registratie is genomen.
- met de naam GMW_C en van het datatype Characteristics (zie volgende paragraaf) met de kengegevens van een grondwatermonitoringput dat voldoet aan de criteria in het request en dat niet uit registratie is genomen.
In de XSD is dit gerealiseerd als een choice uit een lijst van elementen met paarsgewijs de naam en het datatype zoals aangegeven in bovenstaande figuur. Merk op dat de naam van het alternatief opgenomen moet worden in het element dispatchDocument; daarmee wordt bij een gegeven verzameling kengegevens eenduidig bekend welk alternatief gekozen is voordat de feitelijke elementen van dat alternatief aan bod komen. Voorbeeld:
<dispatchCharacteristicsResponse |
Characteristics
Het datatype DispatchCharacteristics bevat de kengegevens van een GMW-registratieobject dat niet uit registratie is genomen.
Het type Characteristics is een specialisatie van Characteristics in de package brocommon (zie paragraaf 8.3), waaraan het een aantal GMW specifieke elementen en gerelateerde datatypes toevoegt.
Het optionele element NITGCode wordt uitgeleverd indien het in het brondocument GMW_Construction is aangeleverd.
Het optionele elemen wellCode wordt altijd uitgeleverd. De waarde voor wellCode wordt tijdens inname door de BRO afgeleid op basis van de coördinaten in de deliveredLocation en indien aanwezig de aangeleverde NITGCode.
Merk op dat een aantal elementen het stereotype Voidable heeft (zie paragraaf 4.2.7).
DiameterRange
Het element DiameterRange geeft het interval aan waarbinnen de diameters van de bovenkant van de monitoringbuizen liggen.
Het datatype van de kleinste en grootste diameter is een meetwaarde van het type Diameter (zie paragraaf 7.7).
Merk op dat beide elementen het stereotype Voidable hebben (zie paragraaf 4.2.7).
ScreenPositionRange
Het element ScreenPositionRange geeft het interval aan waarbinnen de verticale posities van de filters liggen.
Het datatype van de ondiepste en diepste verticale positie is een meetwaarde van het type VerticalPosition (zie paragraaf 7.7).
StatusOverview
Het element StatusOverview geeft aan welke statussen het registratieobject heeft doorlopen.
De kardinaliteit van het element tubeStatus is gemodelleerd als vier, omdat Tubestatus als beheerde enumeratie (zie paragraaf 4.2.1) vier toegestane waarden heeft.
DispatchDataResponse
Het DispatchDataResponse is een specialisatie van DispatchResponse in de package brocommon (zie paragraaf 8.13), waaraan het een element dispatchDocument toevoegt.
Merk op dat DispatchResponse in brocommon naast de platte elementen ook een optionele lijst met criterionErrors bevat. Zie voor nadere informatie hierover en over welke elementen onder welke omstandigheden verwacht kunnen worden paragraaf 3.5.2.
DispatchData
Het datatype DispatchData bevat de gegevens van een GMW-registratieobject.
DispatchData heeft het stereotype Union (zie ook paragraaf 4.2.6), waarmee wordt aangegeven dat het datatype polymorf is. Onderstaande tabel geeft aan onder welke omstandigheden welk alternatief zal worden uitgegeven:
Object is uit registratie genomen | Opgevraagde gegevens | Data-afnemer is bronhouder of dataleverancier | Alternatief |
---|---|---|---|
Ja | Doet er niet toe | Doet er niet toe | BRO_DO |
Nee | Actueel | Ja | GMW_PO |
Nee | Actueel | Nee | GMW_PO_DP |
Nee | ActueelHistorisch | Ja | GMW_PPO |
Nee | ActueelHistorisch | Nee | GMW_PPO_DP |
De eerste variant is van het type DeregisteredObject in de package brocommon (zie paragraaf 8.11), de overige varianten zijn van het type GroundwaterMonitoringWell.
ElectrodeData
Het element electrodeData bevat de gegevens over een elektrode, in een geo-Ohmkabel bevestigd aan een buis, die ten gevolge van een tussentijdse gebeurtenis gewijzigd zijn. De electrodeData als onderdeel van de eventData worden alleen uitgegeven als in het dispatchDataRequest het element dataToBeDelivered de waarde actueelHistorisch heeft.
EventData
Het element eventData bevat de putgegevens die ten gevolge van de gebeurtenis gewijzigd zijn, dat wil zeggen wijzigingen in de put zelf (wellData), wijzigingen in monitoringbuizen (tubeData) en/of wijzigingen in elektrodes in de geo-Ohmkabel bevestigd aan een monitoringbuis (electrodeData). De eventData worden alleen uitgegeven als in het dispatchDataRequest het element dataToBeDelivered de waarde actueelHistorisch heeft.
EventName
Beheerde enumeratie voor het element eventName in een intermediateEvent van de wellHistory (zie paragraaf 6.4.12).
Zie paragraaf 4.2.1 voor nadere informatie over het stereotype CodeList. Zie paragraaf 9.3 voor de modellering in XSD en de toepassing in een XML bericht.
GeoOhmCable
Het datatype GeoOhmCable bevat de gegevens van een geo-Ohmkabel die bevestigd is aan een buis, bijvoorbeeld ten behoeve van het bepalen van het zoutgehalte.
Een element GeoOhmCable bevat een verplicht element cableNumber, een optioneel element cableInUse en een lijst met minstens 2 electrodes.
Het element cableInUse wordt niet aangeleverd door de dataleverancier, tijdens inname vastgelegd door de BRO.
GroundwaterMonitoringWell
Het datatype GroundwaterMonitoringWell bevat de gegevens van een GMW-registratieobject dat niet uit registratie is genomen.
Het datatype GroundwaterMonitoringWell heeft het stereotype FeatureType, wat aangeeft dat een object van dit datatype een fenomeen in de werkelijkheid representeert, dat direct of indirect is geassocieerd met een locatie relatief ten opzichte van de aarde (zie paragraaf 4.2.4).
Het datatype GroundwaterMonitoringWell is een specialisatie van Registration Object in de package brocommon. De attributen die specifiek zijn voor de uitgifte van een GMW-registratieobject zijn toegevoegd. Ook zijn associaties naar StandardizedLocation en RegistrationHistory uit package brocommon toegevoegd en GMW specifieke associaties naar DeliveredLocation, DeliveredVerticalPosition, WellHistory en MonitoringTube.
Het optionele element NITGCode wordt uitgeleverd indien het in het brondocument GMW_Construction is aangeleverd.
Het optionele elemen wellCode wordt altijd uitgeleverd. De innamewebservice van de BRO bepaalt een waarde voor de wellCode op basis van de coördinaten in de deliveredLocation en indien aanwezig de aangeleverde NITGCode.
De informatie in RegistrationHistory, StandardizedLocation en WellHistory worden niet aangeleverd door de dataleverancier, maar tijdens inname vastgelegd door de BRO.
De elementen maintenanceResponsibleParty, objectIdAccountableParty en delivery Responsible Party worden alleen uitgegeven als de data-afnemer tevens bronhouder en/of dataleverancier is van het opgevraagde object.
IntermediateEvent
Het datatype IntermediateEvent bevat de geregistreerde gegevens over een tussentijdse gebeurtenis die in de werkelijkheid heeft plaats gevonden, na de constructie maar voor het opruimen van de grondwatermonitoringput.
Het elementen eventName bevat de naam van de gebeurtenis (zie de catalogus).
Het element eventDate bevat de datum waarop de gebeurtenis heeft plaats gevonden (zie paragraaf 8.17 voor een toelichting over het datatype partialDate).
Het element eventData bevat de putgegevens die ten gevolge van de gebeurtenis gewijzigd zijn. Dit element wordt alleen uitgegeven als in het dispatchDataRequest het element dataToBeDelivered de waarde actueelHistorisch heeft.
MonitoringTube
Het datatype monitoringTube bevat de gegevens over een monitoringbuis.
De elementen tubePartInserted en tubeInUse worden niet aangeleverd door de dataleverancier, maar tijdens inname vastgelegd door de BRO.
Merk op dat het element tubeTopdiameter het stereotype Voidable heeft (zie paragraaf 4.2.7).
Screen
Het datatype Screen bevat de gegevens van een filter van een monitoringbuis, het deel dat is voorzien van openingen waardoor het grondwater kan binnenstromen.
Een element Screen bevat twee verplichte elementen en twee optionele elementen.
De elementen screenTopPosition en screenBottomPosition wordt niet aangeleverd door de dataleverancier, maar tijdens inname vastgelegd door de BRO.
TubeData
Het element tubeData bevat de gegevens over een monitoringbuis die ten gevolge van een tussentijdse gebeurtenis gewijzigd zijn. De tubeData als onderdeel van de eventData worden alleen uitgegeven als in het dispatchDataRequest het element dataToBeDelivered de waarde actueelHistorisch heeft.
WellData
Het element wellData bevat de gegevens over de put zelf die ten gevolge van een tussentijdse gebeurtenis gewijzigd zijn. De wellData als onderdeel van de eventData worden alleen uitgegeven als in het dispatchDataRequest het element dataToBeDelivered de waarde actueelHistorisch heeft.
WellHistory
Het datatype WellHistory bevat gegevens over de materiële geschiedenis van een GMW-registratieobject.
Het datatype WellHistory bevat twee platte elementen: de datum waarop de put is geconstrueerd en de datum waarop de put is opgeruimd (indien van toepassing). Beide datums zijn van het datatype PartialDate (zie paragraaf 8.17), omdat bij gegevens aangeleverd onder het IMBRO/A-regime deze datums in het geheel onbekend of niet volledig bekend kunnen zijn.
Package gmwcommon
De package gmwcommon bevat de entiteiten en relaties, die gemeenschappelijk zijn voor zowel de GMW innamewebservice als de GMW uitgiftewebservice.
Codelijsten
De package gmwcommon bevat een aantal codelijsten. Zie paragraaf 11.1.4 voor een overzicht. In de XSD zijn deze gerealiseerd als een complexType wat een restrictie is van het GML complexType CodeWithAuthority (zie paragraaf 9.3). Voorbeeld:
DeliveredLocation
Het datatype DeliveredLocation bevat de gegevens, zoals die zijn aangeleverd door de data-leverancier aan de basisregistratie ondergrond, over de plaats op het aardoppervlak waar de grondwatermonitoringput zich bevindt.
Het datatype DeliveredLocation bevat een element location van het GML-datatype Point. Zie paragraaf 9.7 voor nadere details over het datatype GML:Point. Voorbeeld van het element deliveredLocation in een XML-bestand:
<deliveredLocation> |
DeliveredVerticalPosition
Het datatype DeliveredVerticalPosition bevat de gegevens over de verticale positie van de grondwatermonitoringput. Het element groundLevelPosition heeft het GML-stereotype Voidable datatype Point. Zie onderstaande figuur.
Electrode
Het datatype Electrode bevat de gegevens over een geleider die in het stroomcircuit ter bepaling van de elektrische geleidbaarheid gebruikt wordt om contact te maken met het grondwater.
InsertedPart
Het datatype InsertedPart bevat de gegevens over de stijgbuis die in de monitoringbuis is geplaatst en de functie van het oorspronkelijke stijgbuisdeel overneemt.
MaterialUsed
Het datatype MaterialUsed bevat de gegevens over de toegepaste materialen die gebruikt zijn voor de monitoringbuis en de vulling van de ruimte in de put rond de buis.
Meetwaarden
De package gmwcommon bevat een aantal meetwaarden, dat wil zeggen datatypes die de waarde uitdrukken in een zekere eenheid. In de catalogus zijn deze attributen gespecificeerd met Getalswaarde.
In de koppelvlakdefinitie is ervoor gekozen om deze types naar fysische grootheid te modelleren als extensie van het GML-datatype Measure en met het stereotype DataType. Dit heeft als voordeel, dat er minder types nodig zijn en dat de meeteenheid expliciet kan worden vastgelegd in het attribuut uom (unit of measure). Zie bovenstaande figuur. Het formaat in de constraint syntax wordt niet door de XSD afgedwongen, maar wordt door de webservice softwarematig gecontroleerd.
Zie paragraaf 4.2.2 voor nadere details over het GML-datatype stereotype Datatype. Zie paragraaf 9.6 voor nadere details over het GML-datatype Measure en de realisatie in de XSD.
Voorbeeld van een element met een zo'n datatype in een GML bericht:
<offset uom= "m" >3.300</offset> |
PlainTubePart
Het datatype PlainTubePart bevat de gegevens over het stijgbuisdeel, het deel van de monitoringbuis boven het filter dat dient om het grondwater op te vangen dat via het filter binnenstroomt.
SedimentSump
Het datatype SedimentSump bevat de gegevens over de zandvang, het deel van de monitoringbuis dat dient om het sediment op te vangen dat via het filter de buis in komt.
Package brocommon
De package brocommon bevat de entiteiten en relaties, die gemeenschappelijk zijn voor alle registratieobjecten.
AbortReason
Zie ParseFault in paragraaf 8.16.
Area
Het datatype Area geeft de begrenzing aan van een geografisch gebied aan het aardoppervlak.
Het datatype heeft een stereotype Union (zie paragraaf 4.2.6) wat aangeeft dat óf een enclosingCircle (zie paragraaf 8.5) óf een boundingBox (zie paragraaf 9.5) moet worden opgenomen.
Characteristics
Het datatype Characteristics bevat de registratieobject onafhankelijke kengegevens van een registratieobject dat niet uit registratie is genomen.
Het datatype DispatchCharacteristics bevat naast enkele platte elementen ook twee gestructureerde elementen deliveredLocation en standardizedLocation, beiden van het datatype GML:Point (zie paragraaf 9.7). Het element standardizedLocation wordt niet aangeleverd door de dataleverancier, maar tijdens inname vastgelegd door de BRO.
ChamberOfCommerceNumber
Het datatype ChamberOfCommerceNumber bevat het Kamer van Koophandel nummer.
In de XSD is dit een extensie van het type string. Merk op dat het formaat in de constraint Value niet door de XSD wordt afgedwongen, maar dat dit softwarematig door het BRO-systeem wordt gecontroleerd.
Circle
Het datatype Circle geeft een cirkelvormige begrenzing aan van een gebied aan het aardoppervlak.
De cirkel wordt gedefinieerd door het middelpunt (element center met datatype doublelist; zie paragraaf 9.4) en de straal (element radius met datatype Radius, een lengtemaat in kilometers; zie paragraaf 9.6). Het attribuut srsName geeft aan in welk coördinatensysteem het middelpunt is uitgedrukt (zie paragraaf 9.7).
CoordinateTransformation
Het datatype CoordinateTransformation is een beheerde enumeratie en het heeft daardoor een stereotype CodeList (zie paragraaf 4.2.1). De waarde geeft aan welke transformatiemethode is toegepast. Merk op dat de toegestane waarde anders kan zijn voor IMBRO dan voor IMBRO/A.
CorrectionRequest
Het datatype CorrectionRequest bevat de gemeenschappelijke gegevens voor het samenstellen van een request om de gegevens voor een bepaald registratieobject te corrigeren.
Het element requestReference is een voor de data-afnemer unieke aanduiding van het request.
Het element deliveryAccountableParty bevat het kamer van koophandel nummer van de bronhouder. Dit element is verplicht als de dataleverancier niet de bronhouder is.
Het element broId is de unieke aanduiding van het registratieobject waarvoor gegevens worden gecorrigeerd.
Zie de catalogus voor aanvullende informatie over de andere elementen.
CriteriaSet
Het datatype CriteriaSet is een abstract datatype ten behoeve van het samenstellen van DispatchCharacteristicsRequest.
Het abstracte datatype CriteriaSet definieert een aantal optionele elementen voor de kenmerkenverzameling en één verplicht element area (zie paragraaf 8.2). Alleen kengegevens van registratieobjecten, waarvan de gestandaardiseerde locatie (zie paragraaf 8.26) valt binnen het opgegeven gebied worden uitgeleverd.
CriterionError
Het datatype CriterionError bevat als onderdeel van een DispatchResponse (zie paragraaf 8.13) één foutmelding met betrekking tot een geconstateerde fout in de kenmerkenverzameling van een uitgifteverzoek, bestaande uit een volgnummer en een omschrijving.
DatePeriod
Het datatype DatePeriod bevat een begin en eindwaarde, beiden van het standaard datatype Date, zodat in de CriteriaSet een periode kan worden opgenomen waarbinnen een datum moet liggen.
Merk op dat beide elementen verplicht zijn en niet een lege waarde mogen hebben.
DeregisteredObject
Het datatype DeregisteredObject bevat de gegevens over een registratieobject dat uit registratie is genomen.
DispatchDataRequest
Het datatype DispatchDataRequest bevat de gemeenschappelijke gegevens voor het samenstellen van een request om de gegevens over een bepaald registratieobject op te vragen.
Het element requestReference is een voor de afnemer unieke aanduiding van het request.
Het element broId is de unieke aanduiding van het registratieobject waarvan de gegevens worden opgevraagd.
DispatchResponse
Het datatype DispatchResponse is een abstract datatype voor het samenstellen van een response als reactie op een uitgifteverzoek (dispatch request).
Het datatype DispatchResponse is een generiek response. Het definieert een aantal platte elementen, sommigen verplicht en anderen optioneel, inclusief een optionele lijst met foutmeldingen (zie paragraaf 8.9). Zie hoofdstuk 3 voor een beschrijving van welke velden onder welke omstandigheden gevuld zullen worden.
Enumeraties
De catalogus maakt een onderscheid in beheerde en niet-beheerde enumeraties. Het stereotype Enumeration wordt in UML gebruikt om aan te geven dat een datatype een niet-beheerde enumeratie is (zie paragraaf 4.2.3).
De package brocommon definieert zes datatypes met als domein een enumeratie van toegestane waarden.
In de XSD zijn deze gerealiseerd als een simpleType als restrictie van het standaard XSD type string. Voorbeeld:
< simpleType name= "IndicationYesNoEnumeration" > |
Voorbeeld van een element in een XML bericht:
<deregistered>nee</ deregistered > |
IntakeResponse
Als het BRO-systeem na de toegangscontrole het request kan verwerken zonder dat er fouten worden geconstateerd in het request en/of het sourceDocument en zonder dat er een onverwachte fout optreedt in het BRO-systeem, dan reageert het BRO-systeem met een functionele response. Deze functionele response is van het datatype IntakeResponse.
Het element responseType geeft aan of het request succesvol kon worden verwerkt (waarde completion bij een RegistrationRequest; waarde acceptance bij een CorrectionRequest) of dat de verwerking om functionele redenen niet succesvol is (waarde rejection).
De waarde voor het element requestReference wordt overgenomen uit het request, zodat de zendende partij weet voor welk request dit een response is.
De waarde voor het element transactionId wordt toegekend door het transactieregister. De zendende partij kan dit gegeven gebruiken in de (mondelinge) communicatie met de BRO Servicedesk, zodat deze de transactie kan terugvinden in het transactieregister.
Het element broId bevat de identificatie van het object in de BRO. Dit element is afwezig als de response een reactie is op een RegistrationRequest en als het element responseType een waarde rejection heeft.
Het element ObjectIdAccountableParty is alleen aanwezig als de response een reactie is op een RegistrationRequest en als het element responseType een waarde rejection heeft. De waarde wordt overgenomen uit het RegistrationRequest, zodat de zendende partij weet wat zijn identificatie is van het geweigerde registratieobject.
Van de elementen acceptanceTime, completionTime en rejectionTime zal steeds één daarvan aanwezig zijn, afhankelijk van de waarde voor het element responseType. In deze elementen staat het (datum en) tijdstip waarop het request is geaccepteerd, het request is verwerkt of het request is afgewezen.
Als het request is afgewezen, dan staat in element rejectionReason de reden. Als de reden is dat er een of meer gebruiksfouten in het sourceDocument zijn geconstateerd, dan is de waarde van rejectionReason "er zijn 1 of meer fouten geconstateerd in het brondocument" en bevat IntakeResponse een lijst sourceDocumentErrors, waarbij iedere sourceDocumentError bestaat uit een sequenceNumber (voor het sorteren van de gebruiksfout) en een specification (een tekstuele beschrijving van de gebruiksfout).
ParseFault
Als het BRO-systeem, na de toegangscontrole, fouten constateert in het request en/of het sourceDocument (bijvoorbeeld het request is niet een welgevormd XML-bericht of het request voldoet niet aan de schemavalidatie), dan worden deze geduid als een softwarefout in het systeem van de dataleverancier. Het BRO-systeem reageert dan niet met een IntakeResponse, maar met een SOAP:Fault, waarbij het element detail van het datatype ParseFaultDetail is. Het datatype ParseFaultDetail bevat één element parseFault van het datatype ParseFault.
De elementen van SOAP:Fault hebben de volgende betekenis:
SOAP:Fault | Inhoud |
---|---|
Faultcode | Vaste waarde "soap:Client" |
Faultstring | Vaste waarde "Het verzoek voldoet niet aan het schema" |
Detail | ParseFaultDetail |
Het datatype ParseFault bevat drie platte elementen en een lijst met abortReasons. De lijst abortReasons bestaat uit minimaal 1 en maximaal 99 voorkomens van het complex type AbortReason.
De elementen van ParseFault en AbortReason hebben de volgende betekenis:
ParseFault | Inhoud |
---|---|
RequestReference | Waarde overgenomen uit request (dit element is optioneel omdat de softwarefout geconstateerd kan worden voordat het request is gelezen). |
TransactionId | Waarde toegekend door transactieregister (dit element is optioneel omdat de softwarefout geconstateerd kan worden voordat een transactie is aangemaakt). |
AbortTime | Tijdstip, toegekend door webservice, waarop de fout is opgetreden. |
AbortReason
|
|
PartialDate
Het datatype PartialDate ondersteunt een datum met een aantal mogelijke nauwkeurigheden.
PartialDate heeft het stereotype Union (zie paragraaf 4.2.6), waarmee wordt aangegeven dat het element met dit datatype polymorf is en dat bij een voorkomen precies een van de alternatieven gekozen moet worden. De beschikbare alternatieven zijn:
- date: Volledig datum tot op de dag nauwkeurig (formaat "YYYY-MM-DD")
- yearMonth: Onvolledige datum tot op de maand nauwkeurig (formaat "YYYY-MM")
- year: Onvolledige datum tot op het jaar nauwkeurig (formaat "YYYY")
- voidReason: Geen datum bekend (vaste waarde onbekend)
Gegevens met dit datatype, die worden aangeleverd onder het kwaliteitsregime IMBRO, mogen alleen het alternatief date gebruiken. Onder het kwaliteitsregime IMBRO/A mogen alle vier alternatieven gebruikt worden.
De datatypes Date, gYearMonth en gYear zijn standaard XSD-datatypes, met een bereik conform ISO 8601. Deze datatypes mogen optioneel worden aangevuld met een tijdzone (Z voor UTC; +01:00 voor wintertijd in Nederland; +02:00 voor zomertijd in Nederland).
Voorbeelden van een aantal keren hetzelfde element in een XML bericht met als waarde steeds een andere variant van het type partialDate:
<researchReportDate> |
Radius
Het datatype Radius is voor het uitdrukken van een straal in kilometers. Zie paragraaf 9.6 voor nadere details over het GML-datatype Measure en de realisatie in de XSD.
Voorbeeld van zo'n element in een GML bericht, waarbij de straal 8,5 kilometer is:
<radius uom= "km" >8.5</radius> |
RegistrationHistory
Het datatype RegistrationHistory bevat gegevens die de geschiedenis van het object in de registratie markeren.
RegistrationObject
Het abstract datatype RegistrationObject bevat de algemene gegevens van een registratieobject dat niet uit registratie is genomen.
Het datatype RegistrationObject heeft het stereotype FeatureType (zie paragraaf 4.2.4), wat aangeeft dat een object van dit datatype een fenomeen in de werkelijkheid representeert, dat direct of indirect is geassocieerd met een locatie relatief ten opzichte van de aarde en dat een element van dit datatype een verplicht attribuut gml:id heeft.
Het datatype RegistrationObject definieert een aantal platte elementen en twee gestructureerde elementen: RegistrationHistory en StandardizedLocation.
De informatie in RegistrationHistory en StandardizedLocation worden niet aangeleverd door de dataleverancier, maar tijdens inname vastgelegd door de BRO.
De elementen objectIdAccountableParty en delivery Responsible Party worden alleen uitgegeven als de data-afnemer tevens bronhouder en/of dataleverancier is van het registratieobject. Voor andere data-afnemers worden deze attributen weg gelaten.
RegistrationObjectCode
Het datatype RegistrationObjectCode is een restrictie van het standaard datatype string. De eerste drie posities zijn de afkorting van type registratieobject, gevolgd door een twaalf cijferig, registratieobject afhankelijk volgnummer.
RegistrationRequest
Het datatype RegistrationRequest bevat de gemeenschappelijke gegevens voor het samenstellen van een request om de gegevens voor een bepaald registratieobject te registreren.
Het element requestReference is een voor de data-afnemer unieke aanduiding van het request.
Het element deliveryAccountableParty bevat het kamer van koophandel nummer van de bronhouder. Dit element is verplicht als de dataleverancier niet de bronhouder is.
Het element broId is de unieke aanduiding van het registratieobject waarvoor gegevens worden geregistreerd. Dit element is niet toegestaan bij de initiële registratie van de gegevens van een registratieobject.
Zie de catalogus voor aanvullende informatie over de andere elementen.
RegistrationStatus
Het datatype RegistrationStatus is een beheerde enumeratie en het heeft daardoor een stereotype CodeList (zie paragraaf 4.2.1). Zie de catalogus voor het domein en de betekenis van de waarden.
SOAP Fault
Als tijdens de uitvoering van een operatie er een onverwachte fout optreedt in het BRO-systeem, dan reageert het BRO-systeem niet met een IntakeResponse, maar met een SOAP:Fault.
Alhoewel dit een standaard niet-gemodelleerde fout is uit de SOAP namespace, wordt dit hier toch beschreven als tegenhanger van de ParseFault, wat gebruikt wordt in geval van een softwarefout.
De elementen van SOAP:Fault hebben de volgende betekenis:
SOAP:Fault | Inhoud |
---|---|
Faultcode | Vaste waarde "soap:Server" |
Faultstring | Vaste waarde "Er is een fout in het BRO-systeem geconstateerd" |
Detail | Optioneel complex element (zie volgende tabel) |
Binnen het element detail zal het BRO-systeem de volgende elementen opnemen:
Element | Inhoud |
---|---|
RequestReference | Waarde overgenomen uit request (dit element is optioneel omdat de softwarefout geconstateerd kan worden voordat het request is gelezen). |
TransactionId | Waarde toegekend door transactieregister (dit element is optioneel omdat de softwarefout geconstateerd kan worden voordat een transactie is aangemaakt). |
AbortTime | Tijdstip, toegekend door webservice, waarop de fout is opgetreden. |
Er wordt summiere informatie teruggegeven dat de fout is opgetreden en dat het verzoek niet is verwerkt. Deze fouten kunnen niet door de data-afnemer worden opgelost. Neem contact op met de BRO Servicedesk voor de verdere afhandeling van dit type fouten.
De requestReference is opgenomen in de foutmelding, zodat de zendende partij weet bij welk verzonden bericht de systeemfout is opgetreden, ook als deze foutmelding buiten de context van de synchrone request – response interactie geanalyseerd wordt. Dit kan behulpzaam zijn bij de analyse en reproductie het probleem.
De transactionId is opgenomen in de foutmelding, zodat de zendende partij dit kan doorgeven aan de BRO-servicedesk. De BRO-servicedesk kan daarmee de mislukte transactie terugvinden in het transactieregister, waarin aanvullende informatie (zoals een deel van de stacktrace) is opgeslagen.
De abortTime is opgenomen in de foutmelding, zodat de zendende partij, in het bijzonder in het geval de beide voorgaande gegevens niet bekend zijn, in ieder geval dit gegeven kan doorgeven aan de BRO-servicedesk, waarmee een technisch BRO-medewerker gericht kan zoeken in de logfiles.
SourceDocumentError
Zie IntakeResponse in paragraaf 8.15.
StandardizedLocation
Het datatype StandardizedLocation bevat een element location van het GML-datatype Point (zie paragraaf 9.7) en een element CoordinateTransformation met toegestane waarden uit een codelijst (zie paragraaf 8.6).
De StandardizedLocation maakt het mogelijk alle gegevens in de registratie ondergrond in een en hetzelfde referentiestelsel te ontsluiten.
Het coördinatensysteem van het element location binnen StandardizedLocation is altijd ETRS89, oftewel de waarde van attribuut srsName van element location is urn:ogc:def:crs:EPSG::4258.
Het BRO-systeem berekent tijdens inname de gestandaardiseerde locatie op basis van de aangeleverde locatie. Het element CoordinateTransformation geeft aan welke transformatiemethode daarbij is toegepast.
Voorbeeld van het element location binnen StandardizedLocation in een XML-bestand:
<location gml:id= "BRO_0001" srsName= "urn:ogc:def:crs:EPSG::4258" > |
Package gml-profile
De package gml-profile bevat het GML-profiel, oftewel die concepten uit de GML-standaard van de OGC die gebruikt worden in de BRO.
AbstractFeature
Een aantal gegevens in de BRO is conform NEN3610 geclassificeerd met een FeatureType stereotype. Dit heeft tot gevolg dat hun XML-schema-type is afgeleid van AbstractFeature.
Hierdoor overerft een element van dit datatype het attribuut gml:id met als datatype het XML-standaard type ID. Zie paragraaf 9.2.
AbstractGML
Het datatype AbstractGML definieert een verplicht attribuut id.
Dit XML-attribuut voorziet in het gebruik als referentie binnen één XML-bericht. Het datatype van het attribuut id is het XML-standaard type ID, zodat het uniek is binnen het XML-document waarin het voorkomt. In de BRO wordt deze identificatie niet gebruikt en daarom ook niet opgeslagen. Bij uitgifte wordt de identificatie gegenereerd. Een element kan op ander moment een andere waarde krijgen.
<registrationObject gml:id= "ro-4774" > |
CodeWithAuthority
Het complexType CodeWithAuthority wordt gebruikt voor beheerde enumeraties c.q. codelijsten (zie paragraaf 4.2.1).
Het complexType CodeWithAuthority is een restrictie van het type string, waaraan het een attribuut codespace van het type anyURI toevoegt. Deze codespace bevat de naam van de codelijst. Elke codelijst in de BRO heeft daarom een eigen codespace die in de XSD als vaste waarde is opgenomen. Zie onderstaande figuur.
In een XSD leidt dit tot een restrictie van het complexType CodeWithAuthority. Voorbeeld van een codelijst in XSD:
<complexType name = "DeliveryContext" > |
Voorbeeld van een element, met als datatype een codelijst, in een XML bericht. Zo'n element heeft een attribuut codeSpace, waarvan de waarde aangeeft in welke tabel de toegestane waarden zijn vastgelegd, en als waarde een van de waarden uit die tabel. Voorbeeld:
<deliveryContext codeSpace= "urn:bro:GMW:DeliveryContext" >publiekeTaak</deliveryContext> |
Merk op dat in de catalogus en in het UML-diagram het domein expliciet wordt benoemd. Het domein is niet opgenomen in het XSD-bestand, omdat een CodeWithAuthority wordt gebruikt voor een beheerde enumeratie zodat een wijziging in het domein zal leiden tot een wijziging in het XSD-bestand als dat wel het geval zou zijn. Daarom wordt het domein niet afgedwongen door het XSD-bestand en valideert het BRO-systeem de gebruikte waarde softwarematig via een database tabel.
Merk op dat bij een codelijst de toegestane waarden anders kunnen zijn voor IMBRO dan voor IMBRO/A. Zie de catalogus voor nadere details.
Doublelist
Het datatype doublelist bevat een reeks floating point getallen als waarde voor een element of een attribuut.
De getallen worden gescheiden door een spatie. De decimalen worden gescheiden van de eenheden door een punt.
Envelope
Het datatype Envelope geeft een rechthoekige begrenzing aan van een gebied aan het aardoppervlak.
Het datatype Envelope is een extensie van AbstractGeometricPrimitive, waaraan het twee elementen toevoegt.
De rechthoek wordt gedefinieerd door het onderhoek (element lowerCorner met als coördinatenpaar de minimale waarden voor de twee dimensies binnen de rechthoek) en de bovenhoek (element upperCorner met als coördinatenpaar de minimale waarden voor de twee dimensies binnen de rechthoek). Beide locaties zijn van het datatype doublelist (zie paragraaf 9.4).
Zie paragraaf 9.7 voor een toelichting op de attributen die geërfd worden van AbstractGeometricPrimitive.
Voorbeeld een element van het datatype Envelope, zijnde een vierkant van 10 * 10 km in RD-coördinaten:
<boundingBox gml:id= "BRO_0001" srsName= "urn:ogc:def:crs:EPSG::28992" > |
Measure
Het datatype Measure is een extensie van het standaard XSD type double, waaraan het een verplicht attribuut uom (unit of measure) toevoegt:
In de koppelvlakdefinitie is ervoor gekozen om deze types naar fysische grootheid te modelleren. Dit heeft als voordeel, dat er minder types nodig zijn en dat de meeteenheid expliciet kan worden vastgelegd in het attribuut uom.
NB: het attribuut uom is verplicht, ook als de elementwaarde leeg is.
Point
Point is een datatype voor elementen met een puntlocatie aan het aardoppervlak. Het definieert een element pos en drie attributen id, srsName en srsDimension.
Het attribuut id voorziet in een referentie voor het XML-element dat een GML-object vertegenwoordigt. Het gebruik ervan is verplicht voor alle GML-objecten. Het datatype is het standaard XML-type ID, zodat het uniek is binnen het XML-document waarin het voorkomt.
Het attribuut srsName bevat de URI van het coördinatensysteem waarin de locatie van het punt wordt uitgedrukt. Onderstaande tabel geeft de toegestane waarden binnen GMW.
Naam | Betekenis | Waarde voor srsName |
---|---|---|
ETRS89 | European Terrestrial Reference System 1989 | urn:ogc:def:crs:EPSG::4258 |
RD | Rijks Driehoeksmeting – Amersfoort RD New | urn:ogc:def:crs:EPSG::28992 |
Het attribuut srsDimension bevat het aantal dimensies van de coördinaten. Omdat het attribuut srsDimension optioneel is en omdat de referentiestelsels ETRS89 en RD beiden tweedimensionaal zijn, is alleen srsDimension="2" toegestaan. Daarom en om inconsistenties te voorkomen wordt aangeraden het attribuut weg te laten (zie referentie [4]).
Conform NEN3610 wordt voor het coördinatenpaar van de locatie het attribuut pos gebruikt van datatype doublelist (zie paragraaf 9.4). Het bereik en de betekenis is afhankelijk van het gebruikte coördinatensysteem. Onderstaande tabel geeft per coördinatensysteem de betekenis en de eenheid van het coördinatenpaar.
Naam | Betekenis coördinaten | Eenheid |
---|---|---|
ETRS89 | Latitude, Longitude | Decimale graden |
RD | X, Y | Meter |
In een XSD ziet de definitie van een element met dit datatype er bijvoorbeeld als volgt uit:
<element name = "location" type = "gml:PointType" /> |
In een XML-bericht krijgt een element van het type GML-datatype Point drie attributen en als inhoud een pos element. Voorbeeld:
<location gml:id= "BRO_0001" srsName= "urn:ogc:def:crs:EPSG::4258" > |
TM_TimeInstant
Het datatype TM_TimeInstant bevat een identificeerbare datum of tijdstip.
Het element position, met als datatype TM_Position (zie paragraaf 9.9), bevat de datum of datum en tijd, inclusief tijdzone, in ISO 8601 formaat.
Het overerfde attribuut id is verplicht (zie de beschrijving in paragraaf 9.2) en kan gebruikt worden om te verwijzen naar een specifiek tijdstip. Elementen van het type TM_TimeInstant die dezelfde datum of hetzelfde tijdstip vertegenwoordigen (al kan de waarde gezien de tijdzone kan verschillen) hebben dezelfde waarde voor het attribuut id.
Voorbeeld van een datum en tijd volgens Nederlandse zomertijd:
<phenomenonTime gml:id= "to-3772" > |
TM_Position
Dit type is een Union waarin verschillende mogelijkheden voor het beschrijven van een positie in de tijd uit de ISO 19108 standaard zijn gecombineerd.
Een element van type TM_Position heeft onder het kwaliteitsregime IMBRO als domein:
- Datum en tijd
- Of een datum
Onder het kwaliteitsregime IMBRO/A is het domein:
- Datum en tijd
- Of een datum
- Of jaartal en maand
- Of jaartal
- Of onbekend
Binnen de BRO geldt als conventie dat een element met een naam met een suffix Time als domein datum en tijd of minder nauwkeurig heeft en een element met een naam met een suffix Date als domein datum of minder nauwkeurig heeft.
Binnen de BRO geldt voor een datum de codering ISO-8601 en de kalender Gregoriaans. Formaat: YYYY-MM-DD.
Binnen de BRO bestaat een tijd uit uren, minuten en secondes conform UTC; milliseconden worden niet gebruikt. Formaat: YYYY-MM-DDThh:mm:ss.
Voorbeelden:
<resultTime>2013-07-12T10:04:38+02:00</resultTime> |
Package xlink-profile
De package xlink-profile bevat het XLINK-profiel, oftewel die concepten uit de XLINK-standaard van de OGC die gebruikt worden in de BRO.
Href
Het datatype href definieert een XML-attribuut (niet een XML-element) van het datatype hrefType.
HrefType
Het datatype hrefType definieert een simpleType als afgeleide van anyURI.
SimpleAttrs
Het datatype simpleAttrs definieert een XML attributeGroup met twee XML-attributen (geen XML-elementen).
Type
Het datatype type definieert een XML-attribuut (niet een XML-element) van het datatype TypeType.
TypeType
Het datatype TypeType definieert een enumeratie met één toegestane waarde.
Bijlagen
Bijlage A: Vertaalslag Engels – Nederlands
A1: dsgmw-messages
Engels | Nederlands |
---|---|
Characteristics | Kengegevens |
constructionStandard | Kwaliteitsnorm inrichting |
groundLevelPosition | Maaiveld positie |
initialFunction | Initiële functie |
localVerticalReferencePoint | Lokaal verticaal referentiepunt |
NITGCode | NITG-code |
numberOfMonitoringTubes | Aantal monitoringbuizen |
offSet | Verschuiving |
owner | Eigenaar |
removed | Opgeruimd |
verticalDatum | Verticaal referentievlak |
wellCode | Putcode |
wellConstructionDate | Inrichtingsdatum put |
wellHeadProtector | Beschermconstructie |
wellRemovalDate | Opruimingsdatum put |
withPrehistory | Met voorgeschiedenis |
CriteriaSet | Kenmerkenverzameling |
constructionPeriod | Periode van inrichting |
constructionStandard | Kwaliteitsnorm inrichting |
geoOhmCablePresent | Geo-ohmkabel aanwezig |
initialFunction | Initiële functie |
maximumTubeTopDiameter | Maximale diameter bovenkant buis |
minimumNumberOfTubes | Minimum aantal buizen |
minimumTubeTopDiameter | Minimale diameter bovenkant buis |
owner | Eigenaar |
removalPeriod | Periode van opruiming |
removed | Opgeruimd |
screenPositionRange | Verticaal interval |
tubeStatus | Buisstatus |
wellHeadProtector | Beschermconstructie |
withPrehistory | Met voorgeschiedenis |
DiameterRange | Diameterbereik |
largestTubeTopDiameter | Grootste diameter bovenkant buis |
smallestTubeTopDiameter | Kleinste diameter bovenkant buis |
DispatchCharacteristics | Uitgiftedocument (kengegevens) |
Characteristics | Kengegevens |
DeregisteredObject | Object uit registratie genomen |
DispatchCharacteristicsRequest | Verzoek tot verzending kengegevens |
criteria | Kenmerken |
requestReference | Verzoekkenmerk |
DispatchCharacteristicsResponse | Bericht van verzending kengegevens |
dispatchDocument | Uitgiftedocument |
dispatchTime | Tijdstip van uitgifte |
numberOfDocuments | Aantal documenten |
rejectionReason | Reden afwijzing |
rejectionTime | Tijdstip van afwijzing |
requestReference | Verzoekkenmerk |
responseType | |
DispatchData | Uitgiftedocument (gegevens) |
DeregisteredObject | Object uit registratie genomen |
GroundwaterMonitoringWell | Grondwatermonitoringput |
DispatchDataRequest | Verzoek tot verzending gegevens |
broId | BRO-ID |
dataToBeDelivered | Te leveren gegevens |
requestReference | Verzoekkenmerk |
DispatchDataResponse | Bericht van verzending gegevens |
DispatchDocument | Uitgiftedocument |
ElectrodeData | Elektrodegegevens |
cableNumber | Kabelnummer |
electrodeNumber | Elektrodenummer |
electrodePosition | Elektrodepositie |
electrodeStatus | Elektrodestatus |
tubeNumber | Buisnummer |
eventData | Resultaat gebeurtenis |
electrodeData | Elektrodegegevens |
tubeData | Buisgegevens |
wellData | Putgegevens |
GeoOhmCable | Geo-ohmkabel |
cableInUse | Kabel in gebruik |
cableNumber | Kabelnummer |
GroundwaterMonitoringWell | Grondwatermonitoringput |
constructionStandard | Kwaliteitsnorm inrichting |
deliveryContext | Kader aanlevering |
groundLevelStable | Maaiveld stabiel |
initialFunction | Initiële functie |
maintenanceResponsibleParty | Onderhoudende instantie |
NITGCode | NITG-code |
numberOfMonitoringTubes | Aantal buizen |
owner | Eigenaar |
removed | Opgeruimd |
wellCode | Putcode |
wellHeadProtector | Beschermconstructie |
wellStability | Putstabiliteit |
withPrehistory | Met voorgeschiedenis |
IntermediateEvent | Tussentijdse gebeurtenis |
eventDate | Datum gebeurtenis |
eventName | Naam gebeurtenis |
MonitoringTube | Monitoringbuis |
artesianWellCapPresent | Voorzien van drukdop |
numberOfGeoOhmCables | Aantal geo-ohmkabels |
sedimentSumpPresent | Voorzien van zandvang |
tubeInUse | Buis in gebruik |
tubeNumber | Buisnummer |
tubePartInserted | Buisdeel geplaatst |
tubeTopDiameter | Diameter bovenkant buis |
tubeTopPosition | Positie bovenkant buis |
tubeTopPositioningMethod | Methode positiebepaling bovenkant buis |
tubeStatus | Buisstatus |
tubeType | Buistype |
variableDiameter | Variabele diameter |
Screen | Filter |
screenBottomPosition | Positie onderkant filter |
screenLength | Filterlengte |
screenTopPosition | Positie bovenkant filter |
sockMaterial | Kousmateriaal |
ScreenPositionRange | Filterbereik |
deepestScreenTopPosition | Positie bovenkant diepste filter |
shallowestScreenTopPosition | Positie bovenkant ondiepste filter |
StatusOverview | Statusoverzicht |
tubeStatus | Buisstatus |
TubeData | Buisgegevens |
glue | Lijm |
insertedPartDiameter | Diameter bovenkant ingeplaatst deel |
insertedPartLength | Lengte ingeplaatst deel |
insertedPartMaterial | Materiaal ingeplaatst deel |
plainTubePartLength | Lengte stijgbuisdeel |
screenBottomPosition | Positie onderkant filter |
screenTopPosition | Positie bovenkant filter |
tubeMaterial | Buismateriaal |
tubeNumber | Buisnummer |
tubePartInserted | Buisdeel ingeplaatst |
tubeStatus | Buisstatus |
tubeTopDiameter | Diameter bovenkant buis |
tubeTopPosition | Positie bovenkant buis |
tubeTopPositioningMethod | Methode positiebepaling bovenkant buis |
variableDiameter | Variabele diameter |
VerticalPositionRange | Verticaal interval |
endDepth | Einddiepte |
startDepth | Begindiepte |
WellData | Putgegevens |
groundLevelPosition | Maaiveldpositie |
groundLevelPositioningMethod | Methode positiebepaling maaiveld |
maintenanceResponsibleParty | Onderhoudende instantie |
owner | Eigenaar |
wellHeadProtector | Beschermconstructie |
wellHistory | Putgeschiedenis |
wellConstructionDate | Inrichtingsdatum put |
wellRemovalDate | Opruimingsdatum put |
A2: gmwcommon
Engels | Nederlands |
---|---|
DeliveredLocation | Aangeleverde locatie |
coordinates | Coördinaten |
CRS | Referentiestelsel |
horizontalPositioningMethod | Methode locatiebepaling |
DeliveredVerticalPosition | Aangeleverde verticale positie |
groundLevelPosition | Maaiveldpositie |
groundLevelPositioningMethod | Methode positiebepaling maaiveld |
localVerticalReferencePoint | Lokaal verticaal referentiepunt |
offset | Verschuiving |
verticalDatum | Verticaal referentievlak |
Electrode | Elektrode |
electrodeNumber | Elektrodenummer |
electrodePackingMaterial | Aanvulmateriaal elektrode |
electrodePosition | Elektrodepositie |
electrodeStatus | Elektrodestatus |
InsertedPart | Ingeplaatst deel |
insertedPartDiameter | Diameter bovenkant ingeplaatst deel |
insertedPartLength | Lengte ingeplaatst deel |
insertedPartMaterial | Materiaal ingeplaatst deel |
MaterialUsed | Toegepast materiaal |
glue | Lijm |
tubeMaterial | Buismateriaal |
tubePackingMaterial | Aanvulmateriaal buis |
PlaintubePart | Stijgbuisdeel |
plainTubePartLength | stijgbuisdeellengte |
SedimentSump | Zandvang |
sedimentSumpLength | Zandvanglengte |
A3: brocommon
Engels | Nederlands |
---|---|
AbortReason | Reden afbreken |
sequenceNumber | Volgnummer |
specification | Foutmelding |
Area | Gebied |
boundingBox | Omsluitende rechthoek |
enclosingCircle | Omsluitende cirkel |
Characteristics | Kengegevens |
broId | BRO-ID |
deliveryAccountableParty | Bronhouder |
deregistered | Uit registratie genomen |
latestCorrectionTime | Tijdstip laatste correctie |
objectRegistrationTime | Tijdstip registratie object |
qualityRegime | Kwaliteitsregime |
underReview | In onderzoek |
Circle | Cirkel |
center | Middelpunt |
radius | Straal |
srsName | Referentiestelsel |
CorrectionRequest | Correctieverzoek |
broId | BRO-ID |
deliveryAccountableParty | Bronhouder |
qualityRegime | Kwaliteitsregime |
requestReference | Verzoekkenmerk |
underPrivilege | Onder voorrecht |
CriteriaSet | Kenmerkenverzameling |
correctionPeriod | Periode van correctie |
deliveryAccountableParty | Bronhouder |
qualityRegime | Kwaliteitsregime |
registrationPeriod | Periode van registratie |
underReview | In onderzoek |
CriterionError | Kenmerkfout |
sequenceNumber | Volgnummer |
specification | Foutmelding |
DatePeriod | Datuminterval |
beginDate | Begindatum |
endDate | Einddatum |
DeregisteredObject | Object uit registratie genomen |
broId | BRO-ID |
deregistered | Uit registratie genomen |
deregistrationTime | Tijdstip uit registratie genomen |
DispatchDataRequest | Verzoek tot verzending gegevens |
broId | BRO-ID |
requestReference | Verzoekkenmerk |
DispatchResponse | Bericht van verzending |
dispatchTime | Tijdstip van uitgifte |
rejectionReason | Reden afwijzing |
rejectionTime | Tijdstip van afwijzing |
requestReference | Verzoekkenmerk |
responseType | |
IntakeResponse | Bericht van registratie |
acceptanceTime | Tijdstip van acceptatie |
broId | BRO-ID |
completionTime | Tijdstip van verwerking |
objectIdAccountableParty | Object-ID bronhouder |
rejectionReason | Reden afwijzing |
rejectionTime | Tijdstip van afwijzing |
requestReference | Verzoekkenmerk |
responseType | |
transactionId | Transactie-ID |
ParseFault | Validatiefout |
abortTime | Moment van afbreken |
requestReference | Verzoekkenmerk |
transactionId | Transactiecode |
PartialDate | Onvolledige datum |
date | Datum tot op de dag nauwkeurig |
voidReason | Geen datum bekend |
year | Datum tot op het jaar nauwkeurig |
yearMonth | Datum tot op de maand nauwkeurig |
Radius | Straal |
uom (unit of measure) | Eenheid |
value | Waarde |
RegistrationHistory | Registratiegeschiedenis |
corrected | Gecorrigeerd |
deregistered | Uit registratie genomen |
deregistrationTime | Tijdstip uit registratie genomen |
latestAdditionTime | Tijdstip laatste aanvulling |
latestCorrectionTime | Tijdstip laatste correctie |
objectRegistrationTime | Tijdstip registratie object |
registrationCompletionTime | Tijdstip voltooiing registratie |
registrationStatus | Registratiestatus |
reregistered | Weer in registratie genomen |
reregistrationTime | Tijdstip weer in registratie genomen |
underReview | In onderzoek |
underReviewTime | In onderzoek sinds |
RegistrationObject | Registratieobject |
broId | BRO-ID |
deliveryAccountableParty | Bronhouder |
deliveryResponsibleParty | Dataleverancier |
objectIdAccountableParty | Object-ID bronhouder |
qualityRegime | Kwaliteitsregime |
RegistrationRequest | Registratieverzoek |
broId | BRO-ID |
deliveryAccountableParty | Bronhouder |
requestReference | Verzoekkenmerk |
qualityRegime | Kwaliteitsregime |
underPrivilege | Onder voorrecht |
SourceDocumentError | Brondocumentfout |
sequenceNumber | Volgnummer |
specification | Foutmelding |
StandardizedLocation | Gestandaardiseerde locatie |
coordinateTransformation | Coördinaattransformatie |
CRS | Referentiestelsel |
location | Coördinaten |
srsName | Referentiestelsel |
A4: Domeinen van het type codelijst
GMW codelijsten
Codespace URI: urn:bro:gmw:<Engelse naam>
Engelse naam | Nederlandse naam |
---|---|
ConstructionStandard | Kwaliteitsnorm inrichting |
CorrectionReason | Correctie reden |
DeliveryContext | Kader aanlevering |
ElectrodePackingMaterial | Aanvulmateriaal elektrode |
ElectrodePositioningMethod | Methode positiebepaling elektrode |
ElectrodeStatus | Elektrodestatus |
EventName | Naam gebeurtenis |
Glue | Lijm |
GroundLevelPositioningMethod | Methode positiebepaling maaiveld |
HorizontalPositioningMethod | Referentiestelsel |
InitialFunction | Initiële functie |
LocalVerticalReferencePoint | Lokaal verticaal referentiepunt |
SockMaterial | Kousmateriaal |
TubeMaterial | Buismateriaal |
TubePackingMaterial | Aanvulmateriaal buis |
TubeStatus | Buisstatus |
TubeTopPositioningMethod | Methode positiebepaling bovenkant buis |
TubeType | Buistype |
VerticalDatum | Verticaal referentievlak |
WellHeadProtector | Beschermconstructie |
WellStability | Putstabiliteit |
BRO algemene codelijsten
Codespace URI: urn:bro:<Engelse term>
Engelse naam | Nederlandse naam |
---|---|
CoordinateTransformation | Coördinaattransformatie |
CorrectionReason | Correctie reden |
DeliveryContext | Kader aanlevering |
RegistrationStatus | Registratiestatus |