WMS
Ein Web Map Service (WMS) (auch: WMS-Dienst) ist ein eine normierte Schnittstelle, um (rasterbasierte) Karten zu generieren. Ein WMS beruht auf OGC's "WMS Implementation Specification".
Siehe auch:
Allgemeines
Siehe auch WFS Web Map Tiling und Caching.
Einführung:
- OGC-Spezifikation (wir empfehlen bis auf weiteres Version 1.1.1 Web Map Service Dokument 01-068r3)
- nasa.gov - guter Guide.
Pseudo-REST API (HTTP Parameter):
- GetCapabilities: Als Antwort wird eine Selbstbeschreibung als XML-Dokument zurückgeschickt, das neben allgemeinen Angaben zum Anbieter des WMS die unterstützten Ausgabeformate des WMS zu den verschiedenen Anfragen sowie die abfragbaren Layer für die Karte beinhaltet.
- GetMap: Liefert ein georeferenzierte Karte (Raster z.B. tiff, png) zurück.
- GetFeatureInfo (optional): Anfrage zu einer Position im dargestellten Kartenausschnitt. Als Antwort werden Informationen der zugrundeliegenden Layers geliefert, in der Regel im XML- oder HTML-Format.
Bekannte WMS Server
Auswahl von bekannten WMS-Servern:
- Schweiz
- BGDI Swisstopo; http://wms.geo.admin.ch/?SERVICE=WMS&REQUEST=GetCapabilities
- Kt. GL ; https://wms.geo.gl.ch/Public?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetCapabilities
- Kt. ZH ; http://wms.zh.ch/AwelWBwwwZHWMS?SERVICE=WMS&Request=GetCapabilities
- Kt.GR ; http://wms.geo.gr.ch/admineinteilung?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetCapabilities
- SOSM ; http://mapproxy.osm.ch:8080/service?SERVICE=WMS&REQUEST=GetCapabilities
- Stadt Zürich ; http://www.gis.stadt-zuerich.ch/maps/services/wms/WMS-ZH-STZH-OGD/MapServer/WMSServer?SERVICE=WMS&Request=GetCapabilities
- Uster ZH ; https://webgis.uster.ch/wms/orthofotos_und_uep/orthofotos_und_uep?SERVICE=WMS&REQUEST=GetCapabilities
- Deutschland
- ITC-Halle ; http://osmwms.itc-halle.de/maps/osmfree?SERVICE=WMS&REQUEST=GetCapabilities
- Omniscale ; http://osm.omniscale.net/proxy/service?SERVICE=WMS&REQUEST=GetCapabilities
- Terrestris.de ; http://ows.terrestris.de/osm/service?SERVICE=WMS&REQUEST=GetCapabilities
- Uni Heidelberg; http://129.206.228.72/cached/osm?SERVICE=WMS&REQUEST=GetCapabilities
- WhereGroup ; http://osm-demo.wheregroup.com/service?REQUEST=GetCapabilities&Service=WMS&Version=1.3.0
- Welt:
- OpenStreetMap (OSM):
- http://osm.wheregroup.com/cgi-bin/osm_basic.xml?SERVICE=WMS&REQUEST=GetCapabilities (<===)
- http://osm.wheregroup.com/cgi-bin/mapserv?map=/data/umn/osm/osm_basic.map
- http://www.camptocamp.org/cgi-bin/c2corg4osm?SERVICE=WMS&REQUEST=GetCapabilities
- http://osmwms.itc-halle.de/maps/osmfree?SERVICE=WMS&REQUEST=GetCapabilities
- http://mapbender.wheregroup.com/cgi-bin/mapserv?map=/data/umn/osm/osm_basic.map&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetCapabilities
- http://osm.omniscale.net/proxy/service
- http://wms.latlon.org/ => id 5
- Geofabrik WMS
- NASA
- NASA Earth Observations (JPL/MODIS) WMS http://wms.jpl.nasa.gov/wms.cgi?request=GetCapabilities
- NASA Earth Observations (GSFC NEO) WMS http://neowms.sci.gsfc.nasa.gov/wms/wms?request=GetCapabilities
WMS-Kataloge und Suchmaschinen
Suchmaschinen (Harvester):
- Geopole (Sourcepole AG): http://www.geopole.org/
- Geometa.info (Crawler): http://geometa.info/search.jsp?query=type:wms
- WMS-Finder (alta4.de): http://wms-finder.de/
- WMS-Sites: http://wms-sites.com/catalog (veraltet?)
- Google-Suche: http://google.ch/search?q=inurl:getcapabilities+wms, bzw. http://google.com/search?q=allinurl:service+WMS+%22request=getcapabilities%22
Listen/Verzeichnisse:
- WMS-Liste auf geometa Directory
- WMS-Listen auf del.icio.us/sfkeller/
- WMS-Verzeichnis: wms-sites.com
- Geometa.info (Directory): http://geometa.info/directory/tags.php/wms+webservice
Seeds:
- http://directory.geometa.info/tags.php/wms?sort=visits_desc
- http://www.swisstopo.admin.ch/internet/swisstopo/de/home/products/services/web_services.html
Software
WMS-Clients für Desktop-Applikationen
WMS-Clients für Web-Applikationen
WMS-Clients für Mobiles
- Für Android
- mobiledroidgis - Request and visualise SOS, WMS, GeoRSS and GOCAD data with Android
- MGMaps Lib] - Fa. Nutiteq’s Android libraries
- gvSIG mini
- AndNav2 - osmdroid provides Tools / Views to interact with OpenStreetMap-Data. The OpenStreetMapView is a (almost!???) full/free replacement for Androids MapView class.
- JavaME
- MGMaps Lib] - Fa. Nutiteq’s Android libraries
- gvSIG mini
WMS-Server-Software
- UMN MapServer (Open Source)
- GeoServer (Open Source)
- QGIS Server (Open Source)
- ArcGIS
- mod_mapnik_wms (Open Source)
- DesktopWMS
- Gaia 3 (free, Windows)
- Google Earth (free) Instructions from nlr.nl
- NASA World Wind (Open Source)
WMS-Werkzeuge/Tools
- WMS-Validator?
- Gateway, der WMS-Daten in Google Earth darstellen kann. Webapplikation, die zwischen einem auf dem Desktop installierten Google Earth und dem WMS-Server steht. Realisiert wurde dies mittels zweier PHP-Scripts: Das "GE_KML_LINK.php"-Script realisiert den Google Earth-Netzwerklink und das "GE_KML.php"-Script beliefert den Netzwerklink mit Daten aus dem WMS-Server.
Tutorien
Siehe auch Standard WMS, WFS and WCS: a short introduction.
WMS testen
WMS-Server können mit einem normalen Web Browser oder - noch besser - mit der Kommandozeilen-Software 'curl' oder 'wget' aufgerufen und dann z.B. mit IrfanView angezeigt werden. In jedem Falle müssen mind. alle obligatorischen URL-Parameter angegeben werden, u.a. version, format, crs, layers, bbox, width, height etc. Beispiele siehe unten.
Tipps:
- Offizieller 'Compliance Test' von OGC für WMS 1.1.1.
- Man beachte, dass das Verhältnis zwischen den width- und height- Parametern gleich ist wie für die bbox.
Einfache WMS-Übung
Aufgabe 1.a) Web Map Services im Internet finden
Suchen Sie im Internet nach OpenGIS Web Map Services, wie oben angegeben.
Untersuchen Sie den Inhalt, d.h. die verfügbaren Layers, mit 'GetCapabilities':
Aufgabe 1.b) GetMap-Request formulieren
Formulieren Sie einen GetMap-Request an den SOGIS-Ortsplan, mit welchem ein PNG-Bild mit folgenden Eigenschaften erstellt wird:
- Inhalt: Bodenbedeckung, Grundbuchparzellen mit Parzellennummern.
- CH-Landeskoordinaten der Bildecke links unten: 607500 / 228500
- Durch das Bild repräsentierte Boden-Fläche: 300m x 300m
- Bildschirm-Ausmass des Bildes: 500 Pixel x 500 Pixel
Verwenden Sie dazu folgendes URL-Gerüst - bei fehlenden Parameter-Werten stehen zwei Ausrufezeichen (also '!!'):
- http://www.sogis1.so.ch/cgi-bin/sogis/sogis_av.wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=!!&LAYERS=!!&BBOX=!!&WIDTH=!!&HEIGHT=!!&FORMAT=!!&STYLES=&SRS=EPSG:21781
- Informationen zum Inhalt: http://www.so.ch/departemente/bau-justiz/so-gis/web-map-services-wms/wms-amtliche-vermessung.html
- Beispiel: http://www.sogis1.so.ch/sogis/internet/wms/getmap.php?wms=av&layers=bdbed
- Anderes Beispiel: geometa.hsr.ch/geoserver/wms?service=WMS&version=1.1.1&request=GetMap&bbox=8.815067,47.224381,8.817712,47.226178&width=250&height=250&format=image/png&layers=osm
Tipps zu WMS
Publizieren von GeoTIFF als WMS
Ein Lösungsansatz gibt es mit QGIS Cloud und PostGIS Raster:
- QGIS starten und QGIS Cloud Plugin installieren und Konto anlegen:
- QGIS starten (bzw. vorher QGIS installieren).
- QGIS Cloud Plugin installieren (siehe QGIS).
- im QGIS CloudPlugin Cloud-Datenbank erzeugen und sich die Parameter merken.
- GeoTIFF-Daten hochladen mit lokalen Kommandozeilenprogramm raster2pgsql => Siehe PostGIS Raster.
- im QGIS, WMS als Layer laden
- im QGIS mit QGIS Cloud Plugin Karte publizieren.
- Fertig, bzw. mit einem WMS Client und den entspr. Parametern des QGIS Cloud-Projekts testen.
Download von WMS-Rasterdaten zur lokalen Verwendung
Gegeben sei ein WMS, hier Kt.ZH UeP: [1]
- Test ganzer Kanton ((EPSG:21781, BBOX minx="654500" miny="222400" maxx="720000" maxy="284900") in max. Auflösung wäre zu gross (ca. 2 GB!): </nowiki>wms.zh.ch/upwms?service=WMS&version=1.3.0&request=GetMap&bbox=654500,222400,720000,284900&width=14335&height=14335&format=image/png&layers=upwms&crs=EPSG:21781</nowiki>
- Hombi (300x200 Pixel): [2]
gdalinfo:
gdalinfo "WMS:http://wms.zh.ch/upwms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=698522,232965,701777,235179&WIDTH=10000&HEIGHT=7000&FORMAT=image/png&LAYERS=upwms&CRS=EPSG:21781"
Note the removal of "WMS:" prefix in front of the URL, and the GDAL_SKIP=WMS, since the WMS driver would also try to recognize the string as a description string of the WMS service, which you don't want. You just want the JPEG driver to recognize the image resulting of the GetMap query.
GDAL_SKIP=WMS gdal_translate -of GTiff -co "TFW=YES" -a_srs EPSG:21781 -a_ullr 698522 235179 701777 232965 "http://wms.zh.ch/upwms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=698522,232965,701777,235179&WIDTH=10000&HEIGHT=7000&FORMAT=image/png&LAYERS=upwms&CRS=EPSG:21781" out.tif
Achtung: Unterschiedliche BBOX-Angaben in WMS und gdal: Gegeben ulx=-76.80 lrx=-67.85 lry=34.58 uly=41.71 crs=EPSG:4326 und WMS-url:
WMS BBOX=$ulx,$lry,$lrx,$uly gdal_translate -a_srs ${crs} -a_ullr $ulx $uly $lrx $lry foo.png foo.tif
Qualitäts- und Performance-Kriterien
Die Europäischen Union vom Oktober 2009 hat eine Verordnung zu Netzdiensten, umfassend Suchdienste sowie Darstellungsdienste, veröffentlicht. Die europäischen Mitgliedstaaten müssen diese bis November 2011 realisiert haben. Quelle: Verordnung Nr. 976/2009 vom 19. Oktober 2009 zur Durchführung der Richtlinie 2007/2/EG. Gefunden via [3])):
Für die Dienstqualität (Leistung, Kapazität und Verfügbarkeit) u.a. von WMS gelten die folgenden Kriterien:
- Leistung: Für ein Bild mit 470 Kilobyte (z.B. 800×600 Pixel mit einer Farbtiefe von 8 Bit) beträgt die Antwortzeit für das Senden eines ersten Ergebnisses auf eine "GetMap"-Anfrage an einen Darstellungsdienst in einer normalen Situation höchstens 5 Sekunden. Mit einer normalen Situation ist ein Zeitraum ohne Spitzenbelastung gemeint. Eine normale Situation ist 90% der Zeit gegeben.
- Kapazität: Pro Sekunde können gemäss der Leistungsqualität des Dienstes mindestens 20 Anfragen an einen Darstellungsdienst gleichzeitig bearbeitet werden.
- Verfügbarkeit: Ein Netzdienst soll 99% der Zeit verfügbar sein.
Siehe dazu auch:
- WMS Shootout an der FOSS4G 2009.
- Vortrag zur Leistungsfähigkeit aktueller WMS-Dienste von Uli Müller an der InterGeo 2009.
- Performance und Verfügbarkeit von WMS-Servern von Pirmin Kalberer an der FOSSGIS 2010.
Weblinks / Lists
- Links zur WMS-Demo im geometa Directory
- wms-sites.com
- Matt Perry's Top Ten WMS layers (with own MapServer)
- Geometa Directory
- Refractions' OGC survey
- Skylab list
- Chris' Google tricks
- deprecated: www.mapdex.org, mapmatters.org