[OSM-talk-nl] nationaalgeoregister WFS service query
Gertjan Idema
g.idema at zonnet.nl
Wed Oct 16 14:00:38 UTC 2013
Na wat puzzelen, heb ik het voor elkaar.
In de bijlage een html bestand dat drie open layers lagen produceert:
- Osm mapnik als achtergrond.
- Gemeentegrenzen (van
http://geodata.nationaalgeoregister.nl/bestuurlijkegrenzen/wfs)
- Woonplaatsgrenzen (van
http://geodata.nationaalgeoregister.nl/bagviewer/wfs)
Opvallend is, dat de bagviewer laag werkt zonder de outputFormat: 'GML2'
toevoeging.
Verdere voorwaarde is wel dat je de proxy-host goed geconfigureerd hebt.
Zie hiervoor:
http://www.techrepublic.com/blog/diy-it-guy/diy-enable-cgi-on-your-apache-server/
Het proxy.cgi script vind je hier:
http://trac.osgeo.org/openlayers/browser/trunk/openlayers/examples/proxy.cgi?format=txt
Dit script moet je een klein beetje aan passen, door op regel 18 bij
allowedHosts 'geodata.nationaalgeoregister.nl' toe te voegen.
Als je dat vergeet, krijg je een 'bad gateway' foutmelding.
Houdt er wel rekening dat het even kan duren voor de data geladen is.
Met name de woonplaats grenzen.
Ook vermoed ik, dat door het gebruik van de proxy-host, alle data via
jouw server naar de client gaat. Als je een beperkt aantal GB per maand
hebt bij je provider, kan dat dus consequenties hebben.
Groeten, Gertjan
On Wed, 2013-10-16 at 12:08 +0200, Just van den Broecke wrote:
> Ok, welkom in de wondere wereld van WFS en OGC-protocollen :-).
> Het voordeel (boven een expliciete API zoals OSM XAPI) is dat je maar 1
> protocol spec (WFS) hoeft te kennen. Op grond van een URL zoals
> geodata.nationaalgeoregister.nl/bestuurlijkegrenzen/wfs moet je alle
> metadata (types etc) kunnen opvragen. Nadeel is dat WFS
> "onhandig"/verbose/redundant in elkaar zit. Meestal 2 stappen om uit te
> vinden welke parameters je nodig hebt:
>
> GetCapabilities:
> http://geodata.nationaalgeoregister.nl/bestuurlijkegrenzen/wfs?service=WFS&request=GetCapabilities&version=1.1.0
> DescribeFeatureType:
> http://geodata.nationaalgeoregister.nl/bestuurlijkegrenzen/wfs?service=WFS&request=DescribeFeatureType&version=1.1.0
>
> Vooral uit de laatste haal je (onderaan) dat de laagnaam
> 'gemeenten_2012' en het geometrie-veld 'geom' moet zijn (bij jou stond
> 'geometrie').
>
> Op grond daarvan heb ik net geprobeerd een OL laag toe te voegen in een
> viewer waar ik net aan werk (http://kadviewer.kademo.nl) en zie dat dit
> werkt:
>
> new OpenLayers.Layer.Vector("Bestuurlijke Grenzen - Gemeenten (WFS)", {
> strategies: [new OpenLayers.Strategy.BBOX()],
> visibility: false,
> styleMap: new OpenLayers.StyleMap(
> {'strokeColor': '#222222', 'fillColor': '#eeeeee',
> graphicZIndex: 1, fillOpacity: 0.6}),
> protocol: new OpenLayers.Protocol.WFS({
> version: '1.1.0',
> outputFormat: 'GML2',
> srsName: 'EPSG:28992',
> url:
> http://geodata.nationaalgeoregister.nl/bestuurlijkegrenzen/wfs?,
> featureType: "gemeenten_2012",
> featureNS: "http://bestuurlijkegrenzen.geonovum.nl",
> geometryName: 'geom'
> })
> })
>
> Gotcha: er zit een al 2 jaar bekend probleem in PDOK (GeoServer) WFS bij
> gebruik van WFS 1.1.0: je krijgt standaard GML 3.1.1 output terug, maar
> daarin zitten 'null' namespaces. Dat weten ze daar ook al 2 jaar, maar
> heeft blijkbaar geen prio. Daarom als je outputFormat='GML2' opgeeft,
> gaat het goed. Je kunt ook version: 1.0.0 (default) opgeven dan krijg je
> standaard GML2 terug. Je kunt zelfs outputFormat=json of zelfs SHAPE-ZIP
> opvragen...Wie volgt dit nog ;-)?
>
> Goed, ja ik ben deze dagen, vaak knarsetandend, met WFS bezig, dus
> "leuk" dit voorbij te zien komen. Overigens kan de 500 error goed met je
> proxy-instelling, nodig bij OpenLayers+WFS, te maken hebben...
>
> groet!
>
> Just
>
>
>
> On 16-10-13 09:20, Christ van Willegen wrote:
> > 2013/10/16 nouwsfam <nouwsfam at xs4all.nl>:
> >>
> >> "NetworkError: 500 Internal Server Error -
> >> http://geodata.nationaalgeoregister.nl/bestuurlijkegrenzen/wfs"
> >>
> >> en de foutmelding van de WFS server is nu
> >>
> >> "Reload the page to get source for:
> >> http://geodata.nationaalgeoregister.nl/bestuurlijkegrenzen/wfs"
> >
> > Dat is niet de foutmelding van de WFS server, maar FireBug toont daar
> > deze tekst...
> >
> > Die 'internal server error' is het probleem, maar dan krijg je ook,
> > over het algemeen, _geen_ data terug...
> >
> > Christ van Willegen
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/talk-nl/attachments/20131016/f86b0cfd/attachment.htm>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/talk-nl/attachments/20131016/f86b0cfd/attachment.html>
More information about the Talk-nl
mailing list