Web Services Composition: A Story of Models, Automata, and Logics

The web services paradigm, which finds roots in Service-Oriented Computing [1, 12], promises to enable rich, flexible, and dynamic interoperation of highly distributed and heterogeneous web-hosted services. Substantial progress has already been made towards this goal (e.g., emerging standards such as SOAP, WSDL, BPEL) and industrial technology (e.g., IBM's WebSphere Toolkit, Sun's Open Net Environment and JiniTM Network technology, Microsoft's .Net and Novell's One Net initiatives, HP's e-speak). Several research efforts are already underway that build on or take A key research challenge in web services concerns (semi-)automatic discovery and composition of web services, in order to construct new web services with desired properties or capabilities. This talk provides a survey of key developments that work towards this ambitious goal. The fundamental work in this area has centered on three models, each coming with a different approach to the composition problem. The OWLS model for web services focuses on how web services interact with the " real world " , represented abstractly using (time-varying) first-order logic predicates and terms. A representative composition result [11] here uses a translation into Petri nets. The " Roman " model for services [4] focuses on an abstract notion of " activities " (without modeling how they impact the world), and in essence model web services as finite state automata with transitions labeled by these activities. A powerful composition result is obtained using a reduction to Propositional Dynamic Logic (PDL). The Conversation model [5] focuses on messages passed between web services, and again uses finite state automata to model the internal processing of a service, with transitions labeled by message sends and message reads. A key result here concerns determination of the " local " behavior of individual services, if they are required to conform to a given " global " behavior (as might be specified using choreography constraints, reminiscent of WS-Choreography [17]). The talk also discusses two ongoing efforts to unify the three models just described. One activity, by the Semantic Web Services Intiative (SWSI), is to develop a Semantic Web Services Ontology (SWSO) (see [15]). This is based on the Process Specification Language (PSL) [6], a first-order ontology for sharing descriptions of manufacturing processes, which recently became an ISO standard. The first-order logic embodiment of SWSO extends PSL with key web service constructs, including (a) OWLS style atomic services that can impact the " real world " , (b) messages, which provide an …