====== Styled Layer Description (SLD) ====== ===== Description ===== Le standard SLD ajoute de nouvelles fonctionnalités aux standards WMS. Ces ajouts concernent la gestion de la sémiologie des couches côté serveur afin de modifier ou récupérer les styles des couches au niveau du serveur et côté client dans la mesure où il propose un langage XML pour définir la sémiologie d'une couche. Le standard SLD peut être donc découpé en deux parties : * la description sémiologique de rendu des couches en xml ; * la description des requêtes afin d'agir sur les styles côté serveur. Le standard SLD repose sur un autre standard appelé SE (Style Encoding) qui décrit la sémiologie d'une couche en xml. ===== Fonctionnement ===== Comme tout standard, celui du SLD propose une structuration des URL pour réaliser différentes types de requête : * **DescribeLayer :** récupère la description des couches ; * **GetStyles :** récupère les styles au format XML ; * **PutStyles :** envoie des styles au serveur ; * **GetLegendGraphic :** récupère la légende d'une couche au format image. ====Requêtes ==== === DescribeLayer === Permet d'obtenir des informations sur la couche, telle que le type de données (raster, polygon, point ou ligne). === GetStyles === Permet d'obtenir les styles pour chaque couches au format XML. Les paramètres obligatoires sont : * //LAYERS = nomCouche// : nom des couches dont on veut récupérer le style * //VERSION = x.y.z// : numéro de la version du standard à utiliser (1.1.0 par exemple) * //REQUEST = GetStyles// : type de requête Les paramètres optionnels sont : * //SLDVER = 1.0.0// === PutStyles === Modifie le style d'une couche. Les paramètres obligatoires sont : * //VERSION = x.y.z// : numéro de la version du standard à utiliser (1.1.0 par exemple) * //REQUEST = PutStyles// : type de requête * //MODE=// : Les paramètres optionnels sont : * //SLD=// : url vers un fichier SLD à envoyer au serveur * //SLD_BODY=// : description en XML des styles à envoyer au serveur === GetLegendGraphic === Permet d'obtenir une légende au format image. Les paramètres obligatoires sont : * //LAYER =nomCouche// : nom de la couche dont on veut récupérer la légende * //VERSION = 1.1.0// (par exemple) : numéro de la version du standard à utiliser (1.1.0 par exemple) * //REQUEST = GetLegendGraphic//: type de requête * //FORMAT=jpeg// : format de l'image de légende Les paramètres optionnels sont : * //STYLE// : nom du style à utiliser. Ce style doit être définie côté serveur (voir [[wms#les_operations_du_wms|GetCapabilities du standard WMS]] pour récupérer la liste des styles proposés par le service WMS). * //FEATURETYPE// : * //RULE// : Nom de la classe qui sera utilisé comme symbole pour la représentation dans une image comprenant uniquement le symbole (sans texte) * //SCALE// : échelle de réprésentation à utiliser pour la légende (dans le cas où plusieurs niveaux d'échelle sont utilisés pour la représentation) * //SLD// : url vers un fichier SLD à envoyer au serveur * //SLD_BODY// : description en XML des styles à envoyer au serveur * //WIDTH// : largeur de la légende * //HEIGHT// : hauteur de la légende * //EXCEPTIONS// : gestion des erreurs (image blanche, code xml, erreur dans une image) Voici un exemple de requête //GetLegendGraphic// issu de l'exemple [[wms#les_operations_du_wms|GetMap du standard WMS]] : http://oceanwatch.pfeg.noaa.gov/thredds/wms/SODA/2.0.3?SERVICE=SLD&VERSION=1.1.0&REQUEST=GetLegendGraphic&LAYER=temp&LAYERS=temp&STYLES=&EXCEPTIONS=application%2Fvnd.ogc.se_inimage&FORMAT=image%2Fjpeg&WIDTH=256&HEIGHT=256 ===== SLD et WMS ===== Comme dit dans l'introduction le standard SLD permet d'étendre le standard WMS. On retrouve ainsi le paramètre //SLD// ou //SLD_BODY// dans les requêtes WMS compatible SLD. Ces deux paramètres exclusifs l'un l'autre permettent de définir la sémiologie d'une couche via respectivement un fichier SLD disponible par Internet (paramètre //SLD//) et directement en XML dans l'URL (paramètre //SLD_BODY//). ===== Bibliographie ===== - http://www.opengeospatial.org/standards/sld - WMS et Représentation multiples - Intégration de la spécification SLD dans le Géoproxy; Travail de semestre de Nicolas Ferreira - HEIG-VD (2008): http://www.asitvd.ch (publication / rapports) [<<<>>>]