zondag 28 februari 2016

De Digitale kadastrale kaart

De Nederlandse overheid heeft bepaald dat openbare overheidsgegevens door iedereen mogen worden gebruikt en verspreid. Deze gegevens worden open data genoemd. Het Kadaster biedt de Digitale kadastrale kaart (DKK) aan als open data via Publieke Dienstverlening op de Kaart (PDOK). Deze kaart is zo in te lezen in QGIS.


Perceel: een virtuele eenheid van zakelijk recht, in het terrein af te bakenen door middel van uit te zetten en omsluitende rechtsgrenzen, en voorzien van een unieke kadastrale aanduiding volgens de identificatie van het Rijkskadaster.



De DKK bestaat uit een set van GML bestanden, telkens per provincie gebundeld:

  • Annotatie.gml
  • Bebouwing.gml
  • Kadastralegrens.gml
  • Perceel.gml
Hier schemert een oude discussie doorheen. Zijn (perceel)vlakken wel beschikbaar? Of moeten die aan de hand van deze gegevens gebouwd worden? Een beheerder van 'ruimte' is in eerste instantie geinteresseerd in perceelvlakken, maar kreeg in afgelopen jaren vaak grenzen aangeleverd.

Diethard Jansen van GIS-hulp heeft in een blog (kadastrale-percelen-genereren-vanuit-brk) uitgelegd hoe je zelf in een aantal (file-based) stappen in QGIS vlakken kunt opbouwen aan de hand van de perceelgrenzen uit Kadastralegrens.gml, en hoe je deze met een JOIN kan koppelen aan perceelnummers uit Perceel.gml.

DEMO

In demo kunnen we een aantal stappen overslaan.

1. Omdat het data van derden betreft (geen beheer !) wordt in de database een apart schema dkk gemaakt.

2. In QGIS wordt via de menuoptie Processing -  Toolbox - GeoServer/PostGIS tools - Import into PostGIS de onderstaande opdracht uitgevoerd:



Voilà, 1.2 miljoen percelen van de provincie Noord-Brabant zijn nu in de demo database aanwezig.

3. In QGIS kan het resultaat als PostGIS datalaag aan het kaartbeeld toegevoegd worden en kan aangegeven worden hoe percelen gelabeld moeten worden met perceelnummers.


De crux van dit verhaal zit in een bestand perceel.gfs.
Dit bestand geeft de opbouw van perceel.gml aan, het is een soort stylesheet.

Als een .gml bestand de eerste keer ter verwerking wordt aangeboden zonder bijbehorend .gfs of .xsd bestand, dan wordt een .gfs bestand na een analyse automatisch aangemaakt.

Door dit bestand een beetje naar eigen inzicht aan te passen, sluit het netjes aan op de demo situatie, is het resultaat wat compacter, en levert het netto perceelvlakken op.

Iedere keer dat in PDOK een nieuw perceel.gml beschikbaar komt (1x maand ?), is het inlezen van de kadastrale kaart nu een fluitje van een cent geworden.

Perceel.gfs:

<GMLFeatureClassList>
  <GMLFeatureClass>
    <Name>Perceel</Name>
    <ElementPath>Perceel</ElementPath>            
    <SRSName>urn:ogc:def:crs:EPSG::28992</SRSName>
    <PropertyDefn>
      <Name>lokaalID</Name>
      <ElementPath>identificatie|NEN3610ID|lokaalID</ElementPath>
      <Type>Integer</Type>
    </PropertyDefn>
    <PropertyDefn>
      <Name>Objectbegintijd</Name><ElementPath>historie|KadasterHistorie|logischTijdstipOntstaan</ElementPath>             <Type>String</Type>
        <Width>23</Width>
    </PropertyDefn>
    <PropertyDefn>
      <Name>gemeente</Name>
<ElementPath>kadastraleAanduiding|TypeKadastraleAanduiding|kadastraleGemeente|KadastraleGemeenteKeuze|AKRKadastraleGemeenteCode</ElementPath>
      <Type>String</Type>
      <Width>5</Width>
    </PropertyDefn>
    <PropertyDefn>
      <Name>sectie</Name><ElementPath>kadastraleAanduiding|TypeKadastraleAanduiding|sectie</ElementPath>
      <Type>String</Type>
      <Width>2</Width>
    </PropertyDefn>
    <PropertyDefn>
      <Name>nummer</Name> <ElementPath>kadastraleAanduiding|TypeKadastraleAanduiding|perceelnummer</ElementPath>
      <Type>Integer</Type>
    </PropertyDefn>
    <PropertyDefn>
      <Name>oppervlak</Name> <ElementPath>kadastraleGrootte|TypeOppervlak|waarde</ElementPath>
      <Type>Integer</Type>
    </PropertyDefn>
    <GeomPropertyDefn>
      <Name>begrenzing</Name>
      <ElementPath>begrenzingPerceel</ElementPath>
      <Type>Polygon</Type>
    </GeomPropertyDefn>
  </GMLFeatureClass>
</GMLFeatureClassList>

Geen opmerkingen:

Een reactie posten