As suggested by the title, in this thesis we are interested in how automatic web-service configuration be performed on the Semantic Web. We explore three practical and fairly advanced web-service scenarios that happen to require an automatic web-based configuration technology to be realized. From these scenarios we derive a number of practical requirements to such a technology and find out that the Semantic Web provides a few building blocks for such a technology.
The first block is the architecture and we extend the existing UPML approach to fit the requirements imposed by the scenarios. For the second block, the configuration algorithm, we realize that neither parametric design nor planning can be directly applied to this task. Accordingly, we develop a combination of those.
These two major blocks constitute our solution to the web-service configuration task. We test it by implementing the web service scenarios to show that they, indeed, can be solved.
As suggested by the title, in this thesis we are interested in how automatic web-service configuration be performed on the Semantic Web. We explore the landscape of web services, web-service scenarios, web-service architectures, semantics, and configuration algorithms to come up with an approach for performing configuration automatically in realistic setting. The subtitle `Exploring how semantics meets pragmatics' shows the spirit of our research. We are balancing between semantic methods, that are often difficult to apply in real-life situations, and pragmatical requirements that are present in real life. We do not explicitly draw this balance, but give the reader an idea on how such a balance can be achieved.
We start our exploration with an in-depth analysis of three advanced practical web-service scenarios that we present in Chapter 2. They serve as the source of empirical data that we use to explore and analyze existing theories about web services and to formulate our own.
In the bibliography query scenario (BiB) we describe the process of non-trivial bibliography querying requested by users. For each request several querying, transformation, and formatting services need to be selected and arranged. In the author rights clearance scenario (ARC) we describe a rights society that receives reports on music broadcasted from Internet radio stations and the fees paid for the broadcast. Then it identifies the rights holders whose work was broadcasted and repartitions the fees among them. For each report several specific services that perform rights holder lookup, repartitioning, and paying, need to be selected and arranged. This scenario was developed in the framework of the Obelix project (IST-2001-33144). The product supply scenario (B2B) describes a company that produces customized products that consist of diverse parts. For each product order it needs to select and arrange several supply services for product parts, delivery and assembly services.
These scenarios are practical, fairly advanced, typical and not yet solved. The BiB scenario is a typical application integration scenario that has already attracted substantial attention in the scientific literature and has commercial applications. The ARC scenario describes desired key functionality in digital music, a major and growing Web-based business area. And the issues to be dealt with in the B2B scenario are quite prototypical, in terms of both scientific attention and industrial impact. In our view, therefore, it is very reasonable to expect that other scenarios will impose the same or similar requirements.
We analyzed these scenarios and find out that each of them requires frequent and automatic selection and arrangement of web services. This is a feature that is key to a configuration design problem. The scenarios expose other properties common with the configuration problem: they require known web services to be selected and arranges according to a known skeleton, and this arrangement should match certain constraints that restrict the use of web services. It is well-known that this kind of problems typically require knowledge methods, that makes semantic methods on the Web suitable for solving this problem. Because of the dynamic nature of the Web it possesses certain properties of the planning problem. However, the scenarios do not envisage much temporal properties that does not allow treating the web-service configuration task as a planning problem.
We continue with the development of a knowledge-based architecture for web-service configuration described in Chapter 3. We explore a number of existing architectures, including those originating from the semantic (UPML, OWL-S, WSMO) and the pragmatic (WSDL, .NET) communities. Among them we choose to continue with the Unified Problem-solving Modelling Language UPML that was developed as an architecture for brokering and configuring problem-solving methods. Originally, UPML was developed as an abstract architecture. In our earlier work we adapted it to the Web. However, even with this adaptation, it still lacks constructs specific for the domain of web services and their configuration.
To apply UPML to the web-service configuration task we develop a pragmatic-oriented extension to UPML, that we call UPML-S (UPML-Services). Specifically, we extend UPML tasks, problem-solving methods (that correspond to web services) and domain objects with the details specific for the web-service configuration task. In UPML-S we also augment UPML with the notions of interfaces and solutions.
The interfaces to web services support certain kinds of actions that need to be performed with web services: competence interfaces support querying dynamic competence, e.g. querying availability of a specific product such as a specific flight; value interfaces support assessing the values that are required and provided by services, e.g. required monetary values and provided the value of moving a passenger between two points; invocation interfaces support calling web services, e.g. booking a flight. We also develop the means for binding UPML-S web services to their low-level implementation.
Automatic web-service configuration needs automatic assessment of competence of web services. In Chapter 4 we study the statements that characterize competence of web services as revealed by the web-service scenarios. These statements may either be static and always available (e.g. the list of products on sale) or dynamic and available on request (e.g. the availability of a specific product).
These constraints may be seen as predicates that represent excerpts from non-published code of web services. Some of the predicates may simply represent signatures of hidden pieces of code. These constraint predicates are developed by different parties (typically, by the same parties that develop the services being constrained) but need to be verified all together. As a result, the languages that assume the predicates to be public and represented in a single language are not really applicable in this case.
We found expressive power of Datalog sufficient to represent the public part of constraints that we found in the scenarios. However, to implement the scenarios we have to augment Datalog with a reasoning strategy. This damages the pure declarative semantics of Datalog for the benefit of making it useable. We utilize the depth-first inference strategy also used in Prolog, but we prohibit the use of Prolog negation, cuts and bags, and require all variables from each predicate head to be used in its body.
To implement the scenarios we develop an RDF-based exchange representation for constraints. The constraints are exchanged in this representation and then converted to Datalog rules processed with a Prolog engine. The use of RDF as the representation base enabled seamless translation between the technical configuration constraints and constraints on the value flow supported by the services and represented according to the e3value ontology.
To integrate constraints provided by different parties we need a meta-model to represent knowledge of a configuration algorithm about how these constraints need to be interpreted. For example, it needs to state if a certain constraint is a positive constraint or not, or if is complete or not. This model needs to be developed as a part of future research, possibly based on other scenarios that may be more suitable for this research.
Typically, configurations are seen as reusable arrangements of parts, made according to a known skeleton, and satisfying available constraints. This is not applicable to the web-service configurations to be achieved in the scenarios. These configurations should be rather seen as successful sequences of calls to different web services. These calls are executed once and may not be executable once again. Accordingly, in UPML-S we introduce a model for configurations where we represent them with sequences of planned or executed service calls.
As we discuss in Chapter 5, for a configuration algorithm the web services are largely unobservable and unpredictable. This limits the use of advanced configuration and planning algorithms developed for more transparent and static environments. In our algorithm we perform informed search for solutions guided by the available configuration skeletons and the categorization of web services, that is usual for configuration algorithms. And we augment it with the plan-execute-observe approach common for planning methods. We call the resulting synergy as the Open-world skeletal planning algorithm that forms one of the contributions of this thesis. Finally, we see the web-service configuration task as a configuration task that is performed in an unobservable and dynamic environment that does not allow solving it with configuration methods and requires a synergy with the planning methods.
The exploration of the web-service configuration problem that we perform in this thesis has been driven by the practical web-service scenarios. In our theories we use relevant semantic methods and modify them to satisfy the pragmatic requirements imposed by the scenarios. To test that we perform a reality check presented in Chapter 7. There we implement these scenarios and show how UPML-S and open-world skeletal planning can be used in practice. We used the feedback of this reality check during the development of our theory, and revised the theory several times to incorporate this feedback. As a result we successfully implemented the scenarios. This implementation is supported by several tools that we describe in Chapter 6. The tools that may be interesting for other researchers are published as open-source projects.
We conclude the thesis with Chapter 8 where we give our answers to the research questions posed in the thesis. Finally, the outlook of the web-service configuration area looks quite promising, given the steadily growing interest in the topic shown by both the industrial and scientific communities. This and many other tasks may be efficiently solved with the Semantic Web means with a creative synergy of semantic methods modified to meet pragmatic goals.
Check the One-week study and read fast :)
@PhDThesis{THESIS,
author = "Borys Omelayenko",
title = "Web Service Configuration on the {Semantic Web}",
school="Vrije Universiteit",
address = "Amsterdam",
month = "October",
year = "2005"
}
(c) 2011, Borys Omelayenko, 