Process Mediation Framework for Semantic Web Services PDF

Roman Vaculín, Doctoral Thesis. Charles University, Faculty of Mathematics and Physics, Department of Theoretical Computer Science and Mathematical Logic, 2009. bibtex

  author = {Roman Vacul{\'i}n},
  title = {Process Mediation Framework for Semantic Web Services},
  school = {Charles University, Faculty of Mathematics and Physics, Department of Theoretical Computer Science and Mathematical Logic},
  year = {2009},
  month = {June},
  timestamp = {2009.10.29}


The goal of Web services is to enable interoperability of heterogeneous software systems. Semantic Web services enhance syntactic specifications of traditional Web services with machine processable semantic annotations to facilitate interoperability. As Web services get popular in both corporate and open environments, the ability to deal with incompatibilities of service requesters and providers becomes a critical factor for achieving interoperability. Process mediation solves the problem of interoperability by identifying and resolving all incompatibilities and by mediating between service requesters and providers.

In this thesis we address the problem of process mediation of Semantic Web services. We introduce an Abstract Process Mediation Framework that identifies the key functional areas to be addressed by process mediation components. Specifically, we focus on process mediation algorithms, discovery of external services, monitoring, and fault handling and recovery.

We present algorithms for solving the process mediation problem in two scenarios: (a) when the mediation process has complete visibility of the process model of the service provider and the service requester (complete visibility scenario), and (b) when the mediation process has visibility only of the process model of the service provider but not the service requester (asymmetric scenario). The algorithms combine automated planning and semantic reasoning with discovery of external services that act as data mediators.

In dynamic open environments, such as Internet, discovery is a necessary part of process mediation since external services might not be known to the process mediation component. We introduce a combined and a composed match as a suitable approach to discovery in the process mediation context. We identified three types of collisions which might need to be avoided in combined matches. These include undesired side-effects, effect duplications, and contradictory effects. We present an efficient matchmaking algorithm for retrieving the best combined matches without undesired and contradictory effects. We also prove that the retrieval of combined matches with no effect duplications is an NP-hard problem. For this NP-hard problem we present a top- retrieval algorithm employing optimization techniques known from constraint satisfaction problem solving that improves the efficiency substantially.

In order to make process mediation possible in open environments, we develop an event based monitoring model, and a fault handling and recovery model. These are the two missing parts of existing Semantic Web services frameworks. The monitoring model combines primitive semantic events defined by means of an event types ontology, with an event algebra for specification and detection of composite events. We augment the event algebra with semantic filters which allow detection of events with semantically rich content. We introduce two versions of the algebra along with detection techniques for runtime monitoring and for offline analysis.

The fault handling and recovery model relies on and takes advantage of the semantic monitoring. In the model we employ standard fault handlers and event handlers. We augment the model with a novel concept of constraint violation handlers that serve for definition of constraint violation conditions. We introduce explicit recovery actions for restoration of the normal execution flow, and compensation statements for undoing of finished processes. A combination of all introduced handlers and compensation statements gives process designers a powerful tool for enhancing processes with fine grained fault handling that allows a controlled gradual recovery and degradation.

Finally, we present an execution infrastructure for runtime mediation, namely the Process Mediation Agent, which embeds the aforementioned mediation algorithms, advanced monitoring, and recovery techniques to support recovery from failures. Throughout the thesis we demonstrate the developed results on examples and empirical experiments.