The OpenGIS Consortium (OGC) has released a draft Version 1.0 Web Map Server Cookbook as "the first in a planned series of books detailing the implementation and use of OpenGIS Specifications." This Cookbook covers the XML-based Web Map Server (WMS) interface implementation specification. WMS "defines interfaces for Web-based software to learn about, retrieve, merge and query maps. The Cookbook provides the basic understanding and steps needed for implementing and exploiting the WMS interface and related technologies. Chapter 1 establishes the background and context of the WMS interface implementation specification including a discussion of WMS client and server development technologies (XML, XSL/XSLT, ASP/JSP, etc.). Chapter 2 addresses the design architecture of software systems that implement the WMS interface through use-case scenarios, WMS request examples, and illustrations. DTD/XML documents and XSL/XSLT style sheet examples highlight the role these technologies can play in WMS client and server implementations. Chapter 3 explores implementations of WMS in existing software on both the server and client side. Detailed 'recipes' for implementing WMS in popular commercial, open source and freeware products are provided. The OpenGIS Specifications support interoperable solutions that 'geo-enable' the Web, wireless and location-based services, and mainstream IT."
Bibliographic Information
OpenGIS Web Map Server Cookbook. Edited by Kris Kolodziej. April 28, 2003. OGC Document Number: 03-050. Draft Version: 1.0.0. Copyright (c) Open GIS Consortium Inc. 170 pages.
About the OGC Web Map Server (WMS)
A WMS (OGC Web Map Server) is capable of producing maps drawn into a standard image format (PNG, JPEG, etc). based on a standard set of input parameters. The resulting map can contain 'transparent' pixels where there is no information and thus several independently drawn maps can be laid on top of each other to produce an overall map. This is possible even when the maps come from different Web Map Servers.
Open GIS Consortium, Inc. (OGC) developed a non-proprietary Web mapping approach based on open interfaces, encodings and schemas. The OGC Specification Program and Interoperability Program provide an industry consensus process to plan, develop, review and officially adopt OpenGIS Specifications for interfaces, encodings and schemas that enable interoperable geoprocessing services, data, and applications.
The interoperability that enables this automatic map overlay comes from a set of common interfaces for communicating a few basic commands/parameters. This set of interfaces is known as the OpenGIS Implementation Specification, and includes the Web Map Server (WMS) interface implementation specification. These specifications address basic Web computing, image access, display, manipulation and coordinate transformation capabilities. That is, they specify the request and response protocols for open Web-based client/map server interactions.
With standards-based interoperable Web mapping, each map server implements a common interface, a messaging protocol such as the WMS interface for accepting requests and returning responses. Now, the same client has Web access to potentially all available map servers and multiple data sources, where each map server is accessed by a client through the common interface.
The OpenGIS Web Map Service Interface Implementation Specification offers a way to enable the visual overlay of complex and distributed geographic information maps simultaneously, over the Internet. In the context of WMS a 'map' is a raster graphic 'picture' of the data rather than the actual data itself.
In essence, the WMS Specification enables the creation of a network of interoperable map servers from which WMS clients can overlay and build customized maps. The WMS client can be either an HTML page returned by a WMS server (cascading) or a specialized browser plug-in built with Java or ActiveX that connects to different WMS servers. WMS clients can specify requested layers, layer styles, the geographic area of interest or bounding box, the projected or geographic coordinate reference systems (called the Spatial Reference System by OGC), image file format including width and height size, and also background transparency.
The WMS Specification is essentially an API that enables programmers to add an interoperability interface to different geoprocessing systems from different vendors and of different types (GIS, imaging, navigation, desktop mapping, etc). There are three main components to any online API: [1] A vocabulary for the request of information; [2] A vocabulary for the response to requests; [3] A protocol for the exchange of requests and responses... The WMS Specification is based on W3C's XML specification. [adapted from the Cookbook]
About the OpenGIS Web Map Service Implementation Specification
"A Web Map Service produces maps of georeferenced data. We define a 'map' as a visual representation of geodata; a map is not the data itself. These maps are generally rendered in a pictorial format such as PNG, GIF or JPEG, or occasionally as vector-based graphical elements in Scalable Vector Graphics (SVG) or Web Computer Graphics Metafile (WebCGM) formats. This specification standardizes the way in which maps are requested by clients and the way that servers describe their data holdings. This document defines three operations, the first two of which are required of every WMS."
"This specification defines three WMS operations: GetCapabilities returns service-level metadata, which is a description of the service's information content and acceptable request parameters; GetMap returns a map image whose geospatial and dimensional parameters are welldefined; GetFeatureInfo (optional) returns information about particular features shown on a map. This specification defines a syntax for World Wide Web (WWW) Uniform Resource Locators (URLs) that invoke each of these operations. Also, an Extensible Markup Language (XML) encoding is defined for service-level metadata." Annex A of document "OGC 01-068r3" provided the pertinent XML Document Type Definitions. [adapted from the Introduction and Scope]
About OGC Web Services
OGC Web Services are an evolutionary, standards-based framework that will enable seamless integration of a variety of online geoprocessing and location services. OGC Web Services will allow distributed geoprocessing systems to communicate with each other using technologies such as XML and HTTP. This means that systems capable of working with XML and HTTP will be able to both advertise and use OGC Web Services.
OGC Web Services will allow future applications to be assembled from multiple, network-enabled geoprocessing and location services. This capability will be possible because rules will be established for these services to advertise the functionality they provide and how to send service requests via open, standard methods. In this manner, OGC Web Services will provide a vendor-neutral interoperable framework for web-based discovery, access, integration, analysis, exploitation and visualization of multiple online geodata sources, sensor-derived information, and geoprocessing capabilities.
The OGC Web Services (OWS) suite includes three principal types of georeferenced information access services. Besides WMS, it also includes the Web Coverage Server (WCS) and the Web Feature Server (WFS). Other standards include the Simple Feature Specification (SFS), the Geography Markup Language (GML), and others. While these standards are independent of each other, they are complementary to each other.
On April 30, 2003 the Open GIS Consortium, Inc. (OGC) "invited responses to a Request for Technology (RFT) in support of an OGC Interoperability Initiative called the OGC Web Services Initiative Phase 2. An OWS Phase 2 (OWS-2) Feasibility Study seeks community input and technology concepts to support efforts directed at understanding emerging technology areas for the next-generation of interoperable geoprocessing and location services. This effort will support planning for subsequent OGC Testbed activities to develop and extend OpenGIS Specifications,enabling interoperable geoprocessing and location services to better support government, business, education, research, and consumer needs.
About the Open GIS Consortium (OGC)
"OGC is an international industry consortium of 257 companies, government agencies and universities participating in a consensus process to develop publicly available geoprocessing specifications. Open interfaces and protocols defined by OpenGIS Specifications support interoperable solutions that "geo-enable" the Web, wireless and location-based services, and mainstream IT, and empower technology developers to make complex spatial information and services accessible and useful with all kinds of applications." [homepage]
Principal references:
- Announcement 2003-05-28: "Open GIS Consortium Releases Web Map Service Cookbook."
- OpenGIS Web Map Server Cookbook. April 28, 2003. Also available in Word .DOC format. [cache]
- OpenGIS Web Map Service Implementation Specification
- Web Map Servers and Clients. Prototypes using WSM. See also the Web Mapping Testbed.
- "Mappers Write Cookbook 1.0 for Web Services." By Susan M. Menke. In Government Computer News (May 30, 2003). "The Open GIS Consortium Inc. has put together a batch of not-yet time-tested recipes in Cookbook 1.0, the first in a planned series about Web map services. The Wayland, Mass., consortium's Web Map Service interface specification makes a browser overlay -- a maplike raster-graphic image -- of multiple data layers from one or more distributed geographic information systems. The recipes tell users how to insert a WMS client into various commercial and open-source products such as ESRI ArcExplorer and ArcIMS, FreeBSD, Intergraph GeoMedia WebMap, Java deegree, Microsoft Internet Information Server and University of Minnesota MapServer. A WMS client can be an HTML page returned by a WMS server or a browser plug-in using Java or ActiveX to connect to different servers. The client can specify which layers to display from a specified geographic area, the file formats and the degree of transparency."
- "Guide to Distributing Your Data Products Via WMS 1.1.1. A Tutorial for Data Providers." By Rob Raskin (Ocean ESIP, Jet Propulsion Lab).
- OGC Information System Directory of Services
- OGC Web Services
- Archives for 'wms-dev'. A discussion list for people implementing and deploying instances of the OGC Web Map Server Interface specification.
- OpenGIS Implementation Specifications
- Open GIS Consortium (OGC)
- Related news:
- "OGC Releases OpenGIS Location Services (OpenLS) Implementation Specification"
- "OGC Announces OpenGIS Geography Markup Language Implementation Specification (GML 3)."
- "OGC Working Group Issues Draft Specification for Sensor Model Language (SensorML)."
- "Open GIS Consortium Issues RFC for Web Coverage Service Implementation Specification."
- "Proposed OGC Specification for Web Map Context Documents Implementation."
- "Geography Markup Language (GML)" - Main reference page.