Chapter 5

From The SDI Cookbook

Jump to: navigation, search

Contents

Chapter 5: Geospatial Data Visualization: Web Mapping

Michael P. Gerlek, LizardTech mpg {[at]} lizardtech.com

Introduction

This chapter documents simple web mapping concepts and tools that enable the visualization of geospatial information from various organisations and servers across the World Wide Web. The linkages with Chapter 4 – Geospatial Data Catalogues, are also explored. Discussed are the current best practices related to on-line mapping, and the progress of the OpenGIS Consortium’s (OGC) Interoperability Program2 (IP) to realize the dream of true inter-operability and disseminating a web mapping specification for the vendors to adopt and promulgate.

Consider these desires:

  • Do you want to view your information on a map online? Perhaps either as a simple (one map at a time) view or to overlay views from other sources together to produce a customized map product on your computer screen?
  • Do you want to post a map layer from your in-house GIS or image processing system onto the Web for others to see? Do you want to provide views of your metadata so that your clients can picture the data or product you are responsible for?

If the answer to these questions is yes, then you are probably interested in Web Mapping.

Context and Rationale

The rise of the Internet and specifically the World Wide Web (WWW) has created expectations for ready access to geospatial information on the Web through a common web browser. Mapping on the Web includes the presentation of general purpose maps to display locations and geographic backdrops, as well as more sophisticated interactive and customizable mapping tools. The intention of online or Web Mapping is to portray spatial information quickly and easily for most users, requiring only map reading skills. Web mapping services can be discovered through online directories that serve both spatial data (through metadata) and services information (see for example the OGC Catalogue Services draft specification). In fact, web mapping services are often used to assist users in geospatial search systems, showing geographic context and extent of relevant data against base map reference data.

Web Mapping implemented as a set of proprietary systems works fine as long as everyone you deal with both internally within your organisation and externally utilizes this same proprietary software. Because of this obvious particular limitation the Open GIS Consortium developed a non-proprietary web mapping approach based on the concept of interoperability. The topic of this chapter is not complex on-line GIS, but simple web mapping concepts and tools, i.e. part of a portrayal service to show spatial information on-line when the information originates from several discrete data/ map servers (commonly from different organisations).

Open GIS Web Mapping Activities

The sudden rise of web mapping over the last several years (cf. GIS Online : Information Retrieval, Mapping, and the Internet by Brandon Plewe - OnWord Press; ISBN: 1566901375) is demonstrated in the interoperability vision held by the Open GIS Consortium’s Interoperability Program initiatives. In the OGC, expert GIS and web mapping technology users work with GIS software vendors, earth imaging vendors, database software vendors, integrators, computer vendors and other technology providers to reach agreement on the technical details of open web mapping interfaces that allow these systems to work together over the Web.

Consensus among vendors in the OGC’s Web Mapping Testbed has created ways for vendors to write software that enables users to immediately overlay and operate on views of digital thematic map data from different online sources offered though different vendor software. The Web Mapping Testbed has delivered, among other specifications, a set of common interfaces for communicating a few basic commands/ parameters that enable automatic overlays. This set of interfaces is known as the OpenGIS® Web Map Server Interfaces Implementation Specification3 and was developed by over 20 participating organisations. A step-by-step cookbook dedicated to the implementation of WMS is available from the OGC: http://www.opengis.org/resources/?page=cookbooks .

The Web Map Server (WMS) specifications offer a way to enable the visual overlay of complex and distributed geographic information (maps) simultaneously, over the Internet. Additionally, other OGC specifications will enable the sharing of geoprocessing services, such as coordinate transformation, over the WWW (See Chapter Seven). Software developers and integrators who develop web mapping software or who seek to integrate these capabilities into general purpose information systems can add these open web mapping interfaces to their software.

"Web Mapping" refers, at a minimum, to the following actions:

  • A Client makes requests to one or more Service Registries (based on the OpenGIS Catalogue Services Specification) to discover URLs of Web Map Servers containing desired information.
  • Service Registries return URLs and also information about methods by which the discovered information at each URL can be accessed.
  • The client locates one or more servers containing the desired information, and invokes them simultaneously.
  • As directed by the Client, each Map Server accesses the information requested from it, and renders it suitable for displaying as one or more layers in a map composed of many layers.
  • Map Servers provide the display-ready information to the Client (or Clients), which then display it. Clients may display information from many sources in a single window.

The OpenGIS Web Mapping Specifications address basic Web computing, image access, display, and manipulation capabilities. That is, they specify the request and response protocols for open Web-based client / map server interactions. The first of these specifications, described below, are the product of OGC’s successful Web Mapping Testbed. They complement the already-available OpenGIS Specifications such as Simple Features and Catalogue Services, as well as ISO metadata standards to provide the foundation on which pending OpenGIS Specifications will build an increasingly robust open environment for Web mapping. Subsequent interoperability initiatives (IP 2000 and IP2001) have defined Web Feature Services, Web Coverage Services, and extensions to the Web Map Servers that allow a higher degree of control over the symbolization4.

The WMS 1.1.1 specification defines three interfaces that support Web Mapping: GetMap, GetCapabilities and GetFeatureInfo; these were demonstrated at the conclusion of Phase 1 (May – September 1999) of the Web Mapping Testbed and were released to the public in April 2000. GetMap specifies map request parameters that allow multiple servers to produce different map layers for a single client. GetCapabilities explains what a map server can do (so integrators know what to ask for). GetFeatureInfo specifies how to ask for more information about web map features.

These interfaces provide a high level of abstraction that hides the "heavy lifting" in the Web Mapping scenario. The heavy lifting includes finding remote data store servers, requesting data from them in specifically defined structures, attaching symbols intelligently, changing coordinate systems, and returning information ready to be displayed at the client – all in a matter of seconds.

Servers conforming to OpenGIS WMS 1.1.1 will geo-enable Web sites and mobile devices for many new applications of geospatial technology. Consider any of the application domains listed below. Wherever the purchasers of the technology have chosen not to limit their users to a solution based on single vendor client/server pairs, these uses of geospatial data will depend on interfaces that conform to the OpenGIS Web Map Interface Specification:

  • Business siting, market research, and other business geographic applications
  • Cable, microwave, and cellular transmission installation planning
  • Civil Engineering
  • Education/training, distance learning, multi-disciplinary research collaboration
  • Electronic libraries, electronic museums and galleries
  • Emergency road services and 911 emergency response systems
  • Environmental monitoring, global and local
  • Facilities management
  • Global disaster/emergency/crisis management
  • Health care: telemedicine, better/faster care for rural trauma victims, patient monitoring, etc.
  • Intelligent vehicle highway systems (IVHS)
  • Maintenance of one’s information context and connection (personal logical network) as one moves through space, bridging media and modality; mapping electronic locations of addresses to their physical locations; using concepts of reach space, co-location, and near-by.
  • Military applications: surveillance, planning, training, command/control, logistics, targeting
  • Municipal public works maintenance and administration
  • Natural resource discovery, exploitation, and management
  • Navigation
  • Precision farming (GPS-guided controlled delivery of nutrients and chemicals based on Earth imagery or automated GPS-located soil or crop sampling)
  • Product distribution/warehousing optimization
  • Public safety - fire and police departments
  • Recreation: hiking, boating, etc.
  • Science: climate research, agronomy, biology, ecology, geology, and others
  • Security monitoring and intrusion response
  • Special wayfinding for elderly and disabled
  • Telecommunications network planning -- mobile communications
  • Transportation planning
  • Urban and regional planning
  • Water resource management

There is a productive recent trend within the OGC to use Interoperability Initiatives like the Web Mapping Testbed to rapidly produce OpenGIS Specifications, as opposed to creating all of them through a traditional committee process. IP2000, completed in late 2000, focused on map authoring and publication, integrating graphical data and data elements (legends, symbolization, etc.), clients that can exploit XML-encoded information, further work on catalogue and discovery services, and work on transporting XML encoded data over the Internet.

Organisational Approach

Web based mapping provides the functionality to help discover and visualize spatial information referenced from Catalogue Service Systems. A Catalogue Service System (described in Chapter 4) is implemented through Internet-based software that allows users to inventory, advertise, and access metadata and associated geospatial information within a global framework of servers. Figure 5.1 shows one scenario of a client accessing a Catalogue (actually the catalogue implements a Service Registry) to discover data and web mapping services and then requesting and displaying maps from different servers.

Figure 5.1
Figure 5.1 - Interaction of web map client with catalogue and map servers

A catalogue service that provides only references to raw geospatial data would be of use to only GIS experts and their software. By making map displays of geospatial information, casual users can interact with and see spatial data that was previously only available to GIS experts.

Figure 5.2 shows one example of a user interface for a Catalogue Service System. Many different GUIs can be built to provide special access for different categories of user. All the GUIs must use the same protocol agreements to interact with the map server software.

The Map Frame in figure 5.2 illustrates the value of specifying the bounding geometry (box or polygon) for the spatial part of the query for retrieval within the Catalogue Service System. Typical dimensions for the query include spatial, temporal, paleotemporal and thematic values. The user also has the option to specify specific servers, or to search all registered servers for the geospatial data of interest.

Figure 5.2
Figure 5.2

The Map Frame can also be used for the presentation of the spatial component of the metadata in maps. The result presentation in a Catalogue Service System can be installed as a hidden search variable for further processing, or as List or Map in a web browser for visual presentation. The resulting presentation should be within the bounding geometry that was specified by the user for the Spatial Query. Often users like to interact with the objects on the maps. They like to have links on an object in a map connect to its metadata and then use a link in the metadata to connect to the real data. This can be accomplished via the GetFeatureInfo interface of the Web Map Server specification.

The success of Web Mapping depends on the use of consistent metadata standards (See Chapter 3). Historically, there have been a great variety of metadata standards developed and implemented across communities. Thanks to the contributions of many mapping organisations worldwide, an ISO standard 19115 for metadata was published in 2003. Over time, organisations will see the value of migrating to a consistent ISO metadata format based on ISO Technical Specification 19139 so that consistent global scale search and access of geospatial data can occur to support on line mapping.

Map Servers

For the concept of Web Mapping to be successful, a near global, truly inter-connected series of map servers must be established through the use of common protocols whether it be in an intranet, an extranet, or an internet scenario. Figure 5.3 provides a notional view of such a server network. Servers supporting on line web mapping will be registered to a Catalogue Service System as noted above.

Figure 5.3
Figure 5.3 - Notional View of Web Mapping Server Network

Implementation Approach

By way of introduction to implementations of Web Map Servers, the following is excerpted from the WMS 1.0 specification5:

A Map Server can do three things. It 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 the map, and
  • Tell other programs what maps it can produce and which of those can be queried further.

A standard web browser can ask a Map Server to do these things just by submitting requests in the form of Uniform Resource Locators (URLs). The content of such URLs depends on which of the three tasks is requested. All URLs include a Web Mapping Service specification version number and a request type parameter. In addition, to produce a map, the URL parameters indicate which portion of the Earth is to be mapped, the coordinate system to be used, the type(s) of information to be shown, the desired output format, and perhaps the output size, rendering style, or other parameters. To query the content of the map, the URL parameters indicate what map is being queried and which location on the map is of interest. To ask a Map Server about its holdings, the URL parameters includes the "capabilities" request type. Each of these will be described in further detail later. We first provide some sample URLs and their resulting maps on the next two pages. Requests to multiple servers can be made to return results that overlap in the same coordinate system so that map data can be viewed together even though it may be hosted and served in different organisations.

The following requests a US National Oceanographic and Atmospheric Administration AVHRR image, shown below:

http://map.com/mapserver.cgi?VERSION=1..1.1&REQUEST=getmap&SRS=EPSG%3A4326&BBOX=-97.105,24.913,78.794,36.358
&WIDTH=560&HEIGHT=350&LAYERS=AVHRR-09-27%3AMIT-mbay&STYLES=default&FORMAT=PNG
&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=INIMAGE&QUALITY=MEDIUM

Figure 5.4
Figure 5.4 - NOAA AVHRR Image of the Gulf of Mexico

This requests three layers, “built up areas”, political boundaries, and coastlines shown below:

http://maps.com/map.cgi?VERSION=1.1.1&REQUEST=getmap&SRS=EPSG%3A4326&BBOX=-97.105,24.913,78.794,36.358
&WIDTH=560&HEIGHT=350&LAYERS=BUILTUPA_1M%3ACubeWerx,COASTL_1M%3ACubeWerx,POLBNDL_1M%3ACubeWerx
&STYLES=0XFF8080,0X101040,BLACK&FORMAT=PNG&BGCOLOR=0xFFFFFF&TRANSPARENT=FALSE&EXCEPTIONS=INIMAGE
&QUALITY=MEDIUM

Figure 5.5
Figure 5.5 Political, Coastline, and Populated Areas, Southeastern United States

Notice that in both of these URLs the spatial information is identical:

SRS=EPSG%3A4326&BBOX=-97.105,24.913,78.794,36.358& WIDTH=560&HEIGHT=350

Because both maps were produced with the same bounding box, spatial reference system, and output size, the results can actually be overlaid by placing the latter map on top of the former. By enabling the use of image formats that provide for transparency information, maps that are meant to be overlaid over other maps can be produced by Map Servers. In this example, background areas of the second map are transparent (because the URL parameter "TRANSPARENT=TRUE" was supplied). Figure 5.6 shows the result of overlaying Figure 5.5 on top of Figure 5.4 to produce a map from the result of two separate Map requests. Finally, note that in this example the two maps were requested from different Map Servers. By standardizing the way in which maps are requested, clients of Map Servers can tailor which layers to request from which servers, thus building up maps that would not have been practical to assemble without the Web Mapping Interface Specification.

Figure 5.6
Figure 5.6 - Combined AVHRR Image and Political/Cultural Map

If either of these maps were queryable, a client could request information about a feature on the map by adding to the map URL two additional parameters specifying a location (as an X, Y offset from the upper left corner).

Because each Map Server is likely to have different kinds of information for which it can produce maps, each Map Server must be able to provide a machine-parseable list of its capabilities. That enables the construction of searchable catalogues that can direct clients to particular Map Servers.

Available Software

As a result of the Web Mapping Testbed, a number of GIS integrators and vendors have developed prototype versions of web mapping servers and compatible interfaces. The NASAcoordinated Digital Earth project includes software support for mapping NASA data using the specification (http://digitalearth.gsfc.nasa.gov/). OGC Web Mapping Service-compatible interfaces for ESRI Map Objects Internet Map Server version 1.1.1 and the University of Minnesota "mapserver" product (http://mapserver.gis.umn.edu) have been available as opensource implementations of WMS. An exhaustive list of software that supports the WMS specifications is available from the OGC: http://www.opengis.org/resources/?page=products.

Recommendations

The state of Web Mapping is best illustrated by the progress made in the Open GIS Consortium Interoperability Program Activity. As the result of potentially competing vendors and software producers coming together and identifying a common set of functionality, a non-proprietary specification for rendering geo-referenced graphics has emerged. This allows one to establish a connection to multiple map servers and generate a stack of images that can be used in visual analysis and basic interrogation.

  • The Cookbook authors recommend the use of the OpenGIS Web Mapping Services Specification, Version 1.1.1 or 1.3

The OGC Web Mapping Service capabilities provide an excellent starting point in the visual combination of distributed spatial data, the query of features, and now (Version 1.3) the support of time-tagged data sources.

  • The Cookbook authors recommend that participants register their WMS services at the GEOSS Component and Service Registry (CSR).

The Group on Earth Observation (GEO) hosts a global service registry that acts as a directory of all known web services in the Earth Observation and SDI communities. By listing mapping services in such a system, publishers can assure that they can be discovered in a trans-national context.

The Cookbook authors invite all prospective organisations to participate in the development, prototyping, and establishment of next generation web mapping services in collaboration with the Open Geospatial Consortium.</i></b>

References and Links

International Continental Scientific Drilling Program (ICDP). (http://www.icdp-online.de/)

OpenGIS Consortium Initiatives Page (http://www.opengeospatial.org/initiatives/)

OpenGIS Web Map Service (WMS) Implementation Specification Revision 1.3 (http://www.opengeospatial.org/standards/wms)


2 The OGC Interoperability Program began as the OGC Web Mapping Testbed or WMT. Since then it has expanded to encompass a number of activities and is often referred to as IP 2000 or IP 2001, etc. depending on which year the activity falls under.

3 Prior versions of the OGC Web Map Service specification can be found at http://www.opengeospatial.org/standards/wms

4 The OGC Styled Layer Descriptor (SLD) specification defines symbology for features: http://www.opengis.org/docs/02-070.pdf. The OGC Context Specification allows one to define and re-use selected layers in a mapping interface: http://www.opengis.org/docs/03-036r2.pdf.

5 The specification is under revision at the time of this publication, WMS 1.2 is expected to be published by mid 2004.

Personal tools