Go to previous pageGo to next page

1.3.1. What is WMS and how does it work?

Web Map Service (WMS) provides uniform access by Web clients to maps rendered by map servers on the Internet. Thus, WMS (Reichhardt 2003):

  • Enables the dynamic construction of a map as a picture, as a series of graphical elements or as a packaged set of geographic feature data.
  • Enables answers to basic queries about the content of the map.
  • Can inform other programs about the maps it can produce and which of those can be queries further.

WMS supports the creation and display of registered and superimposed maps that come simultaneousuly from multiple sources both remote and heterogeneous. The WMS returns a raster image ready for portrayal.

How does it work?

When client and server software implements WMS, any client can access maps from any server. Any client can combine maps (overlay them like clear acetate sheets) from one or more servers. Any client can query information from a map provided by any server. While programmers need to write code to implement the specifications, end users can take advantage of products that include them to publish and access geospatial information. Software buyers can choose the best solution for their needs and not worry about if it will work with other solutions; if they all implement the same standard (WMS) they will all work together. (OGC)

How does a Web Map Service workHow does a Web Map Service work

In particular WMS defines the following operations:

  1. How to get and provide information about what types of maps a server can deliver (GetCapabilities)
  2. How to request and provide a map as a picture or set of features (GetMap)
  3. How to get and provide information about the content of a map such as the value of a feature at a location (GetFeatureInfo)

The GetCapabilities file lies on the server and therefore a GetCapabilities request ends on the web server (the web server sends the file back to the user). On the other hand, a GetMap request asks for data that is stored in databases and therefore the web server has to contact the databases and extract the requested data. The following figure shows the reach of a GetCapabilities and a GetMap request.

GetMap      and GetCapabilities requestGetMap and GetCapabilities request


Go to previous page
Go to next page