Att göra ett WMS-anrop

Senast ändrad: 28 juni 2016

Här följer en beskrivning av hur man genom att använda sig av Svenska LifeWatchs Web Map Service-tjänst (WMS) kan hämta ut punkter i till exempel bildformatet tiff där punkterna visar observationer av ett valt taxon i ett visst område.

För att förstå vad man kan göra med wms-tjänsten kan man studera användarhandledningen till GeoServer på denna sida: http://docs.geoserver.org/stable/en/user/services/wms/reference.html och lära sig mera om möjligheterna som erbjuds.

Det finns flera olika typer av anrop som man kan göra till en wms-tjänst. Man kan till exempel be om en beskrivning av vad tjänsten kan göra (GetCapabilities) och man kan hämta en kartbild (GetMap).

För att be om en beskrivning av vad Svenska Life Watch WMS-tjänst kan göra så använder man följande anrop:

http://slwgeo.artdata.slu.se:8080/geoserver/ows?&VERSION=1.0.0&SERVICE=WMS&REQUEST=GetCapabilities

Resultatet innehåller bland annat namn på vilka typer av datamängder/lager som finns i tjänsten:

Exempel på resultat

För att hämta punktobjekt använder man följande anrop. Eftersom det är många objekt i databasen och det finns begränsningar för hur mycket man får hämta i taget, så måste man begränsa antalet till t.ex. 100 objekt:

http://slwgeo.artdata.slu.se:8080/geoserver/SLW/ows?service=WMS&version=1.1.0&request=GetMap&layers=SLW:AllSwedishOccurrences&styles=&bbox=
287517.5,6178887.0,828004.5,7358465.0&width=234&height=512&srs=EPSG:3006&maxFeatures
=100&format=image/tiff

Paging:

De därpå följande 100 objekten hämtas med tillägget &startindexpå följande vis:

http://slwgeo.artdata.slu.se:8080/geoserver/SLW/ows?service=WMS&version=1.1.0&request=GetMap&layers=SLW:AllSwedishOccurrences&styles
=&bbox=287517.5,6178887.0,828004.5,7358465.0&width=234&height=512&srs=
EPSG:3006&maxFeatures=100&format=image/tiff&startindex=100

Filtrering:

Filtrering av data kan göras på alla attribut som finns i databasen men alla är tyvärr inte lämpade för det. En lista på attribut finns i tabellen nedan.

Attribut i Swedish LifeWatch Web Feature Service

Attributen är i enlighet med DarwinCore-standarden, men alla har inte heltäckande data ifyllt.

Här följer ett exempel på filtrering på attributet DyntaxaTaxonID. För att hitta alla punkobjekt som representerar exempelvis dalripa så lägger man till ett filter som opererar på attributet DyntaxaTaxonID. Värdet som motsvarar dalripa är 102944. (Alla värden för DyntaxaTaxonID är enkelt att hitta på www.dyntaxa.se eller http://www.dyntaxa.se/?search=dalripa.)

För att hämta de första 100 punktobjekt som representerar dalripa använder man följande filter:

&Filter=<Filter><PropertyIsEqualTo><PropertyName>DyntaxaTaxonID</PropertyName>
<Literal>102944</Literal></PropertyIsEqualTo></Filter>&format=image/tiff

Denna sträng (utan mellanslag) ska ligga efter &maxFeatures


Kontaktinformation

Maria Barret-Ripa, systemutvecklare
maria.ripa@slu.se, 018-67 2709

Sidansvarig: anna-maria.wremp@slu.se