Important

Translation is a community effort you can join. This page is currently translated at 67.31%.

23. Travailler avec les protocoles OGC / ISO

L’OGC (Open Geospatial Consortium) est une organisation internationale à laquelle participent plus de 300 organisations commerciales, gouvernementales, associatives et laboratoires de recherche à travers le monde. Ses membres développent et implémentent des standards pour les services et le contenu géospatial, le traitement de données SIG et les formats d’échange.

Describing a basic data model for geographic features, an increasing number of specifications are developed by OGC to serve specific needs for interoperable location and geospatial technology, including GIS. Further information can be found at https://www.ogc.org/.

Les spécifications importantes de l’OGC prises en charge par QGIS sont :

Les services OGC sont de plus en plus utilisés pour échanger des données géospatiales entre différentes implémentations SIG et des fournisseurs de données. QGIS peut maintenant traiter les spécifications citées ci-dessus dont le SFS (via PostgreSQL / PostGIS, voir section Couches PostGIS).

Vous pouvez également partager vos cartes et données via les protocoles WMS, WMTS, WFS, WFS-T et WCS en utilisant un serveur web avec QGIS Server, UMN MapServer ou GeoServer installé.

23.1. Client WMS / WMTS

23.1.1. Aperçu de la gestion du WMS

QGIS peut actuellement agir comme client WMS pour les versions 1.1, 1.1.1 et 1.3 des serveurs WMS. Il a été tout particulièrement testé avec des serveurs accessibles publiquement comme ceux de DEMIS.

Un serveur WMS agit en fonction des requêtes envoyées par le client (par exemple QGIS) pour une carte raster avec une étendue donnée, un ensemble de couches, une sémiologie et une transparence. Le serveur WMS consulte alors ses sources de données locales, rasterise la carte et la renvoie au client dans un format raster. Pour QGIS, cela sera par exemple du JPEG ou du PNG.

Un WMS est de manière générale un service web mis en œuvre selon une architecture REST (Representational State Transfer) plutôt qu’un service RPC (Remote Procedure Call) pleinement déployé. De cette façon, vous pouvez copier les adresses générées par QGIS et les coller dans un navigateur internet pour retrouver les mêmes images que dans QGIS. Cela peut être très pratique pour résoudre des problèmes, car de fait il y a plusieurs modèles de serveur WMS sur le marché, chacun ayant son interprétation du standard WMS.

Des couches WMS peuvent être ajoutées assez simplement, du moment que vous connaissez l’URL pour accéder au serveur WMS, vous avez une connexion sous forme de service sur ce serveur, et celui-ci comprend le protocole HTTP comme mécanisme de transport.

Additionally, QGIS will cache your WMS responses (i.e. images) for 24h as long as the GetCapabilities request is not triggered. The GetCapabilities request is triggered every time the Connect button in the WMS/WMTS dialog is used to retrieve the WMS server capabilities. This is an automatic feature meant to optimize project loading time. If a project is saved with a WMS layer, the corresponding WMS tiles will be loaded from the cache the next time the project is opened as long as they are not older than 24h.

23.1.2. Aperçu du support WMTS

QGIS peut aussi agir comme client WMTS. WMTS est un standard OGC de diffusion des données cartographiques sous formes de tuiles prédéfinies. C’est un moyen de diffusion plus rapide et plus efficient que le standard WMS car les tuiles sont générées à l’avance et les requêtes clientes ne portent que sur la transmission des tuiles, non leur production. A contrario, une requête WMS implique à la fois la génération des données et leur transmission. Un exemple bien connu d’utilisation de données cartographiques tuilées, non conforme au standard OGC, est Google Maps.

Afin d’afficher des données à différentes échelles proches de celles souhaitées par l’utilisateur, les dalles WMTS sont produites à différents niveaux d’échelle et peuvent être demandées par une application SIG cliente.

Ce diagramme illustre le concept de tuiles prédéfinies:

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

Fig. 23.1 Le concept de tuiles prédéfinies WMTS

Les deux types d’interfaces WMTS que QGIS gère sont les paires clef-valeurs (KVP) et RESTful. Ces deux interfaces sont différentes et vous devrez les paramétrer de manière différente dans QGIS.

  1. Pour accéder à un service WMTS KVP, l’utilisateur doit ouvrir l’interfaces WMS/WMTS et ajouter la chaîne de caractères suivante à l’URL du service de tuile WMTS :

    "?SERVICE=WMTS&REQUEST=GetCapabilities"
    

    An example of this type of address is:

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

    Pour les tests, la couche topo2 de ce WMTS fonctionne correctement. Ajouter cette chaîne indique que le service web WMTS est utilisé à la place du service WMS.

  2. Le service RESTful WMTS prend la forme différente d’une URL classique. Le format recommandé par l’OGC est le suivant:

    {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:

    https://maps.wien.gv.at/basemap/1.0.0/WMTSCapabilities.xml
    

Note

Vous pouvez encore trouver de vieux services nommés WMS-C. Ces services sont proches du WMTS (même objectif mais fonctionnement différent). Vous pouvez les gérer de la même manière que les services WMTS. Ajoutez seulement ?tiled=true à la fin de l’url. Consultez https://wiki.osgeo.org/wiki/Tile_Map_Service_Specification pour plus d’informations sur cette spécification.

Lorsque vous lisez WMTS, vous pouvez également penser WMS-C.

23.1.3. Sélection des serveurs WMS/WMTS

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

Vous devez ensuite créer des connexions vers le serveur que vous visez :

  1. Allez dans l’onglet wms WMS/WMTS du dialogue Gestionnaire sources de données, soit par

    • en cliquant sur le bouton dataSourceManager Ouvrir le gestionnaire de source de données (ou en appuyant sur Ctrl+L) et en activant l’onglet

    • en cliquant sur le bouton addWmsLayer Ajouter couche WMS sur la barre d’outils Gestion des couches

    • ou en sélectionnant Couche ► Ajouter couche ► addWmsLayer Ajouter couche WMS/WMTS …

  2. Appuyez sur Nouveau dans l’onglet Couches. La boîte de dialogue Créer nouvelle connexion WMS/WMTS… apparaît.

    Astuce

    Faites un clic droit sur l’entrée wms WMS/WMTS dans le panneau de navigation Browser panel et sélectionnez Nouvelle connexion… ouvre également le dialogue Créer une nouvelle connexion WMS/WMTS….

  3. Entrez ensuite les paramètres pour vous connecter au serveur WMS de votre choix, comme indiqué ci-dessous :

    ../../../_images/add_connection_wms.png

    Fig. 23.2 Créer une connexion à un serveur WMS

    • Nom : Un nom pour la connexion. Ce nom sera utilisé dans la liste déroulante Connexions aux serveurs afin que vous puissiez le distinguer des autres serveurs WMS.

    • URL : URL du serveur qui fournit les données. Il doit s’agir d’un nom d’hôte résolvable – le même format que celui que vous utiliseriez pour ouvrir une connexion telnet ou pinger un hôte, c’est-à-dire l’URL de base uniquement. Par exemple, vous ne devez pas avoir de fragments tels que request=GetCapabilities ou version=1.0.0 dans votre URL.

    • Authentification (optionnel) : en utilisant une stored configuration ou une authentification de base avec Nom d’utilisateur et Mot de passe.

      Avertissement

      Saisir le nom utilisateur et le mot de passe dans l’onglet Authentification gardera les identifiants non protégés dans la configuration de connexion. Ces identifiants seront visibles si, par exemple, vous partagez le fichier du projet avec quelqu’un. Il est donc recommandé de sauver vos identifiants dans une configuration d’authentification (onglet Configurations). Voir Système d’authentification pour plus de détails.

    • HTTP Referer

    • WMS DPI-Mode: Available options are all, off, QGIS, UMN and GeoServer

    • WMTS server-side tile pixel ratio: When rendering WMTS layers, allows to scale up or down the tiles based on the device screen DPI. Available options are Undefined (not scaled), Standard (96 DPI) and High (192 DPI).

    • unchecked Ignore GetMap/GetTile/GetLegendGraphic URI reported in capabilities: if checked, use given URI from the URL field above.

    • unchecked Ignorer GetFeatureInfo URI affiché dans capacités : si coché, utilisez l’URI donné dans le champ URL ci-dessus.

    • unchecked Ignorer l’étendue de la couche rapporté : parce que l’étendue rapportée par les couches raster peut être inférieure à la zone réelle qui peut être rendue (notamment pour les serveurs WMS dont la symbologie prend plus de place que l’étendue des données), cochez cette option pour éviter de recadrer les couches raster à leur étendue rapportée, ce qui entraînerait des symboles tronqués sur les bords de ces couches.

    • unchecked Ignorer axe d’orientation (WMS 1.3/WMTS)

    • unchecked Inverser l’orientation de l’axe

    • unchecked Transformation lisse Pixmap

  4. Presser OK

Once the new WMS/WMTS server connection has been created, it will be preserved for future QGIS sessions. Note that it is also possible to Load the connection parameters from a .XML file or Save them to a .XML file.

Si vous devez mettre en place un serveur proxy pour pouvoir recevoir des services WMS depuis internet, vous pouvez ajouter votre serveur proxy dans les options. Choisissez Paramètres ► Options et cliquez sur l’onglet Réseau. Là, vous pouvez ajouter vos paramètres de proxy et les activer en définissant checkbox Utiliser proxy pour accéder à internet. Assurez-vous que vous sélectionnez le type de proxy correct dans le menu déroulant type Proxy selectString.

23.1.4. Chargement des couches WMS/WMTS

Une fois que vous avez rempli vos paramètres avec succès, vous pouvez utiliser le bouton Connecter pour récupérer les capacités du serveur sélectionné. Cela inclut l’encodage des images, les couches, les styles de couches et les projections. Comme il s’agit d’une opération en réseau, la vitesse de réponse dépend de la qualité de votre connexion réseau au serveur WMS. Pendant le téléchargement des données du serveur WMS, la progression du téléchargement est visualisée dans le coin inférieur gauche de la boîte de dialogue principale de QGIS.

Votre écran devrait maintenant ressembler un peu à Fig. 23.3, qui montre la réponse fournie par un serveur WMS.

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

Fig. 23.3 Dialogue pour l’ajout d’un serveur WMS, avec filtre sur les couches disponibles

La partie supérieure de l’onglet Couches du dialogue montre une structure arborescente qui peut inclure des groupes de couches incorporant des couches avec leur(s) style(s) d’image associé(s) servi par le serveur. Chaque élément peut être identifié par :

  • un ID

  • un Nom.

  • un Titre

  • et un Résumé.

La liste peut être filtrée en utilisant le widget search dans le coin supérieur droit.

Format d’image

La section Format d’image liste les formats qui sont gérés à la fois par le client et leur serveur. Choisissez en fonction de votre besoin de précision de l’image.

Astuce

Format d’image

Les serveurs WMS vous offriront typiquement le choix entre les formats d’image JPEG et PNG. Le JPEG est un format de compression avec perte alors que le PNG reproduit fidèlement les données raster brutes.

Utilisez le JPEG si vous vous attendez à ce que les données WMS soient de nature photographiques et/ou si vous acceptez une perte de qualité dans l’image. Ce compromis réduit généralement de cinq fois le temps de transfert des données par rapport au PNG.

Utilisez le PNG si vous voulez une représentation précise des données d’origine, et vous acceptez des temps de transfert des données plus longs.

Options

La zone Options du dialogue permet de configurer les demandes WMS. Vous pouvez les définir :

  • Taille tuile si vous voulez définir des tailles de tuiles (par exemple, 256x256) pour diviser la requête WMS en plusieurs requêtes.

  • Request step size: if you want to reduce the effect of cut labels at tile borders, increasing the step size creates larger requests, fewer tiles and fewer borders. The default value is 2000.

  • The Maximum number of GetFeatureInfo results from the server

  • Each WMS layer can be presented in multiple CRSs, depending on the capability of the WMS server. If you select a WMS from the list, a field with the default projection provided by the web server appears. Press the setProjection Select CRS widget to replace the default projection of the WMS with another CRS supported by the WMS server.

    A dialog similar to the one shown in Fig. 10.4 will appear. The main difference with the WMS version of the dialog is that only those CRSs supported by the WMS server will be shown.

  • Enfin, vous pouvez activer checkbox Utiliser la légende contextuelle du flux WMS si le serveur WMS supporte cette fonctionnalité. Dans ce cas, seule la légende correspondant à l’étendue de votre vue de la carte actuelle sera affichée et n’inclura donc pas les éléments de légende pour les éléments que vous ne pouvez pas voir dans la carte actuelle.

En bas de la boîte de dialogue, un champ texte Nom couche affiche le Titre de l’élément sélectionné. Vous pouvez changer le nom à votre guise. Ce nom apparaîtra dans le panneau Couches après que vous ayez appuyé sur le bouton Ajouter et chargé la ou les couches dans QGIS.

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, as a single layer. The default name is a slash (/) separated list of their original title. You can however opt to checkbox Load as separate layers.

Ordre des couches

L’onglet Ordre couche énumère les couches sélectionnées disponibles à partir du serveur WMS actuellement connecté.

Les couches WMS rendues par un serveur sont superposées dans l’ordre indiqué dans l’onglet Couches, du haut vers le bas de la liste. Si vous souhaitez modifier l’ordre de superposition, vous pouvez utiliser les boutons Haut et Bas de l’onglet Ordre des couches.

Transparence

Le paramètre Transparence générale des Propriétés de la couche est codé en dur pour être toujours activé, lorsqu’il est disponible .

23.1.5. Jeux de Tuiles

When using WMTS (Cached WMS) services 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.

# example of WMTS service

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

Selecting a layer to load, it is also possible to apply an Interpretation method, converting it into a raster layer of single band float type, ready for styling using QGIS usual raster renderers.

In combination with this feature, you can use the tile scale slider by selecting View ► Panels ( or kde Settings ► Panels), then choosing Tile Scale Panel. This gives you the available scales from the tile server with a nice slider docked in.

23.1.6. Utiliser l’outil Identifier

Une fois que vous avez ajouté un serveur WMS et si une couche du serveur WMS est interrogeable, vous pouvez utiliser l’outil identify Identifier pour sélectionner un pixel sur la carte. Une requête est envoyée au serveur WMS pour chaque sélection effectuée. Les résultats de la requête sont renvoyés au format texte. Le formatage de ce texte dépend du serveur WMS utilisé.

Sélection du format

Si le serveur gère plusieurs formats de sortie, une liste déroulante des format gérés est automatiquement ajoutée à la boîte de dialogue des résultats et le format sélectionné peut être stocké dans le fichier de projet pour la couche.

Support du format GML

L’outil d”identification identify gère les réponses des serveurs WMS (GetFeatureInfo) au format GML (intitulé Entité dans l’interface graphique de QGIS). Si le format « Entité est géré par le serveur et qu’il est sélectionné, les résultats de l’outil d’identification sont des entités vecteur, comme s’il s’agissait d’une couche vecteur normale. Lorsqu’une seule entité est sélectionnée dans l’arbre, elle est mise en valeur dans la carte et elle peut être copié dans le presse-papier et copiée dans une autre couche vecteur. Consultez l’exemple de gestion de GetFeatureInfor au format GML pour UMN Mapserver ci-dessous.

# 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 sent 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"

23.1.7. Viewing Properties

Once you have added a WMS server, you can view its properties by right-clicking on it in the legend and selecting Properties. The WMS/WMTS layer properties is much like the raster layer properties so you will find detailed description at Fenêtre Propriétés d’une couche raster. However, there are some differences, which will be explained below.

23.1.7.1. Information properties

Onglet Métadonnées

L’onglet Métadonnées affiche la richesse des informations du serveur WMS, généralement collectées à partir de la requête capabilities renvoyée par le serveur. Beaucoup de définitions peuvent être obtenues par la lecture des normes WMS (voir OPEN-GEOSPATIAL-CONSORTIUM Bibliographie), mais en voici quelques-unes :

  • Propriétés du serveur

    • Version du WMS — La version de WMS gérée par le serveur.

    • Formats d’image — La liste des types MIME que le serveur peut renvoyer lors qu’il dessine la carte. QGIS gère tous les formats pour lesquelles la bibliothèque Qt en sous-couche a été compilée, qui sont à minima les types image/png et image/jpeg.

    • Formats de l’outil Identitier — La liste des types MIME auxquels le serveur peut répondre quand vous utilisez l’outil Identifier. Pour l’instant QGIS gère le type text-plain.

  • Propriétés de la couche

    • Selectionnée — Si la couche a été sélectionnée quand le serveur correspondant a été ajouté au projet.

    • Visible — Si cette couche a été sélectionnée comme visible dans la légende (pas encore utilisé dans cette version de QGIS).

    • Peut identifier — Si cette couche retournera des résultats quand l’outil Identifier est utilisé sur celle-ci.

    • Peut être transparente — Si cette couche peut être rendue avec une transparence. Cette version de QGIS utilisera toujours la transparence si cette option est à Oui et que le format d’image gère la transparence.

    • Peut zoomer — Si on peut zoomer sur cette couche avec le serveur. Cette version de QGIS suppose que toutes les couches WMS ont ce paramètre défini à Oui. Les couches déficientes seront peut-être rendues d’une manière étrange.

    • Décompte des cascades — Les serveurs WMS peuvent agir comme un proxy à d’autres serveurs WMS pour obtenir des données pour une couche. Cette entrée affiche le nombre de fois où la requête pour cette couche est redirigée vers un autre serveur WMS pour obtenir un résultat.

    • Largeur fixe, hauteur fixe — Si les pixels sources d’une couche ont des dimensions fixes. Cette version de QGIS suppose que toutes les couches WMS ont ce paramètre non fixé. Les couches déficientes seront peut-être rendues d’une manière étrange.

    • Emprise en WGS 84 — La limite du contour de la couche, en coordonnées WGS 84. Certains serveurs WMS ne définissent pas ceci correctement (par exemple, des coordonnées UTM sont utilisées à la place). Si cela est le cas, alors la vue initiale sera rendue avec une vue très étendue. Le webmaster du WMS doit être informé de cette erreur sur ce paramètre qui est certainement connu en tant qu’éléments XML du WMS LatLonBoundingBox, EX_GeographicBoundingBox ou the CRS:84 BoundingBox.

    • Disponibilité des SCR — Les projections que l’on peut utiliser via le serveur WMS. Elles sont listées dans le format natif du WMS.

    • Disponibilité des styles — Les styles d’images que le serveur WMS peut utiliser pour le rendu de cette couche.

23.1.7.2. Temporal properties

Raster temporal properties (namely Dynamic Temporal Control) can be set for WMS and WMTS layers. By default, when a time-dimension enabled WMS or WMTS layer is added to the project, it is indicated in the Layers panel with the indicatorTemporal Temporal Layer icon next to it. Its Temporal properties default to the Automatic temporal mode, meaning that the layer will follow the temporal controller’s current time range by default.

You can then opt to show a specific static time value for the layer by unchecking Dynamic Temporal Control and picking an option under Static WMS-T Temporal Range:

  • Server default

  • Predefined date with a server exposing data for non-contiguous temporal ranges or Predefined range with a server exposing a range of available dates. A Start date and End date are necessary in the latter case. Their expected formatting can be deduced from the reference time option (see below). depending on whether the provider has data for contiguous period or not

  • Follow project’s temporal range as defined in the project’s properties dialog

../../../_images/temporal_properties.png

Fig. 23.4 Temporal properties of a WMTS layer

Whatever temporal data control is in use, there are some WMS-T Settings to help display the correct temporal data:

  • Time slice mode which can be:

    • Use whole temporal range

    • Match to start of range

    • Match to end of range

    • Closest match to start of range

    • Closest match to end of range

  • Ignore time components (use dates only): If checked, the time component of temporal queries will be discarded and only the date component will be used in server requests.

You can also checkbox Use Specific WMS-T Reference Time picked from times reported in the layer’s capabilities. Convenient for servers which expose a non-contiguous set of date time instances (instead of a range of dates).

23.1.7.3. QGIS Server properties

In addition to the raster layer properties, publishing a WMS/WMTS layer with QGIS Server will display following options:

  • WMS Print layer: Allows to set alternative WMS layer that should be used for printing (in the GetProjectSettings reply). Convenient for WMTS layers that are generally not suitable for printing.

  • checkbox Publish WMS/WMTS data source uri: Allows a web client to fetch the WMS/WMTS data directly

  • checkbox Advertise as background layer

../../../_images/server_properties.png

Fig. 23.5 QGIS Server properties of a WMS/WMTS layer

23.1.8. Afficher la légende WMS dans la liste des couches et dans les mises en page

Le fournisseur de données WMS de QGIS est capable d’afficher une légende dans la liste des couches ainsi que dans une mise en page de cartes. La légende WMS sera affichée uniquement si le serveur dispose de l’option GetLegendGraphic et si la couche dispose de l’url getCapability pour que vous puissiez choisir un style pour cette couche.

Si une légende graphique est disponible, elle est affichée sous la couche. Elle est de faible taille et vous devez cliquer dessus pour l’afficher complètement (dû à une limite d’architecture de QgsLegendInterface). Cliquer sur la légende de la couche ouvrira une fenêtre avec la légende en pleine résolution.

Dans la mise en page de cartes, la légende sera intégrée à sa dimension originale (téléchargement). La résolution de la légende graphique peut être paramétrée dans les propriétés de l’objet sous Légende -> Légende WMS (LegendGraphic) pour correspondre à vos besoins d’impression.

La légende affichera une information contextuelle basée sur l’échelle courante. La légende WMS sera affichée uniquement si le serveur WMS dispose de la fonction GetLegendGraphic et si la couche dispose d’une url getCapability pour pouvoir choisir son style.

23.2. Client WCS

wcs Un service Web Coverage (WCS) fournit un accès à des données raster sous une forme qui permet le rendu côté client, comme une entrée vers des modèles scientifiques. WCS peut être comparé à WFS et WMS. Comme ces services, WCS permet aux clients de choisir des portions de données issues du serveur basées sur des contraintes spatiales et d’autres critères de recherche.

QGIS dispose d’un fournisseur WCS natif qui gère les versions 1.0 et 1.1 (qui sont significativement différentes) mais la version 1.0 est privilégiée car la version 1.1 pose beaucoup de problèmes (chaque serveur l’implémente de manière différente avec beaucoup de particularités).

Le fournisseur WCS natif gère l’ensemble des requêtes réseau et utilise les paramètres réseau de QGIS (particulièrement le proxy). Il est également possible d’utiliser un mode cache (“toujours en cache”, “préférer le cache”, “préférer le réseau”, “toujours le réseau”) et le fournisseur gère également la sélection dans le temps si un domaine de temps est fourni par le serveur.

Avertissement

Taper le nom utilisateur et le mot de passe dans l’onglet Authentification gardera les identifiants non protégés dans la configuration de connexion. Ces identifiants seront visibles si, par exemple, vous partagez le fichier du projet avec quelqu’un. Il est donc recommandé de sauver vos identifiants dans une configuration d’authentification (onglet configurations). Voir Système d’authentification pour plus de détails.

23.3. Client WFS et WFS-T

In QGIS, a WFS layer behaves pretty much like any other vector layer. You can identify and select features, and view the attribute table. QGIS supports WFS 1.0.0, 1.1.0, 2.0 and OGC API - Features (OAPIF), including editing (through WFS-T). QGIS also supports background download and progressive rendering, on-disk caching of downloaded features and version autodetection.

Layers of servers implementing OGC API - Features - Part 4: Create, Replace, Update and Delete can be turned into editing mode to allow creating, modifying and deleting features. Note that each created/modified/deleted feature requires a dedicated network request, so performance might suffer in case of simultaneous modification of hundreds or more features at a time.

En général, l’ajout d’une couche WFS est très similaire à la procédure utilisée avec le WMS. Aucun serveur par défaut n’est défini, vous devez donc ajouter le vôtre. Vous pouvez trouver des serveurs WFS en utilisant le plugin MetaSearch plugin ou votre moteur de recherche web préféré. Il existe un certain nombre de listes avec des URL publiques, dont certaines sont maintenues et d’autres non.

Charger une couche WFS

As an example, we use the Gateway Geomatics WFS server and display a layer.

https://demo.gatewaygeomatics.com/cgi-bin/wfs_gateway?REQUEST=GetCapabilities&VERSION=1.0.0&SERVICE=WFS

Pour pouvoir charger une couche WFS , il faut d’abord créer une connexion au serveur WFS :

  1. Ouvrez la fenêtre du Gestionnaire des sources de données en cliquant sur le bouton dataSourceManager Ouvrir le Gestionnaire des sources de données

  2. Enable the addWfsLayer WFS / OGC API - Features tab

  3. Cliquez sur Nouveau pour ouvrir la fenêtre Créer une nouvelle connexion WFS.

  4. Tapez Gateway Geomatics pour le nom.

  5. Entrez l’URL (voir ci-dessus)

    ../../../_images/add_connection_wfs.png

    Fig. 23.6 Créer une connexion à un serveur WFS

    Note

    In case of an OGC API - Features (OAPIF), the URL to provide should be the landing page, ie the main page from which it is possible to navigate to all the available service endpoints.

  6. Dans les options WFS, vous pouvez :

    • Indiquer la version du serveur WFS. Si elle n’est pas connue, cliquez sur le bouton Détecter pour la récupérer automatiquement.

    • Définir le Nombre max d’entités à récupérer dans chaque requête GetFeature. Si cette information est vide, il n’y aura pas de limite.

    • And depending on the WFS version, indicate whether to:

      • Activer la pagination des objets et spécifier le nombre maximal d’entités à récupérer avec la Taille de la page. Si rien n’est défini, la valeur par défaut du serveur est utilisée.

      • Ignorer l’orientation d’axe (WFS 1.1/WFS 2.0)

      • Inverser l’axe d’orientation.

      • Use GML2 encoding for transactions.

    Avertissement

    Saisir le nom utilisateur et le mot de passe dans l’onglet Authentification gardera les identifiants non protégés dans la configuration de connexion. Ces identifiants seront visibles si, par exemple, vous partagez le fichier du projet avec quelqu’un. Il est donc recommandé de sauver vos identifiants dans une configuration d’authentification (onglet Configurations). Voir Système d’authentification pour plus de détails.

  7. Cliquez sur OK pour créer la connexion.

Note that any proxy settings you may have set in your preferences are also recognized. Also note that it is possible to Load the connection parameters from a .XML file or Save them to a .XML file.

Nous pouvons maintenant charger des couches WFS depuis la connexion définie ci-dessus.

  1. Choose “Gateway Geomatics” from the Server Connections drop-down list.

  2. Cliquez sur Connexion.

  3. Cliquez sur la couche Parks dans la liste

  4. Vous pouvez également choisir de :

    • unchecked Utiliser le titre comme nom de la couche, ce qui affichera le titre défini par le serveur dans le panneau Couches à la place de son Nom.

    • checkbox Requêter uniquement les entités dans la vue courante

    • Change… the layer’s CRS to any other supported by the service

    • or build a query to specify particular features to retrieve from the service: double-click on the row of the layer to open the SQL Query Composer dialog. That dialog provides widgets to write an advanced SQL query relying on available tables and columns of the service, with sorting and filtering and a bunch of SQL functions, spatial predicates and operators.

      The query you build will appear after validation in the SQL column within the WFS / OGC API - Features table, and the filtered layer will display the indicatorFilter icon next to it in the Layers panel. It is thus possibe to adjust the query at any moment.

  5. Cliquez sur Ajouter pour ajouter la couche à la carte.

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

Fig. 23.7 Ajout d’une couche WFS

Vous remarquerez que la progression du téléchargement est affichée en bas à gauche de la fenêtre principale de QGIS. Une fois que la couche est chargée, vous pouvez identifier et sélectionner des entités et visualiser la table d’attributs.