We komen verschillen tegen in WFS-implementaties voor de beschrijving van de gebruikte tijdszones in datumTijd-velden in een WFS. We maken nu een aanname: als er geen tijdszone gespecificeerd wordt, dan is de waarde in Nederlandse tijd.
Bij BIJ12 verwerken we gegevens van provincies tot landelijk bestanden. Voor de nieuwe Informatiekaart Natuur ontvangen we de gegevens van provincies via WFS-en. We hebben een aantal checks met provincies gedaan van de waardes in de datumTijd-velden. Die willen we natuurlijk wel netjes samenvoegen.
Als we nu de waarde van datumTijd-velden (bijv. het attribuut ‘beginGeldigheid’ in onderstaande voorbeelden) vergelijken, dan zien we dat:
-
de GeoServer-WFS-en leveren waardes in UTC: waardes die in de achterliggende databases in Nederlandse tijd zijn opgeslagen (UTC+1) worden door de WFS aangeboden in UTC. GeoServer trekt er dus een uurtje vanaf. De clientapplicatie kan de tijdszone aflezen uit de WFS omdat er achter datumTijd een ‘Z’ staat en deze desgewenst omrekenen naar de tijdszone van de eindgebruiker / doeldataset. Bijvoorbeeld: https://opengeodata.zeeland.nl/geoserver/ikn/wfs/wfs?service=wfs&version=2.0.0&request=GetFeature&typeNames=ikn:ext_ikn_stg&count=1
-
De ArcGIS Servers WFS-en leveren datumTijd-waardes zonder een specificatie van de tijdszone. De afnemer moet dus zelf een aanname doen. Uit enkele proeven blijkt dat ArcGIS Server de datumTijd-waardes uit de achterliggende data niet aanpast en 1:1 overneemt in de WFS-en. Daar dus UTC+1. De eindgebruiker / afnemende applicatie moet dus op voorhand weten welke tijdszone de afzender gebruikt. Een voorbeeld: https://geoservices.provinciegroningen.nl/server/services/Milieu/Bodem/MapServer/WFSServer?request=GetFeature&service=wfs&TypeName=Bodem:VerzuringsgevoeligeGebieden&count=1
De WFS-standaard voor WFS of het NL’se profiel voor WFS melden hier niets over.
Zijn er Geoforum-leden die dit ook zijn tegengekomen? En hoe gaan zij hiermee om? Maken jullie dezelfde aanname (geen tijdszone beschreven in de WFS, dan nemen we aan dat het NL’se tijd is)?