WSPOM: An Ontology Model for Web Service Planning

wafflebazaarInternet και Εφαρμογές Web

21 Οκτ 2013 (πριν από 4 χρόνια και 22 μέρες)

78 εμφανίσεις

B. Liu and C. Chai (Eds.): ICICA 2011, LNCS 7030, pp. 447–454, 2011.
© Springer-Verlag Berlin Heidelberg 2011
WSPOM: An Ontology Model for Web Service Planning
Liming Liu and Hongming Cai
School of Software,
Shanghai Jiao Tong University,
Shanghai, P.R. China
andyliuliming@gmail.com,
cai-hm@cs.sjtu.edu.cn
Abstract. With the growth of web services’ quantity and complexity, the
problem that whether the existing web services could satisfy the requirements
of business has become more complex. Based on the OWL, WSPOM (Web
Service Planning Ontology Model) is proposed, WSPOM consists of General
Ontology, Task Ontology and Web Service Ontology. First, the General
Ontology is built up to describe the state of the world and the changes each
Operation could make to the world. The changes are described in graph
difference vector. Then one satisfactory relation all over the ontology model is
proposed. Based on the satisfactory relation, whether the web service could
satisfy the business demand will be validated, then the Web Service Grounding
would be generated in WSDL or code stub. Then one framework is developed
based on WSPOM, the result shows that the framework proposed could resolve
the problem efficiently.
Keywords: Ontology, WSPOM, Semantic Web, Web Service.
1 Introduction
The advent of Web services is a proof that nowadays the need for communication
among loosely coupled distributed systems is bigger than ever. Web services offer a
well-defined interface through which other programs may interact by sending
messages based on Internet protocols and Web standards. They may also be combined
in order to achieve a complex service whose functionality cannot be achieved by a
single one, a procedure that is called service composition.
The term "Semantic Web" is often used more specifically to refer to the formats
and technologies that enable it. These technologies include the Resource Description
Framework (RDF [1]), a variety of data interchange formats (e.g. RDF/XML, N3,
Turtle, N-Triples), and notations such as RDF Schema (RDFS [2]) and the Web
Ontology Language (OWL [3]), all of which are intended to provide a formal
description of concepts, terms, and relationships within a given knowledge domain.
Increasingly, OWL has become one of the most popular languages for representing
ontology in the Semantic Web.
In this paper, we present WSPOM (Web Service Planning Ontology Model). In
WSPOM, we first divide the domain ontology of business into general ontology, task
448 L. Liu and H. Cai
ontology and web service ontology, and describe them in OWL, then describe one
method to validate the web service whether could satisfy the business demand based
on WSPOM. Furthermore, as a web service planning model, WSPOM can guide the
business analysts to figure out what kind of the services their organization lack of, and
provide the service grounding based on the result figured out.
The rest of this paper is organized as follows. Section 2 summarizes the researches
worked in recent years related to our studies. In section 3, we introduce a new
ontology model called WSPOM and present every part of WSPOM detailed. The web
service planning framework based on this ontology model is introduced in section 4.
Section 5 describes an example based on our approach. Last section (Section 6)
concludes this paper.
2 Related Work
The current research about web service mainly focuses on using semantic to allow
automatic discovery, matching and composition of web service. Semantic Web
initiative tries to solve such problems related to knowledge representation by
suggesting standards, tools and languages for information annotation. Thus, the
combination of Semantic Web techniques with Web services seems the best way to
give the appropriate semantic notion to Web services in order to achieve the desirable
level of automation. Towards this need, many languages and frameworks have been
proposed, such as WSMO [4], WSDL-S [5] or OWL-S [6]. In this progress, the
ontology language plays more and more important role in semantic web.
Ongoing web service research is not limited to the automation matching,
composition and invocation [7]. The problem that whether web service in one
organization could satisfy all the functional and non-functional requirements of
business tasks, and how to optimize the web services to save the cost is also
important. T. G. J. Schepers[8] present a lifecycle approach to SOA governance. Min
Luo[9] give out one approach to practical SOA, it includes three perspectives: Service
Modeling, Enterprise Service Bus and Governance.
Eric Bouillet[10] give us a domain-independent, general purpose knowledge
engineering and planning framework that supports the construction of planning
domains and problems based on OWL ontology, and the integration of the planning
process with description logic (DL) reasoning.
All these researches concerned the Web Service Ontology and Business Domain
Ontology separately, and made great achievements. But the problem that whether the
existing web services could satisfy the requirements of business has become more
complex. For resolving this problem, we present an ontology model to resolve the
problem through validating the web service whether could satisfy the business
demand and how to optimize the existing web services.
3 Web Service Planning Ontology Model (WSPOM)
The WSPOM focuses on the concepts and operations ontology, and it consists of
general ontology, task ontology and web service ontology. As shown in figure 1.
WSPOM: An Ontology Model for Web Service Planning 449

Fig. 1.
The structure of Web Service Planning Ontology Model (WSPOM)
The most important concept in General Ontology is the Operation, and it could be
described by one OWL graph. For simplicity, we depict it in the grey node in Fig1.
The satisfactory relation is most based on the graph homomorphism or equality.
Based on this model, we could decide what business task could be satisfied already,
and what kinds of web service the organization should provide. In this section, we
formally describe how to describe general ontology, task ontology, and web service
ontology in OWL.
A)

General Ontology
The general ontology is used to describe the most basic elements in business domain
such as the concept ontology and the operation ontology. Concept ontology describes
the concepts, properties and individuals. In WSPOM, we call them OWL Resource.
The operation ontology describes changes to
the concept ontology itself causes. Every
operation has its preconditions and effects described using the OWL graph. The first
definition in WSPOM is OWL Model consists of Classes, Individuals and Property,
where Individuals are instances of classes, and properties may be used to relate one
individual to another. A class defines a group of individuals that belong together
because they share some properties. Properties can be used to state relationships
between individuals or from individuals to data values. OWL Triple is a member of
the set Classes ×Property ×Classes. A Triple Pattern is a member of the set
(Classes

Individuals) ×Property × (Classes

Individuals). An OWL Graph is one set
of OWL Triples; furthermore, the OWL Graph Pattern consists of the Triple Patterns.
Another concept in General Ontology is the Operation. An operation can cause the
state of the world to change, and from out of the ontology domain, the only thing we
can notice is the changes to the OWL Graph, and so the operation can be described in
OWL Graph Delta. The Operation is described formally as:
Definition 1:
OP=<P, E>
OP stands for Operation. P is the precondition of this operation which could be
described in OWL Graph Pattern, and E is the effects of this operation which can be
described as OWL Graph Delta. Let us show how to get the OWL Graph Delta. First
let the current state is G, after applying the OP to Ontology, O, and some changes will
450 L. Liu and H. Cai
happen in the ontology. These changes could be one process right transfer from one
person to another or other changes alike. Then the state of the Ontology O would
come into G’.The ontology could be described in OWL Graph, so if we define the
graph subtracting operation of OWL Graph, we can get the OWL Graph Delta
through subtracting G by G’.
Definition 2: E=Sub<G’, G>=<NT, PT, CHG>
Sub is the symbol for subtracting operation, NT is the negative OWL Triples
generated by this subtracting operation, PT is the Positive OWL Triples, CHG stands
for the changes to the nodes of the triples.
B) Task Ontology
The task ontology is built upon general ontology, and the task definition is the most
important in it. There are three kinds of tasks: atomic, composite and simple task.
Atomic tasks correspond to those can perform by engaging it in a single Operation.
Operation, User does not constrain to people, the computer or other sub-system can
also be modeled as User.
Definition 3: Atom Task=<OP, C, PreT>
OP reference to the Operation concept in General Ontology, and the C means the
candidates who take charge of this task. The tasks in business environment may not
be independent to others; the most common scenario is that one task depends on some
tasks. PreT is the precondition task.
Definition 4: Task= {Atom Task and Composite Task}
According to the complication, the task could be divided into Atom Task and
Composite Task. Atom Task means those tasks could be described by one OP in
definition 1 and one candidate to finish it. Composite tasks are decomposable into
other (non-composite or composite) processes; their decomposition can be specified
by using control.In another word, the task ontology provides one view to the whole
ontology with greater granularity comparing to the General Ontology.
C) Web Service Ontology
The Semantic Web should enable greater access not only to content but also to
services on the Web. Users and software agents should be able to discover, invoke,
compose, and monitor Web resources offering particular services and having
particular properties, and should be able to do so with a high degree of automation if
desired. In WSPOM, we put more concentration on the abilities web service
possesses. Such abilities are described by OP in General Ontology. Other
dimensionalities of Web Service are presented in Input, Output and PreWS.
Definition 5: Atom Web Service=<OP, I, O, PreWS>
A Web Service can have two sorts of purpose. First, it can generate and return some
new information based on information it is given and the world state. Information
production is described by the inputs and outputs of the process. Second, it can
produce a change in the world. This transition is described by the preconditions and
effects of the process.
Definition 6: Web Service= {Atom Web Service and Composite Web Service}
WSPOM: An Ontology Model for Web Service Planning 451
Just like the Task in definition 4, we use Web Services as the model for process
decomposition and assembly, which means one Web Service, could be assembled by
some other Atom Web Services.
D)

Satisfactory Relation
In WSPOM we put more concentration on the whole tasks whether could be satisfied
by the whole set of web services. We say there is one Satisfactory Relation between
one Task and Web Service if and only if the OPs of one Task in definition 5 could be
covered by OPs of one web service or one series of web services in definition 3. Let
X and Y are two Operations defined in General Ontology, if the X.P

Y.P and
X.E==Y.E, then we say the X could be covered by Y. X.E==Y. E holds not only
when they have the exactly OWL graph, if the two OWL graph describing X.E and
Y.E has the Equality relation in OWL or co
uld be reasoned by OWL reasoned, they
would be covered by each other.
Definition 7:
ST={T|

WSi

WSO :(
OPi
OP
WSi
OPi
OP
T
OP
:
.
,
.




Cover
OP)}
ST means the Tasks has been satisfied by the existing Web Services. WSO means
the whole set of web services in Web Service Ontology. Based on definition 8, we can
give out the algorithm which could figure out what kind of web service we lack of but
should provide.
4 Overall Framework and Planning Algorithm
The main goal of our WSPOM is to help the business analysts and service providers
to find out what web services we lack of but should provide. Figure 2 shows the
overall WSPOM framework, and it consists of Ontology Access and Reasoning


Fig. 2.
Web Service Planning Ontology Model Framework
452 L. Liu and H. Cai
Component, Task Ontology Module, Web Service Ontology Modules, Task/Service
Gap Computing Module, and Web Service Grounding Module, and one Web Service
Code Generation Module throughout the entire system.
The framework depends on some preparations including the ontology modeling of
WSPOM. And Ontology Access/Reasoning Component would provide one access
API to the ontology model for the Task Pattern and Web Service Pattern Resolver
Modules. At the meantime, the reasoning is also applied to the origin Ontology Model
to fetch the truth not been depicted straightly. But for getting the efficiency and the
consistence result, the reasoning of the Ontology Model would not run parallel to the
Computing actions. Once the Operation in the Task Ontology and the Web Service
Ontology are ready, then the Task/Service Gap Computing Module will compute out
the gap between the two based on the Satisfactory Relation described in WSPOM
which originates from the Operation and its precondition, effects described in
changes, which is in the form of OWL Graph. The FindGap algorithm below shows
the concrete steps.
The Algorithm for Finding the Gap between Task Ontology and Web Service
Ontology
Program FindGap (GO,TO,WSO)
GO+=Reason(GO);//Use the Reasoner Engine for OWL
TO+=Reason(TO);//To find the entailed Relation
WSO+=Reason(WSO);
Begin
for(T : TO)
TOperations=
(Find Operations In WSO Mapping to T)
For(WS : WSO)
If(WS Satisfies T)
Tag T with satisfied
Output Ts in TO without the satisfied Tag
end.
Based on the gaps computed out by FindGap algorithm in T/S Gap Computing
Module, we will figure out that what business task could not be satisfied by existing
web services based on the task graph pattern and service graph pattern.
5 Case Study
In this section, we will introduce the use of WSPOM and matching algorithm through a
concrete example. The applications for materials process is typical in manufacturing based
business operations. When one person want to apply for some materials, like printing
papers or steer plates, he or she should write one materials application note first, then the
manager would examine the note to decide approve this application or not. If approve,
then the applicant would contact the warehouse keeper to pick up the materials.
5.1 An Example about Applications for Materials Using WSPOM
Based on the description, There should be three Operations: Approve Operation,
Reject Operation, and Withdraw Operation, three task: Approve Task, Reject Task,
WSPOM: An Ontology Model for Web Service Planning 453
and Withdraw Task. We imagine there only have the service which has two Operation
Approve Operation and Reject Operation. Now the WSPOM for this process could be
presented in figure 3.

Fig. 3. WSPOM for Applications For Materials Process
Let us take the Approve Task as an example. The Withdraw Task could be
described formally as Withdraw Task= {Withdraw OP, Employee, Approve Task}.
The Withdraw OP has {Precondition for W, Effects for W}. Both the Precondition
and Effects could be depicted by one OWL Graph. Employee is the candidate in
charge of finishing the task, and Approve Task is the pre-task which also could be
described by our WSPOM formally. Finally our T/S Gap computing module
computes based on the Satisfactory Relation and some other metrics, but failed to find
one web service to satisfy the Withdraw Task, then the result would be transferred to
the Web Service Grounding Module to generate the web service description.

Fig. 4. WSDL generated by Web Service Description Language Module
454 L. Liu and H. Cai
5.2 Discussion
By defining the Operations and Changed each Operation makes to the state of the
world, our framework could compute the gap between the Task Ontology and the
Web Service Ontology describing the ability the existing web services could provide.
Then the Web Service Description Language Module could generate the WSDL for
the needed web service, moreover, once we get the WSDL file, we could generate the
code stub for the web service automatically. The framework depends on the pre-built
ontology, so the ontology building is also important for the result.
6 Conclusion
In this paper, we present The WSPOM which is especially suitable to the REST
service. It is inspired by the existing problem that when the number and complexity of
web service increase, it’s hard to figure out what web service the organization need to
provide or develop. The WSPOM consists of General Ontology, Task Ontology and
Web Service Ontology. So the business analysts and web service provider could
describe them in the same base. It’s designed to resolve the web service automatic
planning problem. In the future, further research work will be carried out in the
management of ontology and automatic building of the General Ontology, Task
Ontology and Web Service Ontology through data mining or some other theory.
Furthermore the computation algorithm should also be optimized.

Acknowledgments. This research is supported by the National Natural Science
Foundation of China under No.70871078, the National High Technology Research
and Development Program of China (“863” Program) under No.2008AA04Z126, and
Shanghai Science and Technology Projects 09DZ1121500.
References
1. Manola, F., Miller, E.: RDF Primer, W3C Recommendation, February 10 (2004)
2. Brickley, D., Guha, R.V.: RDF Vocabulary Description Language 1.0: RDF Schema W3C
Recommendation, February 10 (2004)
3. Hitzler, P.: OWL 2 Web Ontology Language Primer, W3C Recommendation, October 27
(2009)
4. WSMO: Web Service Modeling Ontology D2v1.3,
http://www.wsmo.org/TR/d2/v1.3/
5. Akkiraju, R., Farrell, J.: Web Service Semantics - WSDL-S, W3C Member Submission,
November 7 (2005)
6. OWL-S: Semantic Markup for Web Services,
http://www.w3.org/Submission/OWL-S/
7. Li, N., Cai, H.: Functionality semantic indexing and matching method for RESTful Web
Services based on resource state descriptions. In: 2nd International Workshop on
Computer Science and Engineering (2009)
8. Schepers, T.G.J.: A lifecycle approach to SOA governance. In: SAC 2008 (2008)
9. Luo, M., Zhang, L.-j.: Practical SOA: Service Modeling. In: Enterprise Service Bus and
Governance in ICWS (2008)
10. Bouillet, E., Feblowitz, M., Liu, Z., Ranganathan, A., Riabov, A.: A Knowledge Engineering
and Planning Framework based on OWL Ontologies. In: ICKEPS 2007 (2007)