.

QGIS as OGC Data Client

Das Open Geospatial Consortium (OGC) ist eine internationale Organisation mit mehr als 300 Mitgliedern aus kommerziellen, behördlichen Bereichen, aus der Forschung sowie aus Non-Profit Organisationen Vereinen. Die Mitglieder entwickeln und implementieren Standards für den Austausch räumlicher Daten, GIS-Datenprocessing und standardisierte Bereitstellung von Geodaten.

Zur Beschreibung von geographischen Objekten in einem einfachen Datenmodell wurden von OGC eine steigende Zahl von Spezifikationen entwickelt, die spezielle Bedürfnisse der Interoperabilität bedienen, räumliche Informationen und GIS einbezogen. Weitere Informationen können unter http://www.opengeospatial.org/ abgerufen werden.

Important OGC specifications supported by QGIS are:

OGC services are increasingly being used to exchange geospatial data between different GIS implementations and data stores. QGIS can deal with the above specifications as a client, being SFS (through support of the PostgreSQL / PostGIS data provider, see section PostGIS Layer laden).

WMS/WMTS Client

Übersicht über die WMS-Unterstützung

QGIS currently can act as a WMS client that understands WMS 1.1, 1.1.1 and 1.3 servers. In particular, it has been tested against publicly accessible servers such as DEMIS.

A WMS server acts upon requests by the client (e.g., QGIS) for a raster map with a given extent, set of layers, symbolization style, and transparency. The WMS server then consults its local data sources, rasterizes the map, and sends it back to the client in a raster format. For QGIS, this format would typically be JPEG or PNG.

WMS is generically a REST (Representational State Transfer) service rather than a full-blown Web service. As such, you can actually take the URLs generated by QGIS and use them in a web browser to retrieve the same images that QGIS uses internally. This can be useful for troubleshooting, as there are several brands of WMS server on the market and they all have their own interpretation of the WMS standard.

WMS-Layer können sehr einfach hinzugefügt werden, solange man die URL des Servers kennt, eine Verbindung über HTTP zu diesem Server besteht und der angefragte Server auch HTTP versteht.

Überblick über die WMTS Unterstützung

QGIS can also act as a WMTS client. WMTS is an OGC standard for distributing tile sets of geospatial data. This is a faster and more efficient way of distributing data than WMS because with WMTS, the tile sets are pre-generated, and the client only requests the transmission of the tiles, not their production. A WMS request typically involves both the generation and transmission of the data. A well-known example of a non-OGC standard for viewing tiled geospatial data is Google Maps.

Um die Daten in einer Vielzahl von Maßstäben je nach Anforderung darzustellen werden die WMTS Tile Sets in mehreren verschiedenen Maßstäben erstellt und dem GIS Client zur Abfrage bereitgestellt.

Das Diagramm veranschaulicht das Konzept der Tile Sets:

Figure WMTS 1:

../../../_images/concept_wmts.png

Konzept der WMTS Tile Sets

The two types of WMTS interfaces that QGIS supports are via Key-Value-Pairs (KVP) and RESTful. These two interfaces are different, and you need to specify them to QGIS differently.

1) In order to access a WMTS KVP service, a QGIS user must open the WMS/WMTS interface and add the following string to the URL of the WMTS tile service:

"?SERVICE=WMTS&REQUEST=GetCapabilities"

Ein Beispiel für diesen Typ von Adresse ist

http://opencache.statkart.no/gatekeeper/gk/gk.open_wmts?\
  service=WMTS&request=GetCapabilities

Zu Testzwecken funktioniert der topo2 Layer in diesem WMTS gut. Indem man diese Zeichenfolge hinzufügt gibt man an dass ein WMTS Web Service anstatt eines WMS Service benutzt werden soll.

  1. Der RESTful WMTS Service erfordert eine andere Form, eine einfache URL. Das von der OGC empfohlene Format ist:

{WMTSBaseURL}/1.0.0/WMTSCapabilities.xml

This format helps you to recognize that it is a RESTful address. A RESTful WMTS is accessed in QGIS by simply adding its address in the WMS setup in the URL field of the form. An example of this type of address for the case of an Austrian basemap is http://maps.wien.gv.at/basemap/1.0.0/WMTSCapabilities.xml.

Bemerkung

You can still find some old services called WMS-C. These services are quite similar to WMTS (i.e., same purpose but working a little bit differently). You can manage them the same as you do WMTS services. Just add ?tiled=true at the end of the url. See http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification for more information about this specification.

Wenn Sie WMTS lesen können Sie auch an WMS-C denken.

WMS/WMTS Server auswählen

The first time you use the WMS feature in QGIS, there are no servers defined.

Begin by clicking the mActionAddWmsLayer Add WMS layer button on the toolbar, or selecting Layer ‣ Add WMS Layer....

Der Dialog Layer eines WM(T)S-Servers hinzufügen erscheint dann. Sie können zum Ausprobieren aber einige vordefinierte Server hinzufügen, indem Sie auf den Knopf [Vorgegebene Server ergänzen] klicken. Dadurch werden Ihnen zwei WMS Demo Server zur Verfügung gestellt: die WMS Server der DM Solutions Group und von Lizardtech. Um im Reiter Layer einen neuen WMS Server zu definieren wählen Sie [Neu]. Geben Sie dann die Parameter die zur Verbindung benötig werden, ein, so wie es in table_OGC_1 aufgelistet ist:

Name

Ein Name für diese Verbindung. Dieser Name wird in der Serververbindungs Dropdown Box verwendet und kann diese dann von anderen WMS Servern unterscheiden.

URL

URL des Servers der die Daten bereitstellt. Dies muss ein auflösbarer Hostname sein- das gleiche Format das Sie auch benutzen würden um eine Telnetverbindung zu öffnen oder einen Ping an einen Host zu senden.

Benutzername

Benutzername um einen abgesicherten WMS Server anzubinden. Dieser Parameter ist optional.

Passwort

Passwort für einen grundlegend authentifizierten WMS Server. Dieser Parameter ist optional.

Gemeldete GetMap-URI aus Diensteigenschaften ignorieren

checkbox Gemeldete GetMap/GetTile-URI aus Diensteigenschaften ignorieren. Verwenden Sie die vorgegebene URI aus dem URL Feld oben.

Gemeldete GetFeatureInfo-URI ignorieren

checkbox Gemeldete GetFeatureInfo-URI ignorieren. Verwenden Sie die vorgegebene URI aus dem URL Feld oben.

Tabelle OGC 1: WMS Verbindungs-Parameter

If you need to set up a proxy server to be able to receive WMS services from the internet, you can add your proxy server in the options. Choose Settings ‣ Options and click on the Network & Proxy tab. There, you can add your proxy settings and enable them by setting checkbox Use proxy for web access. Make sure that you select the correct proxy type from the Proxy type selectstring drop-down menu.

Once the new WMS server connection has been created, it will be preserved for future QGIS sessions.

Tipp

WMS-Server-URLs

Vergewissern Sie sich beim Eingeben der WMS Server URL dass Sie nur die einfache URL eingeben. Zum Beispiel sollten keine Fragmente wie request=GetCapabilities oder version=1.0.0 enthalten sein.

WMS/WMTS Layer laden

Nachdem Sie erfolgreich Ihre Paramerter eingetragen haben können Sie den [Verbinden] Knopf zum abrufen der Fähigkeiten des ausgewählten Servers verwenden. Dies beinhaltet die Bildkodierung, Layerstile und Projektionen. Da dies eine Netzwerkoperation ist hängt die Schnellingkeit der Antwort von der Qualität Ihrer Netzwerkverbindung zum WMS Server ab. Während Daten vom WMS Server heruntergeladen werden wird der Downloadfortschritt links unten im WMS Dialog visualisiert.

Your screen should now look a bit like figure_OGR_1, which shows the response provided by the European Soil Portal WMS server.

Figure OGR 1:

../../../_images/connection_wms.png

Dialog for adding a WMS server, showing its available layers nix

Bildkodierung

Der Bildkodierung Bereich listet die Formate die sowohl vom Client als auch vom Server unterstützt werden auf. Wählen Sie eines abhängig von Ihren Anforderungen an die Bildqualität aus.

Tipp

Bildkodierung

In der Regel bieten WMS-Server JPEG oder PNG als Bildkodierung an. JPEG hat eine bildverschlechternde Kompression, während PNG zumeist die Qualität der ursprünglichen Rasterdaten widerspiegelt.

Verwenden Sie JPEG wenn Sie damit rechnen das die WMS Daten photographischen Charakter haben und/oder Sie ein Verlust an Bildqualität nicht stört. Dieser Kompromiss reduziert typischerweise die Datentransferbedingungen um das fünffache verglichen mit PNG.

Verwenden Sie PNG wenn Sie eine genaue Wiedergabe der Originaldaten erzielen wollen und die erhöhten Datentransferbedingungen Sie nicht stören.

Optionen

Der Optionen Bereich des Dialogs stellt ein Textfeld zur Verfügung in das Sie einen Layernamen für den WMS Layer hinzufügen können. Dieser Name wird nach dem Laden in der Legende erscheinen.

Unter dem Layernamen können Sie wenn Sie den WMS Request in mehrere Requests aufsplitten wollen die Kachelgröße (z.B. 256x256) definieren.

Die Objektbegrenzung für GetFeatureInfo legt fest welche Attributspalten vom Server abgefragt werden.

Wenn Sie einen WMS aus der Liste wählen erscheint ein Feld mit der Standardprojektion, die vom Mapserver bereitgestellt wird. Ist der [Ändern ...] Knopf aktiv können Sie darauf klicken und die Standardprojektion des WMS in ein anderes vom WMS Server bereitgestelltes KBS ändern.

Finally you can activate checkbox Use contextual WMS-Legend if the WMS Server supports this feature. Then only the relevant legend for your current map view extent will be shown and thus will not include legend items for things you can’t see in the current map.

Layerreihenfolge

Der Reiter Layerreihenfolge listet die vom gerade verbundenen WMS Server ausgewählten Layer auf. Sie stellen vielleicht fest dass einige Layer ausklappbar sind. Das bedeutet dass der Layer in einer Auswahl von Bildstilen dargestellt werden kann.

You can select several layers at once, but only one image style per layer. When several layers are selected, they will be combined at the WMS server and transmitted to QGIS in one go.

Tipp

WMS Layer anordnen

Von einem Server dargestellte WMS Layer werden in der Reihenfolge aus dem Abschnitt Layers von oben bis unten überlagert. Wenn Sie die Layerreihenfolge ändern wollen können Sie den Reiter Layerreihenfolge benutzen.

Transparenz

In this version of QGIS, the Global transparency setting from the Layer Properties is hard coded to be always on, where available.

Tipp

Transparenz von WMS-Layern

Die WMS Bildtransparenz steht Ihnen abhänig von der Bildkodierung zur Verfügung: PNG und GIF unterstützen Transparenz währenddessen JPEG keine Untersützung bietet.

Koordinatenbezugsystem

A coordinate reference system (CRS) is the OGC terminology for a QGIS projection.

Jeder WMS Layer kann abhängig von den Fähigkeiten des WMS in mehreren KBS dargestellt werden.

Um ein KBS auszuwählen wählen Sie [Ändern ...] und ein Dialog ähnlich wie Figure Projection 3 aus Arbeiten mit Projektionen erscheint. Der hauptsächliche Unterschied der WMS-Version ist dass nur die KBS, die vom WMS Server unterstützt werden, gezeigt werden.

Tilesets

Wenn Sie WMTS (gecachte WMS) Dienste verwenden wie

http://opencache.statkart.no/gatekeeper/gk/gk.open_wmts?\
  service=WMTS&request=GetCapabilities

you are able to browse through the Tilesets tab given by the server. Additional information like tile size, formats and supported CRS are listed in this table. In combination with this feature, you can use the tile scale slider by selecting Settings ‣ Panels (KDE and Windows) or View ‣ Panels (Gnome and MacOSX), then choosing Tile scale. This gives you the available scales from the tile server with a nice slider docked in.

Das Objekte abfragen Werkzeug

Once you have added a WMS server, and if any layer from a WMS server is queryable, you can then use the mActionIdentify Identify tool to select a pixel on the map canvas. A query is made to the WMS server for each selection made. The results of the query are returned in plain text. The formatting of this text is dependent on the particular WMS server used.

Formatauswahl

Wenn durch den Server mehrere Formate unterstützt werden wird dem Objekte abfragen Dialog automatisch eine Kombobox mit den unterstützten Formaten hinzugefügt und das ausgewählte Format kann im Projekt für den Layer gespeichert werden.

GML Formatunterstützung

The mActionIdentify Identify tool supports WMS server response (GetFeatureInfo) in GML format (it is called Feature in the QGIS GUI in this context). If “Feature” format is supported by the server and selected, results of the Identify tool are vector features, as from a regular vector layer. When a single feature is selected in the tree, it is highlighted in the map and it can be copied to the clipboard and pasted to another vector layer. See the example setup of the UMN Mapserver below to support GetFeatureInfo in GML format.

# in layer METADATA add which fields should be included and define geometry (example):

"gml_include_items"   "all"
"ows_geometries"      "mygeom"
"ows_mygeom_type"     "polygon"

# Then there are two possibilities/formats available, see a) and b):

# a) basic (output is generated by Mapserver and does not contain XSD)
# in WEB METADATA define formats (example):
"wms_getfeatureinfo_formatlist" "application/vnd.ogc.gml,text/html"

# b) using OGR (output is generated by OGR, it is send as multipart and contains XSD)
# in MAP define OUTPUTFORMAT (example):
OUTPUTFORMAT
    NAME "OGRGML"
    MIMETYPE "ogr/gml"
    DRIVER "OGR/GML"
    FORMATOPTION "FORM=multipart"
END

# in WEB METADATA define formats (example):
"wms_getfeatureinfo_formatlist" "OGRGML,text/html"

Eigenschaften

Nachdem Sie einen WMS Server hinzugefügt haben können Sie sich seine Eigenschaften mit einem Rechtsklick in der Legende und dem Auswählen von Eigenschaften ansehen.

Reiter Metadaten

Der Reiter Metadaten im Kontextmenü zeigt eine Vielzahl von Informationen über den WMS-Server. Diese Infos sind dem Capabilities-Dokument des Servers entnommen. Viele Definitionen können reduziert werden indem man den WMS Standard liest (siehe OPEN-GEOSPATIAL-CONSORTIUM Literatur und Internetreferenzen), hier sind dazu einige praktische Definitionen:

  • Servereigenschaften

    • WMS Version– Die WMS-Version, die vom Server unterstützt wird.

    • Image Formats — The list of MIME-types the server can respond with when drawing the map. QGIS supports whatever formats the underlying Qt libraries were built with, which is typically at least image/png and image/jpeg.
    • Identity Formats — The list of MIME-types the server can respond with when you use the Identify tool. Currently, QGIS supports the text-plain type.
  • Layereigenschaften

    • Ausgewählt — Gibt an, ob dieser Layer während des Hinzufügens des Server ausgewählt war.

    • Visible — Whether or not this layer is selected as visible in the legend (not yet used in this version of QGIS).
    • Kann abfragen — Gibt an, ob der Layer auf Abfragen Ergebnisse zurückgibt.

    • Can be Transparent — Whether or not this layer can be rendered with transparency. This version of QGIS will always use transparency if this is Yes and the image encoding supports transparency.
    • Can Zoom In — Whether or not this layer can be zoomed in by the server. This version of QGIS assumes all WMS layers have this set to Yes. Deficient layers may be rendered strangely.
    • Kaskadierend — WMS-Server können als Proxy zwischen anderen WMS-Servern agieren, um Rasterdaten für einen Layer anzufordern. Dieser Eintrag gibt an, wieviele WMS-Server angefragt werden müssen, um die Daten zu bekommen.

    • Fixed Width, Fixed Height — Whether or not this layer has fixed source pixel dimensions. This version of QGIS assumes all WMS layers have this set to nothing. Deficient layers may be rendered strangely.
    • WGS 84 Bounding Box — The bounding box of the layer, in WGS 84 coordinates. Some WMS servers do not set this correctly (e.g., UTM coordinates are used instead). If this is the case, then the initial view of this layer may be rendered with a very ‘zoomed-out’ appearance by QGIS. The WMS webmaster should be informed of this error, which they may know as the WMS XML elements LatLonBoundingBox, EX_GeographicBoundingBox or the CRS:84 BoundingBox.
    • Verfügbare Koordinatensysteme — Die Projektionen, in denen dieser Layer dargestellt werden kann. Diese sind dem Capabilities-Dokument des Servers entnommen.

    • Verfügbare Stile — Die Bildstile, in denen dieser Layer dargestellt werden kann.

Zeigen der WMS Legendengrafik im Inhaltsverzeichnis und in der Druckzusammenstellung

The QGIS WMS data provider is able to display a legend graphic in the table of contents’ layer list and in the map composer. The WMS legend will be shown only if the WMS server has GetLegendGraphic capability and the layer has getCapability url specified, so you additionally have to select a styling for the layer.

Wenn eine legendGraphic verfügbar ist, wird diese unter dem Layer angezeigt. Sie ist klein und Sie müssen darauf klicken um Sie in Ihrer tatsächlichen Größe (gemäß den QgsLegendInterface Architekturlimitationen) zu öffnen. Das Klicken auf die Legende des Layers öffnet einen Rahmen mit einer Legende in voller Auflösung.

In the print composer, the legend will be integrated at it’s original (dowloaded) dimension. Resolution of the legend graphic can be set in the item properties under Legend -> WMS LegendGraphic to match your printing requirements

Die Legende wird Kontextinformationen basiert auf dem aktuellen Maßstab darstellen. Die WMS Legende wird nur gezeigt wenn der WMS Server eine GetLegendGraphic Capability hat und für dem Layer eine getCapability URL angegeben wurde, also müssen Sie einen Stil auswählen.

Einschränkungen des WMS-Klienten

Not all possible WMS client functionality had been included in this version of QGIS. Some of the more noteworthy exceptions follow.

WMS-Layereigenschaften ändern

Once you’ve completed the mActionAddWmsLayer Add WMS layer procedure, there is no way to change the settings. A work-around is to delete the layer completely and start again.

WMS-Server, die eine Authentifizierung benötigen

Derzeit werden öffentlich zugängliche und gesicherte WMS Services unterstützt. Die gesicherten WMS Server können mit öffentlicher Authentifizierung angebunden werden. Sie können die (optionalen) Anmeldeinformationen hinzufügen wenn Sie einen WMS Server hinzufügen. Schlagen Sie unter Abschnitt WMS/WMTS Server auswählen Details nach.

Tipp

Zugriff auf abgesicherte OGC-Layer

Wenn Sie Zugriff auf OGC-Layer benötigen, die anders als durch einfache, öffentliche Authentifizierung abgesichert sind, können Sie InteProxy als transparenten Proxy verwenden. Dieser unterstützt verschiedene Methoden der Authentifizierung. Weitere Informationen zu diesem Thema finden Sie auf der Webseite http://inteproxy.wald.intevation.org.

Tipp

QGIS WMS Mapserver

Since Version 1.7.0, QGIS has its own implementation of a WMS 1.3.0 Mapserver. Read more about this in chapter QGIS as OGC Data Server.

WCS Client

wcs Ein Web Coverage Service (WCS) stellt eine Anbindung zu Rasterdaten in Formaten die nützlich für die client-seitige Darstellung, als Input für wissenschaftliche Modelle und für andere Clients zur Verfügung. Der WCS ist vergleichbar zu WFS und WMS. Als WMS und WFS Service Instanz erlaubt der WCS den Clients Teile von Serverinformationsbeständen basierend auf räumlichen Einschränkungen und Abfragekriterien auszuwählen.

QGIS has a native WCS provider and supports both version 1.0 and 1.1 (which are significantly different), but currently it prefers 1.0, because 1.1 has many issues (i.e., each server implements it in a different way with various particularities).

The native WCS provider handles all network requests and uses all standard QGIS network settings (especially proxy). It is also possible to select cache mode (‘always cache’, ‘prefer cache’, ‘prefer network’, ‘always network’), and the provider also supports selection of time position, if temporal domain is offered by the server.

WFS und WFS-T Klient

In QGIS, a WFS layer behaves pretty much like any other vector layer. You can identify and select features, and view the attribute table. Since QGIS 1.6, editing WFS-T is also supported.

Im Allgemeinen verhält sich das Hinzufügen eines WFS Layers sehr ähnlich wie die Vorgehensweise die beim WMS verwendet wird. Der Unterschied besteht darin dass keine voreingestellten Server definiert sind, also müssen wir eigene hinzufügen.

Einen WFS-Layer laden

In diesem Beispiel verwenden wir den WFS-Server der Firma DMSolutions und laden einen Layer. Die URL ist: http://www2.dmsolutions.ca/cgi-bin/mswfs_gmap

  1. Klicken Sie auf das wfs WFS-Layer hinzufügen Werkzeug in der Werkzeugleiste. Der Dialog WFS-Layer des Servers hinzufügen erscheint.

  2. Klicken Sie auf [Neu].

  3. Geben Sie ‘DM Solutions’ als Namen ein.

  4. Geben Sie die URL ein (siehe oben).

  5. Klicken Sie [OK].

  6. Choose ‘DM Solutions’ from the Server Connections selectstring drop-down list.
  7. Klicken Sie [Verbinden].

  8. Warten Sie bis die Layerliste aufgefüllt ist.

  9. Wählen Sie den Parks Layer aus der Liste.

  10. Klicken Sie [Hinzufügen] um den Layer zur Karte hinzuzufügen.

Beachten Sie dass auch jede Proxyeinstellung die Sie in Ihren eingestellt haben berücksichtigt wird.

Figure OGR 3:

../../../_images/connection_wfs.png

Adding a WFS layer nix

You’ll notice the download progress is visualized in the lower left of the QGIS main window. Once the layer is loaded, you can identify and select a province or two and view the attribute table.

Es wird nur WFS 1.0.0 unterstützt. Bis zu diesem Zeitpunkt wurde noch nicht sehr umfangreich die Anbindung mit anderen WFS Servern getestet. Wenn Sie Probleme feststellen, zögern Sie bitte nicht, eine Email an das QGIS Projekt zu schicken oder einen Fehlerreport zu schreiben. Sie finden eine Liste möglicher Kontakte in Kapitel Hilfe und Support.

Tipp

WFS-Server finden

You can find additional WFS servers by using Google or your favorite search engine. There are a number of lists with public URLs, some of them maintained and some not.