SEMANTIC SERVICE DESCRIPTION TO SUPPORT
EDUCATION AND TRAINING
An Easy-to-Apply Service Description Model and Service Registry
Karsten Krutz, Tilmann Kuhn, Christophe Gnad and Sebastian Abeck
Institute for Telematics, University of Karlsruhe, Zirkel 2, Karlsruhe, Germany
Keywords: Semantic service description, service registry, education and training, semantic web.
Abstract: This work describes a semantic service description model based on and inspired by existing service
description approaches like WSDL-S and OWL-S and a service registry to support the creation of service
oriented applications in the area of education and training. Our service description is based on an OWL
ontology and combines a simple message- and state-oriented approach in order to reduce the effort for the
creation of the descriptions which is a major drawback of a lot of existing, powerful semantic service
description approaches. Furthermore, the proposed service description enables the matchmaking algorithm
of the service registry to use not only the data-oriented input and output parameters to identify suitable
services but also considers the preconditions and effects of a service. The usage of the service description
model and the search capabilities are discussed against the background of the education and training area.
1 INTRODUCTION
The importance of service-oriented architectures
increased particularly with the availability of web
services as a platform independent technology.
Especially in scenarios in which different business
units have to cooperate in order to achieve a
common purpose, the service-oriented approach is
well suited and can deliver significant benefits
(Adam et al. 2005). In the area of education and
training, scenarios of this kind are very common.
E.g. the teaching unit has to cooperate with the
course material authors to get appropriate material,
with the IT provider to get the technical equipment
needed for each lecture and with the administration
to arrange the registration of learners for
examinations and to capture the examination results.
As the teachers apply very different teaching
approaches their specific need for IT support is
much diversified. A service-oriented approach can
ease the implementation of the needed IT support by
increasing the reuse of existing functionality in the
area of education and training (Westerkamp 2006).
To support the reuse of existing services a
service registry is needed that enables the users to
define their needs and to get a list of available
services that fulfil these needs (at least partially). To
enable this search, the service registry needs to be
based on suitable service descriptions.
The two main contributions of this paper are:
A new service description model (Chapter 3) that
eliminates deficiencies of the existing approaches
(Chapter 2) and a service registry architecture and its
implementation (Chapter 4) that allows to efficiently
search for services based on our description.
2 RELATED WORK
The semantic service description should at least
cover input and output of the service and two sets of
conditions: the preconditions which have to be met
before executing the service properly and the effects
that are conditions that hold after the successful
execution of the service (Jaeger et al. 2005). These
four service description elements are often referred
to as IOPE (Input, Output, Precondition and Effect).
Current standards from the web service area like
UDDI and WSDL can form the basis for a service
description and retrieval solution but are not
sufficient. A WSDL description provides the
information that is needed to invoke a web service in
a syntactically correct manner and can therefore be
used for the (technical) integration of available
services into the IT solution. WSDL does not
433
Krutz K., Kuhn T., Gnad C. and Abeck S. (2007).
SEMANTIC SERVICE DESCRIPTION TO SUPPORT EDUCATION AND TRAINING - An Easy-to-Apply Service Description Model and Service Registry.
In Proceedings of the Third International Conference on Web Information Systems and Technologies - Web Interfaces and Applications, pages 433-436
DOI: 10.5220/0001283904330436
Copyright
c
SciTePress
provide a standardised way to describe precondition
and effect of a service call and the semantics of the
terms used to describe input and output of the
service can only be included in the description by
using appropriate terminology.
The explicit semantic annotation of the services
is a very important step towards the exploitation of
the full potential of the service-oriented approach
(Patil et al. 2004). Different approaches try to
provide this by adding semantics to conventional
service descriptions like WSDL-S (Akkiraju et al.
2005) or by creating completely new descriptions
like OWL-S (Martin et al. 2004) or Diane Service
Description DSD (Klein 2004). All mentioned
service descriptions include the possibility of
defining all four IOPE service description elements.
Approaches like OWL-S have the deficit, that it
is not easy for the description author to create such a
quite complex description (Patil et al. 2004). This
problem could be reduced by using less complex
description languages that have adequate
expressiveness for certain scenarios.
Service description approaches like WSDL-S
reduce this description creation problem as well, as
they contain less new description elements. It adds
the two missing service description elements
precondition and effect and enables linking to an
ontology to enrich all four service description
elements with semantics. Unfortunately WSDL-S
neither provides an ontology nor gives any
information how the referenced ontology should
look like.
Generally all four types of service description
elements can be used to identify suitable services.
But in many approaches preconditions and effects
are not considered by the matchmaking algorithm as
they are not sufficiently standardised (Jaeger et al.
2005). This leads obviously to less powerful search
capabilities.
The DSD solves this problem by treating the two
condition description elements precondition and
effect the same way as the two data description
elements input and output, thus enabling the
matchmaking algorithm to use all four IOPE
elements for the search (Klein et al. 2005). The
conditions are modelled as states that are represented
in the ontology by concepts inheriting from the top-
level concept "state" (Klein 2004). The DSD uses a
state-oriented service description, which is less
common and intuitive than a combined message-
and state-oriented service description like OWL-S.
The DSD ontology language is proprietary which
reduces the reuse capabilities in other scenarios.
3 SERVICE DESCRIPTION
The service description needs to support the search
of existing services and the integration of the found
services. To support these requirements we propose
a description model that consists of two parts: A
service profile supporting the semantic search and
the service grounding supporting the technical
integration of a found service.
The description of the service profile is based on
a set of ontologies as shown in Figure 1. The
composition of ontologies has some similarities with
the one proposed by (Klein and König-Ries 2003).
Top-Level Ontology
Service
Ontology
Domain
Ontology
State
Ontology
Service
Ontology
Domain
Ontology
State
Ontology
Thing
entity
State
Entity
hasState
*
Value
Figure 1: Service Description Ontologies.
An excerpt of the very simple top ontology is
shown in Figure 1. The concept "state" is later used
to define a services preconditions and effects while
"entity" and "value" are used for input and output.
*
Thing
Thing
l
o
g
i
c
a
l
I
n
p
u
t
l
o
g
i
c
a
l
O
u
t
p
u
t
*
State
State
p
r
e
c
o
n
d
i
t
i
o
n
*
*
e
f
f
e
c
t
ServiceProfile
Entity
String
1
1
textDescription
Figure 2: Service Profile.
The service profile is situated in the service
ontology. Its input and output parameters have
references to concepts in the domain ontology, while
preconditions and effects are defined by references
on state concepts in the state ontology. Furthermore
the service profile contains a textual description of
the service operation that can be used by a human
reader to finally decide whether a service fits his
needs or not. The dashed boxes represent concepts
that are defined in another ontology (the top-level
ontology).
The domain ontology and the state ontology,
contain the specifics of the domain of education and
training as shown in Figure 3.
WEBIST 2007 - International Conference on Web Information Systems and Technologies
434
LearningObject
Entity
CourseMaterial
DeliverySystem
State
entity hasState
*
LDoc
MultiMediaObject
Published
PublishingArea
Domain Ontology State Ontology
Transmitted
Faxed
Mailed
Figure 3: Extracts of the Domain and State Ontologies.
The service which will be used as an example for
a semantic service description has the functionality
to publish a specific multimedia course material
called Living Document (LDoc) to a specific
publishing area. The service profile of the example
service "LDocPublishingService" has two input
parameters referenced as "logicalInput" and as effect
the state "LDocPublished", which is a subclass of
the state "Published" with the restriction that the
entity needs to be an "LDoc". The technical
representations of the inputs are linked using the
concept "Represented". The service ensures that a
given LDoc is published in a given publishing area
after the execution of the service.
Service Profile
LDoc
PublishingArea
effect
entity
entity
entity
Represented
PublishingAreaId
represented
Represented
LdocReference
represented
location
logicalInput
logicalInput
LdocPublished
LdocPublishingService
Figure 4: Example Service Profile.
The link from the technical representations of the
input parameters to the interface description which is
called grounding is realized using WSDL-S. In
WSDL-S the specification of the structure of
message objects are enriched by a semantic
annotation using a so called "modelReference" as
link towards the ontology.
4 SERVICE REGISTRY
In order to store and search for the service profiles
and the service groundings a service registry was
created based on existing software components.
The service registry is divided into a server and a
client part. The server contains a UDDI registry
which is used to register the WSDL-S descriptions.
Furthermore the server provides access and
reasoning functionality to the four OWL ontologies
that are needed for the service profile descriptions.
In the service registry server the UDDI
implementation jUDDI was used based on a mySQL
database and a Tomcat J2EE server. The OWL
ontologies were created using Protégé 2.1 as
ontology editor and are provided using an Apache
webserver. As reasoner the product
RacerPro 1.9 was used and the access to the
reasoning functionality was provided using DIG
Description Logic Interface 1.1.
<<device>>
:Service Registry Server
<<execution env>>
:Eclipse
:ServiceRegistry
ClientPlugIn
:ServiceRegistry
ClientPlugIn
<<device>>
:Service Registry Client
HTTP
UDDI/
SOAP
DIG
<<execution env>>
tomcat:J2EEServer
<<web app>>
juddi:UDDIServer
<<database>>
mySQL:SQLServer
top.owl
upperService.owl
serviceProfile.owl
eduDomain.owl
apacheHttp:WebServer
racerPro:DIGReasoner
<<execution env>>
tomcat:J2EEServer
<<web app>>
juddi:UDDIServer
<<execution env>>
tomcat:J2EEServer
<<web app>>
juddi:UDDIServer
<<web app>>
juddi:UDDIServer
<<database>>
mySQL:SQLServer
top.owl
upperService.owl
serviceProfile.owl
eduDomain.owl
apacheHttp:WebServer
top.owl
upperService.owl
serviceProfile.owl
eduDomain.owl
apacheHttp:WebServer
racerPro:DIGReasoner
Figure 5: Deployment Diagram of the Service Registry.
On the client side a GUI interface realized as
Eclipse plug-in enables a user to enter his queries
and get access to search results.
The retrieval process that is supported by the
service registry starts with a user's need for a
service. The user tries to represent his need using the
query syntax that is supported by the retrieval
process (Stojanovic et al. 2003). In the retrieval step,
the query is matched against the repository using a
retrieval model such as Boolean or probabilistic
model (Baeza-Yates and Ribeiro-Neto 1999). The
output of this step is a list of service instances.
Information Retrieval
Conceptualization
Information
Retrieval
Need for a
Service
Service
Profile
Query
Service
Profiles
Service
Grounding
Query
Query
generation
Service Instance
Information
Retrieval
Service
Instances
Service Profile
Information
Retrieval
Figure 6: Semantic Service Retrieval Process.
SEMANTIC SERVICE DESCRIPTION TO SUPPORT EDUCATION AND TRAINING - An Easy-to-Apply Service
Description Model and Service Registry
435
The retrieval step starts with a service profile
search query created by the user. This query is
defined on a quite abstract (business-)level but can
also contain technical restrictions. The first activity
generates a list of fitting service profiles that
represent types of services that meet the needs
defined in the query. One very important feature is
the query refinement which is used to get optimized
queries for recall and precision enabling the user to
get more results that are potentially relevant to him.
In the second activity a list of service instances is
generated that provide the functionality defined in
the service profiles of the first retrieval's result list.
5 DISCUSSION
If a specific publishing service like the one in Figure
4 is needed, the corresponding query will probably
use a specific concept as input. The service
repository can find not only exact matches but will
use the hierarchic structure of the domain ontology
and might find a compatible service with a super
class as input. This usage of an inheritance hierarchy
can be applied to increase the recall as much more
potential services descriptions match these queries.
Synonymous terms in search queries and service
descriptions can lead to no search results even if a
matching service would be available. Due to the
common terminology of the domain ontology the
usage of synonymous terms can be prevented.
The possibility to specify the functionality of a
service makes it possible to prevent search results
with matching operation signature that do not
provide the needed functionality.
Compared to OWL-S the proposed service
description is much less complex which can lead to
decreased effort for the creation of service
descriptions and service queries.
The support of the business and the technical
layer enables linking these two terminologies.
6 SUMMARY
The paper has introduced an easy-to-apply semantic
service description for web services and
demonstrated its usage in the area of education and
training services. The introduced service description
is based on a combined message- and state-oriented
approach and the matchmaking algorithm can use all
four IOPE attributes to identify suitable services. As
the approach is based on a domain and a state
ontology it enables query modifications that lead to
higher recall of the search. Compared to OWL-S the
complexity of the service descriptions is low and
reduces the effort required for the creation of service
descriptions and search queries.
Apart from the service description a service
registry based on UDDI and OWL was introduced
that enables publication and search of service
descriptions created using the proposed service
description in an efficient manner.
One of our next steps to enable the description of
a broader area of services targets the refinement of
the currently available domain and state ontologies
for the area of education and training.
REFERENCES
Akkiraju, R. et al., 2005. Web Service Semantics –
WSDL-S, Version 1.0, W3C Member Submission,
[online], November 2005
available at: http://www.w3.org/Submission/WSDL-S.
Adam, O.,Hofer, A., Zang, S., Hammer, C., Jerrentrup,
M., Leinenbach, S., 2005. A Collaboration Framework
for Cross-enterprise Business Process Management. In
INTEROP-ESA '05, First International Conference on
Interoperability of Enterprise Software and
Applications. Springer
Baeza-Yates, R., Ribeiro-Neto, B., 1999. Modern
Information Retrieval, Addison Wesley.
Jaeger, M., Engel, L., Geihs, K., 2005, A Methodology for
Developing OWL-S Descriptions. In INTEROP-ESA
'05, First International Conference on Interoperability
of Enterprise Software and Applications Workshop on
Web Services and Interoperability. Springer.
Klein, M., König-Ries, B., 2003. A Process and a Tool for
Creating Service Descriptions Based on DAML-S. In
TES'03, 4th VLDB Workshop on Technologies for E-
Services. Springer.
Klein, M., König-Ries, B., Müssig, M., 2005. What is
Needed for Semantic Service Descriptions? – A
Proposal for Suitable Language Constructs. In
International Journal of Web and Grid Services 2005,
Volume 1 (Issue 3) pp. 328-364, Inderscience
Publishers.
Klein, M., 2004. Manual for the DIANE Service
Description, Technical Report TR 2004-17, ISSN
1432-7864.
Martin, D. et al., 2004. OWL-S: Semantic Markup for
Web Services, W3C Member Submission, [online],
November 2004,
available at: http://www.w3.org/Submission/OWL-S.
Patil, A., Oundhakar, S., Sheth, A., Verma, K., 2004.
METEOR-S Web service Annotation Framework. In
13th conference on World Wide Web. ACM Press.
Stojanovic, N., Studer, R., Stojanovic, L., 2003. An
Approach for the Ranking of Query Results in the
Semantic Web. In ISWC 2003, 2
nd
International
Semantic Web Conference, Springer.
Westerkamp, P., 2006. Flexible Elearning Plattforms: A
Service-Oriented Approach, Logos Verlag, Berlin.
WEBIST 2007 - International Conference on Web Information Systems and Technologies
436