From edb4a36623d5c4ecebb89678cee306ccd5e1576a Mon Sep 17 00:00:00 2001 From: Tor-Einar Skog <tor-einar.skog@nibio.no> Date: Tue, 28 Nov 2023 15:57:24 +0100 Subject: [PATCH] Add WMS query template docs --- grid_models.md | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/grid_models.md b/grid_models.md index 89a3bd9..b937208 100644 --- a/grid_models.md +++ b/grid_models.md @@ -55,6 +55,13 @@ $ gdal_translate -ot Int16 -of GTiff -b 1 NETCDF:"tmp/result.nc":WARNING_STATUS ### Set up a WMS (Web Map Service) [Introduction to WMS (Wikipedia)](https://en.wikipedia.org/wiki/Web_Map_Service) +A WMS can be created using server platforms such as: +* [MapServer](https://mapserver.org/) +* [GeoServer](https://geoserver.org/) +* [ArcGIS server](https://enterprise.arcgis.com/en/server/) (proprietary) + +The code/configuration examples below are for MapServer. + ## The structure of the WMS VIPS expects the WMS to follow certain patterns in order to display it in a map. @@ -123,6 +130,42 @@ LAYER ``` This will result in correct color presentation in the map, and the availability of a legend for the map (see the upper right corner in the screenshot above) +### WMS queries + +A feature request to a WMS layer should get an XML response following this structure + +```xml +<?xml version="1.0" encoding="UTF-8"?> +<vipsResult> + <modelName value="Carrot rust fly temperature model"/> + <modelId value="PSILARTEMP"/> + <!--[ACTUAL DATA]--> +</vipsResult> +``` + +The `[ACTUAL_DATA]` are elements with parameter names and values. For instance: +```xml +<!--mapserver template--> +<?xml version="1.0" encoding="UTF-8"?> +<vipsResult> + <modelName value="Carrot rust fly temperature model"/> + <modelId value="PSILARTEMP"/> + <parameter name="DD" value="46.2"/> <!-- Day degrees for the selected location at a given time --> +</vipsResult> +``` + +If you click on the WARNING_STATUS layer, you get a special response, the `warningStatus` element: +```xml +<?xml version="1.0" encoding="UTF-8"?> +<vipsResult> + <modelName value="Carrot rust fly temperature model"/> + <modelId value="PSILARTEMP"/> + <warningStatus value="3"/> <!-- Moderate infection risk for the selected location at a given time --> +</vipsResult> +``` + + + ### Multi language support Mapserver supports the &language=[language code] query parameter. Read more about the specifics [here](https://mapserver.org/ogc/inspire.html). Through this, we have been able to add language specific titles and abstracts. See an example below -- GitLab