Chaining GIS Web Services
Nadine Alameh
Global Science & Technology 7855 Walker Drive Suite 200
Greenbelt, MD 20770
Abstract
The Web services model is rapidly materializing within the Geographic Information
Systems (GIS) field. An emerging GIS Web services architecture is enabled by the
advancements in general Web service technologies and the focused efforts of the Open
GIS Consortium in defining XML-based GIS service and registry information models.
Based on these models, this paper addresses the issues of service chaining, the process of
combining or pipelining results from several complementary and interoperable GIS Web
Services to create a customized solution. The paper presents three basic service chaining
options: client-coordinated, static and mediated chaining. Highlights of key Web
technologies that can support dynamic service chaining and a discussion of the current
limitations of these technologies are also included.
Introduction
Over the last decade, GIS technologies have evolved from the traditional model of standalone
systems with spatial data tightly coupled with the systems used to create them, to
an increasingly distributed model based on independently-provided, specialized
interoperable GIS Web Services (Alameh 2001). This evolution was fueled by the
growing role of GIS in today’s organizations, the increasing availability of spatial data
and its inherent conduciveness to reuse, the maturity of Web and distributed computing
technologies, and the key role of GIS in a promising location-based services market.
Furthermore, given that most users of traditional GIS systems typically only use a small
percentage of their systems’ functionalities, the services model promises to provide these
users with just the services and data that they require, hence bypassing the need to install,
learn or pay for any unused functionalities.
Within the GIS domain, GIS Web Services are rapidly materializing as a result of the
advancements in general Web service technologies and the focused efforts of the Open
GIS Consortium (OGC) in sponsoring consensus-based development of interoperable
GIS Web service interfaces (OGC 2002). Soon, it will be possible to dynamically
assemble applications from multiple GIS Web services for use in a variety of client
applications. This dynamic assembly of services is the motivation behind studying
service chaining in this paper. Service chaining is the process of combining or pipelining
results from several complementary services to create customized applications.
After an overview of GIS Web Services, this paper discusses three basic service chaining
options: client-coordinated, static and mediated chaining. Each option is examined with
respect to its coordination complexity, metadata tracking ability and error handling
propagation. Next the paper highlights key enabling Web technologies as well their
current limitations in meeting the unique needs of the GIS data and services community.
Overview of GIS web services
Web Services are “modular applications that are self-describing and that can be
published, located, and invoked from anywhere on the Web or within any local network
based on open Internet standards” (Cauldwell 2001). Web Services provide a new of set
of technologies that can be used to either expose existing applications or build new
distributed applications that work across the Internet. Web Services typically provide
access to sets of operations across standardized interfaces and are accessible via
ubiquitous Internet protocols such as HTTP or SMTP. Being entirely based on XML
technologies, they provide more flexibility and ubiquity that help set them apart from
previous middleware technologies. Currently, more businesses are increasingly exposing
their underlying applications as Web Services because of these services’ promise to
reduce development and deployment costs, decrease the complexity of system design,
and increase interoperability among applications and business partners.
According to the OGC framework (OGC 2002), GIS services are logically grouped into
three categories:
- Data services are typically tightly coupled with specific data sets and offer access to
customized portions of that data. Examples of data services include the OGC Web
Mapping Service (WMS) which produces status maps as visual representations of
geospatial data, the OGC Web Coverage Service (WCS) which provides access to
unrendered geospatial information as needed for client-side rendering, and the OGC
Web Feature Service (WFS) which allows a client to retrieve geospatial data encoded
in Geographic Markup Language (GML) (OGC 2002).
- Processing services are not associated with specific datasets. Instead they provide
operations for processing or transforming data in a manner determined by userspecified
parameters (Alameh 2001). Such services can provide generic processing
functions such as projection/coordinate conversion, rasterization/vectorization, map
overlay, imagery manipulation, or feature detection and imagery classification.
- Registry/catalog services are used to classify, register, describe, search, maintain and
access information about Web services (OGC OWS1 2002). Registries can specialize
in the type of information they describe, leading to the availability of registries for
cataloguing data types, online data instances, service types and online service
instances.
Interoperability of the above services is critical in moving forward an architecture based
on GIS Web Services. For this reason, the GIS community, with the sponsorship of OGC,
is currently focusing on defining interoperable interfaces to the basic services listed
above. Work is being conducted to offer access to these services using HTTP GET,
POST and SOAP protocols.
Motivation for service chaining
With access to interoperable and autonomous GIS Web Services, a variety of applications
can more easily integrate and make use of geospatial technologies. Those applications
can be based on traditional information and GIS systems, but can also easily extend to
thin clients such as web browsers and newly emerging clients such as handheld devices.
For a typical GIS application, multiple GIS and non-GIS Web Services need to be
combined or chained. Figure 1 shows a typical service chaining scenario where several
GIS coverages are fetched from WCS services, mosaicked and portrayed using a
Coverage Portrayal Service (CPS). A processing service then re-projects the resultant
coverage to another Spatial Reference System (SRS). The coverage is then overlayed
with feature data extracted from a WFS, and then portrayed as a rendered map to the
client. Information on WCS, CPS and WFS can be found on the OGC webpage (OGC
2002).

Figure 1. A Simple Service Chaining Example.