OGC - WMS

Présentation du standard WMS de l’OGC

Présentation générale

WMS signifie Web Map Service / Service Internet Cartographique. Il s’agit d’un standard international de l’OGC (Open Geospatial Consortium). Le présent document traite de la version 1.3.0 de WMS.

D’autres standards sont associés à WMS 1.3.0 :

  • à compléter…

Concepts

Concept Traduction Description
Service Service Programme répondant à des requêtes.
Capabilities Capacités Description des capacités du service. Un service WMS doit être en mesure de décrire ses capacités. Elles sont fournies dans un document XML en réponse à une requête GetCapabilities.
Layer Couche Sous-ensemble de l’information géographique qu’un service WMS peut exposer. Un service WMS peut exposer plusieurs couches. Celles-ci peuvent être organisées conceptuellement sous la forme d’une arborescence : une couche peut être une composition de plusieurs couches.
Style Style Représentation graphique appliquée à une couche.

Requêtes

Liste des requêtes supportées

Requête Obligatoire ? Description
GetCapabilities Oui Fournit le document des capacités du service.
GetMap Oui Fournit une image d’une couche.
GetFeatureInfo Non Fournit des informations descriptives des données présentes à proximité de coordonnées sur une image produite par une requête GetMap.

Remarques :

  • HTTP GET et POST peuvent être utilisés pour interroger un service WMS. Un service WMS doit obligatoirement être en mesure de répondre à des requêtes GET. Le support des requêtes POST est optionnel.
  • Un service WMS implémentant GetCapabilities et GetMap est de type Basic WMS.
  • Un service WMS implémentant GetFeatureInfo est de type Queryable WMS.

Paramètres récurrents

service

version

request

format

Respect de la casse

Les noms des paramètres des requêtes ne sont pas sensibles à la casse : vous pouvez les écrire en majuscules ou minuscules, voire mélanger les deux.

Les valeurs des paramètres des requêtes sont sensibles à la casse : vous devez respectez strictement l’usage des majuscules et minuscules.

Exemples :
- [...]&service=WMS est correct
- [...]&SERVICE=WMS est correct
- [...]&SeRvIcE=WMS est correct
- [...]&service=wms est incorrect

Néanmoins, certains serveurs WMS sont plus tolérants que les spécifications. Il est donc possible que certaines requêtes incorrectes sur le papier renvoient une réponse correcte.

GetCapabilities

Objectif : Récupérer le document des capacités du service.

Paramètres de la requête

Paramètre Obligatoire ? Description Valeurs autorisées
VERSION Non Version du standard WMS. 1.3.0
SERVICE Oui Type de service. WMS
REQUEST Oui Nom de la requête. GetCapabilities
FORMAT Non Format de sortie à appliquer à la réponse sous la forme d’un type MIME. Valeur par défaut : text/xml
UPDATESEQUENCE Non Identifiant de version des capabilities utilisé pour la réexploitation du cache. N’importe quelle chaîne de caractères{.caption}

Exemples de requêtes
- https://osm.geo2france.fr/maps/osm-default?service=WMS&request=GetCapabilities
- https://osm.datagrandest.fr/wxs/mapserv?map=/maps/osm-default.map&service=WMS&request=GetCapabilities
- https://osm.datagrandest.fr/wxs/mapserv?map=/maps/osm-default.map&service=WMS&request=GetCapabilities&version=1.3.0

GetMap

Objectif : Récupérer une image d’une ou plusieurs couches sur une zone géographique déterminée.

Paramètres de la requête

Paramètre Obligatoire ? Description Valeurs autorisées
VERSION Oui Version du standard WMS 1.3.0
SERVICE Oui Type de service WMS
REQUEST Oui Nom de la requête GetMap
LAYERS Oui Liste des noms des couches qui doivent composer l’image à produire. Les noms des couches doivent être séparés par des virgules.
STYLES Oui Liste des noms des styles à appliquer à chacune des couches présentes dans le paramètre LAYERS. L’ordre des éléments de STYLES doit correspondre à celui des éléments de LAYERS.
CRS Oui Identifiant du système de coordonnées dans lequel doit être produit l’image.
BBOX Oui Emprise géographique de l’image à produire (exprimée dans le système de coordonnées désigné par le paramètre CRS.
FORMAT Oui Format de l’image à produire sous la forme d’un type MIME. Exemples : image/png, image/jpeg
WIDTH Oui Largeur en pixels de l’image à produire. Nombres entiers naturels
HEIGHT Oui Hauteur en pixels de l’image à produire. Nombres entiers naturels
TRANSPARENT Non Indique si le fond de l’image produite doit être transparente. TRUE ou FALSE. Par défaut : FALSE
BGCOLOR Non Couleur à appliquer au fond de l’image. Couleur RVB encodée en hexadécimal. Valeur par défaut : 0xFFFFFF (blanc)
EXCEPTIONS Non Format utilisé pour les exceptions produites par le service WMS. Valeurs autorisées : XML, INIMAGE, BLANK. Valeur par défaut : XML
TIME Non Position sur l’axe temporel pour laquelle l’image doit être produite. Ne s’applique qu’aux couches pour lesquelles la dimension temporelle a un sens.
ELEVATION Non Position sur l’axe correspond à la 3e dimension pour laquelle l’image doit être produite. Ne s’applique qu’aux couches pour lesquelles la 3e dimension a un sens.

Exemples de requête
à compléter…

GetFeatureInfo

Objectif : Récupérer des informations descriptives des données présentes à proximité de coordonnées sur une image produite par une requête GetMap.

Paramètres de la requête
à compléter…

Exemples de requêtes
à compléter…

Structure des Capabilities

Différences avec WMS 1.1.1

Particularités des implémentations

GeoServer

MapServer

QGIS Server

Bonnes pratiques

Côté serveur

Systèmes de coordonnées

Format

Métadonnées

Noms et titres

Styles

Cache

Description lisible par un humain

Côté client

Tuilage

Système de coordonnées

Dimension des images

Format des images