Web Map Service (WMS)
A Web Map Service (WMS) defines an interface that allows a client to get maps of geospatial data and gain detailed information on specific features shown on the map. A "map" is defined here as a visual representation of geospatial data, not the geospatial data itself.
A Web Map Service can:
- Produce a map – as a picture, as a series of graphical elements, or as a packaged set of geographic feature data;
- Answer basic queries about the content of a map; and
- Tell a client what maps it can produce and which of those can be queried further.
Unlike a Web Coverage Service (WCS) or a Web Feature Service (WFS), WMS is not intended to provide access to the original unprocessed data.
A Web Map Service can act as a client by combining a number of images served by other WMS servers. It can also accommodate an extension using a Styled Layer Descriptor (SLD) and Symbology Encoding (SE), and offers the capability to restrict which features are displayed by using a filter as defined by a Filter Encoding (FE) specification.
OpenGIS® Web Map Service (WMS) Implementation Specification
The Web Map Service Implementation Specification was developed by the Open Geospatial Consortium (OGC).
Users may find the following OGC® tutorial useful: Introduction to WMS.
Additional Information: Web Map Service (WMS)
This information provides a high-level overview of the WMS interface specification, including an overview of each of the operations that are supported. Please refer to the OpenGIS® Web Map Service (WMS) Implementation Specification for technical details.
The main function of the WMS is to provide rendered geospatial data as maps. There are two types of WMS:
- Basic WMS, which provides map layers in pre-defined styles. Using a basic WMS, a client can only choose a style from a pre-defined list of styles to portray a particular map layer. A basic WMS may have direct access to the data store; and
- Enabled WMS, using a Styled Layer Descriptor (SLD) that will need to work together with Symbology Encoding (SE) anda Web Feature Service (WFS). The WMS functions as a rendering tool, while the WFS provides source data. With a SLD-enabled WMS, a client has access to the SLD, the SE provides a symbol/style library, and the client can instruct the WMS on the styles to be used and the features to be rendered for a particular map, to create custom-styled maps.
Both types of WMS can return geospatial data in either of two map formats:
- "Picture" formats, which include common image formats such as GIF (Graphics Interchange Format), PNG (Portable Network Graphics), and JPEG (Joint Photographics Expert Group); or
- "Graphic element" formats, which include SVG (Scalable Vector Graphics) or WebCGM (Web Computer Graphics Metafile).
CGDI/OGC does not specify or enforce any particular format, although a format that provides transparency is recommended, if composite maps with multiple layers are to be produced.
|A WMS interface consists of the following mandatory and optional operations:|
Optional for SLD-enabled WMS:
The mandatory and optional parameters for the WMS interface operations are discussed below.
GetCapabilities returns an XML document describing the service and the data collections from which clients may request maps. This operation is common to all CGDI/OGC web services, and is discussed in detail in the OGC® Web Service Common Implementation Specification.
The specific and most critical piece of the WMS Capabilities coding is the “Layers and Styles” it defines. Each available map is advertised by a <Layer> element, with layer properties (Title, Name, SRS, Style…), and layer attributes (queryable, Cascaded …). A parent layer may enclose numbers of children layers, and can be hierarchically nested. Some properties defined in a parent layer are inherited by the children layers.
The complete XML Document Type Definition (DTD) is included in the OGC® Web Service Common Implementation Specification. The DTD specifies the required and optional contents of the response and how the contents are formatted.
GetMap provides a means for a client to request maps of geo-referenced data.
Note:The name of this parameter in version 1.0.0 was "WMTVER". For backward compatibility, a post-1.0.0 server should accept either “WMTVER” or “VERSION”.
Optional for SLD-enabled WMS only:
|GetMap Response: GetMap returns a map of geospatial data, in the requested format, style, spatial reference system, bounding box, size, transparency, and other specified characteristics. If a request is invalid, an error output is returned in the requested or default Exceptions format.|
The GetFeatureInfo operation is designed to provide clients with more information about particular features shown on previously requested maps.
To illustrate: A typical use case for GetFeatureInfo is that a user sees a map from a GetMap request and chooses a point on that map for which to obtain more information. Because the WMS protocol is stateless, the client must include the original GetMap request parameters (all but VERSION and REQUEST) in the GetFeatureInfo request, to inform the server what map the client is viewing. (Note: In the current WMS version, this operation is only defined for maps in picture formats.)
In addition, what a WMS exactly returns is left up to the WMS provider.
|GetFeatureInfo Request :|
Note: In early versions of the OGC® specification this was defined as an optional parameter, but without specifying a default value. In more recent versions, this is defined as a mandatory parameter.
For a SLD-enabled WMS, the following also apply:
Please refer to the OpenGIS® Styled Layer Descriptor Profile of the Web Map Service Implementation Specification and the OpenGIS® Symbology Encoding Implementation Specification for details regarding these operations.
- Date modified: