The OpenGIS Web Map Service (WMS) internet standard defines a simple way for an HTTP client to request geo-registered map images from one or more distributed geospatial databases. The standard was published by the Open Geospatial Consortium (OGC) in 1999 and is currently codified in ISO 19128 (which is the same document as WMS 1.3).
The WMS standard is supported by Google Earth Enterprise Server, ArcGIS Server, Map Server (versions 3.5 and later), various databases published by the USGS, and (to a limited extent) Tableau.
WMS is a stable standard, with the latest version (1.3.0) published in January 2004.
The WMS Interface
Every WMS server is required to handle two different request types:
- GetCapabilities — This returns parameters about the WMS (such as map image format and WMS version compatibility) and the available layers (e.g. map bounding box, coordinate reference systems, URI of the data, and whether the layer is mostly opaque or not).
- GetMap — This returns a map image. Parameters include the width and height of the image, coordinate reference system, rendering style, and image format.
Additionally, WMS servers can optionally support several other request types:
- GetFeatureInfo — If a layer is marked as “queryable”, then you can use this request type to get data about a coordinate of the map image.
- DescribeLayer — This returns the feature types of the specified layer(s), which can be further described using WFS or WCS requests. This request type is dependent on the Styled Layer Descriptor (SLD) Profile of WMS.
- GetLegendGraphic — This returns an image of the map’s legend image, giving a visual guide to map elements.