Kadastrale Kaart v4 WMS --> aanroepen van functions in filter lijkt uitgeschakeld

Voor het toepassen van een filter op perceelgrootte in onze WMS-request maken we in v3 van de dienst gebruik van de function-parameter “area” (…). Deze (en alle andere “Function”-parameters) lijken in v4 van de dienst niet te zijn toegestaan.

Klopt dit? En zou dit wellicht wel mogelijk zijn?

Neem aan dat we het hier over de SLD filter functies hebben. Kunnen jullie een voorbeeld request/xml/… maken? Dat maakt deze discussie mogelijk iets makkelijker.

Dat klopt inderdaad.

Een voorbeeld van een request die we proberen te maken is:

https://geodata.nationaalgeoregister.nl/kadastralekaart/wms/v4_0?filter=<Filter><And><PropertyIsGreaterThanOrEqualTo><Function name="area"><PropertyName>begrenzingPerceel</PropertyName></Function><Literal>1</Literal></PropertyIsGreaterThanOrEqualTo><PropertyIsLessThanOrEqualTo><Function name="area"><PropertyName>begrenzingPerceel</PropertyName></Function><Literal>500</Literal></PropertyIsLessThanOrEqualTo></And></Filter>&service=WMS&request=GetMap&layers=Perceelvlak&styles=&format=image%2Fpng&transparent=true&version=1.3.0&width=256&height=256&crs=EPSG:3857&bbox=565939.7574234451,6818794.419264007,566245.5055365858,6819100.167377147

De foutmelding die we krijgen is:

<?xml version='1.0' encoding="UTF-8" standalone="no" ?>
<ServiceExceptionReport version="1.3.0" xmlns="http://www.opengis.net/ogc"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/ogc http://schemas.opengis.net/wms/1.3.0/exceptions_1_3_0.xsd">
        <ServiceException code="InvalidParameterValue">
    msWMSApplyFilter(): WMS server error. Invalid or Unsupported FILTER : &lt;Filter&gt;&lt;And&gt;&lt;PropertyIsGreaterThanOrEqualTo&gt;&lt;Function name=&quot;area&quot;&gt;&lt;PropertyName&gt;begrenzingPerceel&lt;/PropertyName&gt;&lt;/Function&gt;&lt;Literal&gt;1&lt;/Literal&gt;&lt;/PropertyIsGreaterThanOrEqualTo&gt;&lt;PropertyIsLessThanOrEqualTo&gt;&lt;Function name=&quot;area&quot;&gt;&lt;PropertyName&gt;begrenzingPerceel&lt;/PropertyName&gt;&lt;/Function&gt;&lt;Literal&gt;500&lt;/Literal&gt;&lt;/PropertyIsLessThanOrEqualTo&gt;&lt;/And&gt;&lt;/Filter&gt;
    </ServiceException>
    </ServiceExceptionReport>

Dit klopt, de function “area” is er niet meer met de /kadastralekaart/wms/v4_0?
En dit weer “toestaan” is iets wat niet kan. Dat dit kon/mogelijk was lijkt ook een “toevalligheid” te zijn van Geoserver. Filter requesten op een GetMap zijn niet volgens de WMS standaard “gespecifieerd”. Maar dit lijkt een combinatie te zijn van WFS Filter parameter en WMS requesten waardoor dit (voor jullie) een werkbaar resultaat oplevert.

Maargoed dit beweegt zich naar een onderwerp/discussie die hier op het forum wel eerder/vaker is langsgekomen:

  • dat het voor een NSDI (National Spatial Data Infrastructure) wat PDOK is niet wenselijk is vendor specifieke “operaties” aan te bieden in het kader van vendor lock-in, enz…

Wat we wel erkennen is jullie vraag naar dergelijke functionaliteit, en wij (PDOK) denken hier in de toekomst mogelijk via andere koppelvlakken wel invulling aan te kunnen geven, zoals bijvoorbeeld VectorTiles. (zoals we het met een aantal van jullie op de GeoBuzz over hebben gehad :wink: )

image

Beste Wouter,

Hartelijk bedankt voor je reactie. Hoewel we dit natuurlijk wel jammer vinden, kunnen we ons wel vinden in de keuze die gemaakt is. We wachten de ontwikkelingen van de andere koppelvlakken, zoals de VectorTiles, af. Tot die tijd zullen we een work-around implementeren.