In a service-oriented environment, an individual geospatial Web service is not sufficient to solve a complex real-world geospatial problem. Service composition, the process of chaining multiple services together, is required. Manual composition of Web services is laborious and requires much work of domain experts. Automatic service composition, if successful, will eventually widen the geospatial users market. This chapter reviews current efforts related to automatic service composition in both general information technology domain and geospatial domain. Key considerations in the geospatial domain are discussed and possible solutions are provided.
A Web service is a software system designed to support interoperable machine-to-machine interaction over a network (Booth et al., 2004). Web service technologies have shown promise for providing geospatial data and processing functions over the Web in an interoperable way. Yet it is usually insufficient to use only an isolated Web service to solve a real-world geospatial problem. In most cases, multiple Web services need to be chained together. For example, an OGC (Open Geospatial Consortium) WCS (Web Coverage Service) providing DEM (Digital Elevation Model) data and a slope service calculating slope from DEM can be chained together to provide the slope data. Geospatial Web service systems must be capable of composing the service chains, that is, service composition. There are roughly two types of composition methods: manual and automatic. Manual composition of Web services requires experts, because it requires much domain knowledge. Automatic composition of Web services can provide solutions for general users since it requires minimal or no human intervention in the generation and instantiation of process models that logically describe the process of generating answers to a user’s question. Automatic composition, if successful, will eventually widen the geospatial users market.
A geospatial Web service system capable of automatic service composition is able to answer many users’ geospatial questions automatically. The process consists of the following steps (Di, 2004): 1) a user asks the system a question in either natural language or controlled vocabulary; 2) the system converts the question to a formal description of what the user wants in computer-understandable form; 3) a process model is formed automatically, with the help of domain logic; 4) the model is instantiated as a concrete workflow that can be executed in the Web services environment; 5) the workflow is executed to generate the answer to the user’s question; and 6) the answer is returned to the user. In these steps, the automatic formation of a geospatial processing model is the key because it is domain-specific.
There is already some work addressing the service chaining issue. OGC Abstract Service architecture (Percivall, 2002) identifies three architecture patterns for service chaining: user defined (transparent) chaining, workflow-managed (translucent) chaining, and aggregate service (opaque). Through the OGC Web Services (OWS) testbeds, OGC has been developing a series of interface protocol specifications, including Web Feature Service (WFS), Web Map Service (WMS), Web Coverage Service (WCS), and Web Processing Service (WPS). Yet their main focus is on the interface interoperability. The automation issue that enables the aggregate service and workflow-managed chaining is not addressed yet. The next sections introduce current efforts related to automatic service composition in the general information technology domain and address the key considerations and the possible solutions in the geospatial domain.