9
Semantic Resources to Support Web Services Selection, Mediation, and Composition Marcelo Moyano, Agustina Buccella, and Alejandra Cechich Departamento de Ciencias de la Computación Universidad Nacional del Comahue, Neuquén, Argentina [email protected], {abuccell, acechich}@uncoma.edu.ar Abstract Adding semantics to Web Services enable the automatic selection, mediation and composition of services across heterogeneous users and domains. The Semantic Web has the potential to provide the Web Services infrastructure with the information it needs through formal languages and ontologies for reasoning about service description, meaning of exchanged messages, etc. In this paper, we analyze several current approaches that implement Semantic Web Services by focusing on activities they are required to perform. These activities involve discovery, selection, mediation, and composition. We particularly analyze and compare how the approaches implement these activities by using semantics resources. We present a framework for comparison, which is used to highlight strengths and weaknesses as well as to detect topics for further research. 1. Introduction It is a clear goal of the semantic web [3] that semantic descriptions be used to describe web services so that other software agents could use them without having any prior knowledge about how to invoke them, and making data able to be machine-understandable. The technology that ultimately enables individuals to use their own personal software agents for such things as information discovery is based on ontologies, which allow us to define a set of knowledge terms, semantic interconnections, and rules of inference on a particular domain. RDF (Resource Description Framework) and DAML/OWL [1][9][34] were designed to support the development of many different inter-related ontologies, each published on the web to be shared within communities and across communities that have a strong need to interact. OWL adds new modeling primitives and formal semantics to RDF, allowing us to formalize a domain, define individuals asserting properties, and reason about classes and individuals to the degree permitted by the formal semantics of the OWL language. It can be (partially) mapped to a description logic [2] making the use of existing reasoners such as FACT [17] and RACER [15] possible. On the other hand, Web Services [35] provide a new model of the web in which sites exchange dynamic information on demand. Combination of both – Semantic Web and Web Services – introduces the concept named Semantic Web Services (SWS) [26]. They are web services that can be dynamically discovered, applied and composed, by reasoning from published representations of their service descriptions, expressed in a declarative semantic web description language, such as OWL. Once services are described by published semantic representations, using shared ontologies of concepts and relations, other software systems can reason about how to invoke the services dynamically by reading these descriptions at run time, composing messages with the prescribed content, and sending them using WSDL [20] message templates. Here, increasing interoperability means having an ability to reach out to communities with services that were developed independently, using different ontologies. If the communities share the same syntactic language for defining ontological terms (e.g., RDF or OWL), then these communities can be bridged by reading the published ontologies of the other and, where necessary, defining correspondences or more complex mappings between related terms. A Web Service works under a simple scenario with three phases and three main elements. Figure 1 shows this scenario, where the phases are publish, find, and invoke; and the elements are service provider, service requestor and discovery agencies. A service provider produces a WSDL description of the service that details its interface; that is, operations of the service and the input/output parameters of each operation. The service description also contains information of how the service can be located in the network. Then, a provider publishes the service description in one or more discovery agencies. At a given moment, a service requestor finds the service description in the discovery agencies and configures a client, which can Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

[IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - Semantic Resources to Support Web

  • Upload
    a

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Semantic Resources to Support Web Services Selection, Mediation, and

Composition

Marcelo Moyano, Agustina Buccella, and Alejandra Cechich

Departamento de Ciencias de la ComputaciónUniversidad Nacional del Comahue, Neuquén, Argentina

[email protected], {abuccell, acechich}@uncoma.edu.ar

Abstract

Adding semantics to Web Services enable the automatic selection, mediation and composition of services across heterogeneous users and domains. The Semantic Web has the potential to provide the Web Services infrastructure with the information it needs through formal languages and ontologies for reasoning about service description, meaning of exchanged messages, etc. In this paper, we analyze several current approaches that implement Semantic Web Services by focusing on activities they are required to perform. These activities involve discovery, selection, mediation, and composition. We particularly analyze and compare how the approaches implement these activities by using semantics resources. We present a framework for comparison, which is used to highlight strengths and weaknesses as well as to detect topics for further research.

1. Introduction

It is a clear goal of the semantic web [3] that semantic

descriptions be used to describe web services so that

other software agents could use them without having

any prior knowledge about how to invoke them, and

making data able to be machine-understandable. The

technology that ultimately enables individuals to use

their own personal software agents for such things as

information discovery is based on ontologies, which

allow us to define a set of knowledge terms, semantic

interconnections, and rules of inference on a particular

domain. RDF (Resource Description Framework) and

DAML/OWL [1][9][34] were designed to support the

development of many different inter-related ontologies,

each published on the web to be shared within

communities and across communities that have a strong

need to interact. OWL adds new modeling primitives

and formal semantics to RDF, allowing us to formalize

a domain, define individuals asserting properties, and

reason about classes and individuals to the degree

permitted by the formal semantics of the OWL

language. It can be (partially) mapped to a description

logic [2] making the use of existing reasoners such as

FACT [17] and RACER [15] possible.

On the other hand, Web Services [35] provide a new

model of the web in which sites exchange dynamic

information on demand. Combination of both –

Semantic Web and Web Services – introduces the

concept named Semantic Web Services (SWS) [26].

They are web services that can be dynamically

discovered, applied and composed, by reasoning from

published representations of their service descriptions,

expressed in a declarative semantic web description

language, such as OWL. Once services are described

by published semantic representations, using shared

ontologies of concepts and relations, other software

systems can reason about how to invoke the services

dynamically by reading these descriptions at run time,

composing messages with the prescribed content, and

sending them using WSDL [20] message templates.

Here, increasing interoperability means having an

ability to reach out to communities with services that

were developed independently, using different

ontologies. If the communities share the same syntactic

language for defining ontological terms (e.g., RDF or

OWL), then these communities can be bridged by

reading the published ontologies of the other and,

where necessary, defining correspondences or more

complex mappings between related terms.

A Web Service works under a simple scenario with

three phases and three main elements. Figure 1 shows

this scenario, where the phases are publish, find, and

invoke; and the elements are service provider, service requestor and discovery agencies. A service providerproduces a WSDL description of the service that

details its interface; that is, operations of the service

and the input/output parameters of each operation. The

service description also contains information of how

the service can be located in the network. Then, a

provider publishes the service description in one or

more discovery agencies. At a given moment, a service requestor finds the service description in the discovery

agencies and configures a client, which can

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

communicate with the available service in the provider

[13]. Finally, the requestor invokes the discovered

service using web service communication protocols.

The platform neutral nature of the web services

creates the opportunity for building composite services

by using existing elementary or complex services

possibly offered by different enterprises. Under this

scenario, our paper focuses on categorizing the way

semantics is added to different activities in order to

enable automatic discovery, selection, mediation,

execution, and composition.

Some works exist in the literature categorizing and

comparing Semantic Web Services. For example, a

comparison between the IRS approach introduced in

[27] and other approaches, is explained in [7]. But this

comparison is focused mainly on highlighting the

advantages of only one approach – the IRS – with

respect to the others. Another work, presented in [23],

describes current technologies used in SWS. It

proposes useful requirements a web service must

contain to perform activities automatically. Besides,

authors propose refinements in some aspects of Web

Services to add semantics descriptions. Generally

speaking, this work compares the proposals using

DAML-S [10] to those using WSMF [14].

Our work describes several approaches in the

literature by introducing a conceptual framework. The

framework is divided into two parts – activities and

features. The former refers the activities (discovery,

selection, mediation, execution, and composition) a

web service can perform automatically. Depending on

the mechanisms used to reach them, we score the

activities as providing High Support (HS), Medium

Support (MS), Low Support (LS), and No Support

(NS) levels. The latter – features – characterizes other

important aspects of Semantic Web Services, such as

the type of semantic specification, use of standards,

inference rules, and so forth. Our framework aims at

highlighting advantages and disadvantages on the use

of the different proposals, allowing us to suggest

improvements.

This paper is organized as follows. In Section 2 we

introduce the most important aspects of our framework

focusing on the activities a Web Service is required to

perform. Section 3 briefly describes the Semantic Web

Services approaches in terms of the framework’s

elements, which let us characterize and assess the

approaches. Finally, in the last section conclusions are

presented.

2. Aspects to characterize Semantic Web

Services (SWS)

Several standards to Web Services have emerged to let

Web Services interact. Firstly, WSDL (Web Service

Description Language) [20] is an extension of XML,

which allows describing syntax of Web services, so

that users know how to invoke them. That is, WSDL

describes each service’s interface, how to contact it and

how to serialize the information exchanged.

Secondly, UDDI (Universal Description Discovery

and Integration) is a public registry designed to store

information about businesses and their services in a

structured way. This information includes web service

interfaces that are accurately classified. Besides, each

entry in the UDDI registry can include features of

security, authorization and authentication, which

controls Web services access.

Both WSDL and UDDI were designed to clearly

delineate between abstract meta-data and concrete

implementations. One of the most interesting

consequences of this is that there can be multiple

implementations of a single WSDL interface.

Finally, WSCI (Web Service Choreography

Interface) describes how Web Service operations (such

as those defined by WSDL) can be choreographed in

the context of a message exchange in which the Web

Service participates.

Also, within Semantic Web [3][39] several

standards are emerging. Hence, adding semantic

descriptions to Web Services exhibits some advantages

[31] such as the possibility of representing and

reasoning about the capabilities of a Web service;

explicitly expressing and reasoning about business

relations and rules; automatic execution of activities;

etc. Therefore, activities such as discovery, selection,

mediation, execution, and composition may run

automatically when semantic descriptions are included

into a Web Service’ structure [12]. Particularly,

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

motivation of our work comes from automatic aspects,

which might be addressed in each activity as follows.

• SWS discovery involves automatically locating

Web Services that provide a particular service

and adhere to requested properties. Discovery

consists of a semantic matching between the

description of a service request and the

description of a published service.

• SWS selection is required if there is more than

one service matching the request. Automatic

selection is possible when, based on semantic

information and pre and post conditions, one

service can be chosen instead of another one.

• SWS mediation involves tasks to transform the

original query (required by the requester) into

one that can be sent to the provider. This

process is characterized by two aspects – the

efficient use of the requester-provided

information; and the mapping from the

requester’s messages to the provider’s and vice

versa. Often, this activity has to face problems

related to ontological mismatches [38].

• SWS execution involves an identified web

service automatically executed by a computer

program or agent. Human intervention is

required to execute and understand a particular

service. On the other hand, in semantic web

services, a declarative, computer-interpretable

API is supplied to tell the agent what input is

necessary, what information will be returned,

and how to execute – and potentially interact

with – the service automatically.

• SWS composition involves services that are

composed of other simpler services. In spite of

they represent combinations of services, all

compositions have to provide a given

functionality when a request cannot be fulfilled

by using stand-alone available services [23].

Capabilities of a SWS describe what the service can

do, in such a way that the required high-level

functionality description can be seen as the capability

of the service. Different services can provide the same

capability (e.g. book a flight), and the same service can

provide different capabilities (e.g., search a book and

buy a ticket) [23]. To support the dynamic execution of

all the activities, a capability must include at least

information about inputs, preconditions, outputs,

postconditions, textual descriptions, and an identifier.

As we have mentioned in the previous section, five

elements are used to describe our characterization

framework as follows: Activities, Semantic Specification, Use of Standards, Development and

Particularities. The first element is an evaluative

aspect because it contains information about the level

of support each approach provides – High Support

(HS), Medium Support (MS), Low Support (LS), and

No Support (NS).

On the other hand, the last four elements are

descriptive aspects, which are used to describe

additional features. Particularly, Semantic Specificationindicates the mechanisms used to add semantics to the

specification of the Web Services. Also inferences are

important in this aspect, since each approach,

according to the language used for the semantics, uses

a different inference engine. Inferences are used to map

requested services to available services. The Use of Standards element indicates which approaches apply

semantics to Web Services standards. The

Development element indicates the diverse developing

aspects in order to implement a Semantic Web Service.

For example, whether an approach develops a

framework; a framework and an infrastructure; or tools

to support some characteristics of its system. Finally,

the Particularity element indicates particular aspects of

each approach in order to implement its proposals.

Our framework contains the key features to describe

SWS based on activities and semantic resources added

to work automatically. It provides a general idea of the

aspects we have to analyze when we decide to

implement or develop a Web Service. To instantiate the

framework, we have selected seven approaches from

the literature, which are representative proposals of the

state of the research at this moment. For brevity

reasons, other analyzed approaches, such as the ones

presented in [19][24][26], are not included in this

paper.

Table 1 shows the surveyed approaches that

implement SWS. Let us discuss their characterization

in the following section.

3. Characterizing SWS

The first approach in Table 1 by Paolucci et al [30],

proposes using DAML-S [10] (or OWL-S [33]) to

enrich the WS description in the UDDI registry.

Remember that a Semantic Web architecture contains

providers, requesters and a registry or service

discovery (UDDI). This registry contains all providers

together with their capabilities. When the requester

triggers a meta-query to the registry, it responses with a

list of relevant providers. Then, the requester is

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

responsible of choosing the best providers to interact

with them directly.

OWL-S contains three modules: a profile, a process model and a grounding. The profile provides a high-

level description of a service and its provider, that is, it

describes the service capabilities together with any

additional feature that help describe it.

Table 1. Current approaches of SWS described using five different aspects

Activities D

isco

ver

y

Sel

ecti

on

Med

iati

on

Ex

ecu

tion

Com

posi

tion

Semantic

Specification

Use of

Standard

Development Particularities

Paolucci et al [30] HS NS NS NS NS DAML-S (OWL-S)

with DAML+OIL

inferences

UDDI,

WSDL

OWL-S

Architecture of

OWL-S/UDDI

Matchmaker

Introduce the use of

DAML in Web Services

Sycara et.al. [37] HS HS LS NS NS Extension of OWL-

S with DAML+OIL

inferences

WSDL

OWL-S

Architecture of the

implementation of

broker agents

Introduce a Broker agent

in the WS architecture

Burstein [4] NS NS HS NS NS OWL-S with

DAML+OIL

inferences

UDDI

WSDL

OWL-S

A method based on

the mediation

activity

Use of a set of different

ontologies to generate

mappings.

Solanki et al [36] NS NS NS NS HS OWL-S and SWRL

with DAML+OIL

inferences

OWL-S A framework for

service

composition

Use of the framework also

to verification of service

composition.

Fensel et al [5][11].

Refined by Roman

et al [32].

HS HS MS NS HS WSMF, WSMO

with F-logic

inferences

WSMO WSMF

Framework,

WSMO and an

Architecture to

SWS

Use of mediators

Motta et al [27]

extended in [8]

HS HS MS HS HS UPML WSMO

with OCML

inferences

SOAP

WSMO

Infrastructure, and

IRS-II framework

A tool to generate Web

Services based on stand-

alone programs

Oren [29] MS MS LS MS MS WSMO WSMO Architecture and

Infrastructure of

WSMXs

Introduce a manager

component which

controls all the WS

activities

The process model enables an agent to perform a more

in-depth analysis of whether the service meets its

needs, compose service descriptions from multiple

services to perform a specific task, coordinate the

activities of different agents, and monitor the execution

of the service. Summing up, the profile provides the

information needed for an agent to discover a service,

whereas the process model provides enough

information for an agent to make use of a service [10].

Finally, the grounding describes how atomic processes,

which provide abstract descriptions of the information

exchanges with the requesters, are transformed into

concrete messages that can be exchanged on the net.

The main goal of Paolucci’s approach is allowing a

semantic description and matching services within

UDDIs. Thus, all search functionalities provided by

UDDIs can be used to retrieve information about

services that are represented as OWL-S services.

Besides, a matching engine has been implemented to

perform inferences based on DAML+OIL [9] logics

and effectively add capability matches to UDDIs.

As we can see in Table 1, this approach is scored as

providing High Support (HS) only for the discovery

activity. Unfortunately, the other activities are not

addressed, so they must be scored as No Support.

The second approach by Sycara et.al. [37], uses

broker agents with OWL-S semantic descriptions as

discovery, selection and mediation mechanisms

between providers and requesters. Every

communication between a provider and a requester is

through a broker agent. Thereby, broker agents change

the current Web Services’ architecture. In this

approach, the requestor sends a query to the broker and

it must find one or more appropriate providers to

interact. The broker performs some tasks such as

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

interpreting service provider capabilities and requester

queries (discovery), finding the best provider based on

a requester’s query (selection), invoking the selected

provider on the requester’s behalf, interacting with the

provider as necessary to fulfill the query (mediation)

and returning query results to the requester.

As disadvantages, brokers work as a centralized

system with all the pitfalls these systems contain. But

as an advantage, they work like mediators translating

and finding mappings between requesters’ queries and

providers’ capabilities.

To allow flexibility, this approach extends the

OWL-S process model’s specification. Once the broker

receives the meta-query sent from the requester, it

provides an initial, provider-neutral process model to

the requester containing additional information the

broker needs. Then the requester sends the correct

query (based on the new process model) allowing the

broker to choose the best providers to perform the

required service. Thus, the discovery and selection

activities are Highly Supported (HS) (Table 1). The

mediation activity is scored with Low Support (LS)

because this task requires the broker to transform the

queries into ones that can be sent to the provider.

Although the approach gives some mechanisms to

mediate and proposes the use of ontologies and

inferences to map queries into services, the mismatches

[38] among concepts of the involved parties and the

ways to solve them are not specified. The approach

must generate tools or additional mechanisms showing

how this mediation is performed.

The third approach by Burstein [4], presents a

proposal to the mediation activity. In contrast to the

second approach, this proposal follows the ordinary

architecture of WS, in which the selection activity is

performed by the requester. Semantic descriptions

about requesters and providers include not only inputs,

outputs, and pre- and post- conditions, but also other

semantic categories of the objects those inputs refer to,

and their relationship to the service’s effects. This

information is represented by using a set of different

ontologies written in OWL-S.

This approach presents the drawbacks of dealing

with different representations between the ontologies of

the requesters and the ontologies of the providers, more

specifically called ontological mismatches [38]. In

order to perform the translation, bridge axioms are

introduced in this proposal. They are like ontology

mappings including simple correspondences between

terms (uni- or bi-directional), rules defining terms in

one ontology relative to some set of terms in another,

and even functional mappings, such as for translating

units of measure. These axioms are available on the

Web and can be used for both requesters and providers.

Besides, axioms can be found semi-automatically by

using some interactive tools developed in the literature

[21]. But sometimes these bridging axioms are

incomplete or absent, and a human will need to

intervene to define additional correspondences before

the agent can reason with them. This proposal is scored

as Highly Supported in the mediation activity (Table 1)

because authors have addressed the mediation problem

in all its facets. Also, they have implemented several of

these aspects with some WS examples.

The fourth approach by Solanki et al [36], presents a

proposal to automatic composition of Web Services.

Authors propose a methodology to enhance the

semantic description of a service with temporal

properties formally named assumption and commitment(A-C). An assumption is an ongoing temporal property

including constraints on input parameters that a service

provider demands to be true as long as his service is in

execution. The assertions for the commitment can be

any temporal property of the service which the provider

wishes to expose as a guarantee to the assumption.

They applied the A-C framework formerly to

specify a process within a network, and later on to

manage Web Service composition. Semantics

descriptions including pre- and post- conditions are

represented using OWL-S and SWRL (Semantic Web

Rule Language)[18]. SWRL is a proposal for a rule

language designed to express rules and constraints in

the framework of the OWL language. A SWRL

representation of A-C properties is used to represent

rules for service composition.

This proposal is scored as Highly Supported (HS) in

the composition activity (Table 1) because the

formalism added by the authors clearly shows how the

composition activity can be done automatically. By

using a simple case of study of an auction service,

authors show how their proposal can formally check

pre and post- conditions and determine which services

can be composed.

The fifth approach by Fensel et al. and refined by

Roman [5][11], describes the Web Service Modeling

Framework (WSMF). It provides the model for

developing and describing Web services and their

composition. A model in WSMF consists of four main

different elements: Ontologies, Goal repositories, Web services descriptions and Mediators. The ontologiesare used to define the vocabulary that is used by other

elements of WSMF specifications (document types).

They enable reuse of terminology as well as

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

interoperability between components referring to the

same or linked concepts. The ontologies can be

represented in RDF or OWL. The goal repositoriesdefine the problems that should be solved by web

services. The description of a goal specifies objectives

that a client may have when he consults a Web service.

The same web service can serve different goals, and

obviously different (competing) web services can serve

the same goal. The Web services descriptions define

various aspects of a web service; for example,

distinguishing between elementary and complex Web

services. WSMF identifies more than ten aspects. For

instance, the mediators that bypass interoperability

problems by mediating between different interaction

styles of components.

The WSMF defined in this approach is close to the

work with DAML-S. Both use the Semantic Web's key

enabling technology of ontologies as their basis. A

detailed comparison between DAML-S and WSMF is

provided in [14]. Besides, a Conceptual Architecture

[5] has been designed to enable semantic-driven Web

service applications.

This approach is being refined by developing a

formal ontology and a formal language. The Web

Service Modeling Ontology (WSMO) [32] has been

developed to show which elements are used for each

WSMF element (ontologies, goals, web service

descriptions and mediators). Many properties of goals,

mediators, ontologies and web services are considered

to be axioms, defined by logical expressions. These

logical expressions are described in F-Logic [22].

Hence, this proposal is scored as Highly Supported

(HS) in discovery, selection and composition.

Mediation is scored as Medium Support (MS) because

a brief description of WSMO mediators is addressed by

this proposal.

The sixth approach by Motta et al. [27], describes

another framework to include semantics in Web

Services named IRS-II (Internet Reasoning Service).

Furthermore, IRS-II is an implemented infrastructure

for semantic Web services. The main goal of IRS-II is

to support the publication, location, composition and

execution of heterogeneous web services, augmented

with semantic descriptions of their functionalities. IRS-

II is based on the UPML framework [12]. UPML

identifies three classes of components: Domain modelsdescribing the domain of an application; Task modelsproviding a generic description of the task to be solved

(specifying the input and output types, the goal to be

achieved and the preconditions); Problem Solving Methods (PSMs) providing abstract descriptions of

reasoning processes; and Bridges specifying mappings

between the different models within an application.

Each class of component is specified by means of an

appropriate ontology.

Basically, in the IRS-II architecture, we distinguish

three main components: the Server IRS, the IRSPublisher and the IRS Client, which communicate

through a SOAP-based protocol. The IRS server stores

descriptions of semantic web services. A knowledge

level description is stored using the UPML framework

of tasks, PSMs and domain models. They are

represented internally in OCML [28], an Ontolingua-

derived language which provides both the expressive

power to express task specifications and service

competencies, as well as the operational support to

reason about them. The IRS Publisher links web

services to their semantic descriptions within the IRS

server and automatically generates a set of wrappers

which turn standalone Lisp or Java code into a web

service described by a PSM. Finally, the IRS Client

supports web service invocation through capability

driven. An IRS-II user simply asks for a task to be

achieved and the IRS-II broker locates an appropriate

PSM and then invokes the corresponding web service.

Recently, a new version of IRS, IRS-III [8], develops a

platform and a infrastructure for creating WSMO-based

Semantic Web Services.

In consequence, this proposal is scored as Highly

Supported (HS) in discovery, selection, composition

and execution. Mediation is scored as Medium Support

(MS) because the UPML provides resources to perform

the mediation through bridges.

The seventh approach by Oren [29], presents the

WSMX execution environment (framework) for

dynamic discovery, selection, mediation and invocation

of WS. Like the fifth approach, WSMO is used to

semantically describe Web Services. Authors propose

an architecture in which six elements are defined as

follows: manager, which is invoked by some

application with an specific goal to be resolved, and is

responsible of invoking the different components in

order to achieve the required functionality; repository,

which is a registry service similar to UDDI; and

discovery, selector, mediator and invoker components

used to resolve the requested goal.

Like the second approach, a requester only asks

about its needs. The invocation of the different

activities is performed by the manager (like the broker

agent). Therefore, the complexity of resolving these

tasks are unknown by the requester.

After a goal is specified, the manager asks the

discovery component to find all the web services that

provide the capability that satisfies this goal. The

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

discovery component just selects all the capabilities

that are syntactically identical to the goal. For Web

Services that use a different ontology from the ontology

used by the goal, mediation is needed, translating the

goal to the ontology of the web service. Then the

manager asks the selection component to select from

this list of web services the one that matches best the

preferences specified in the goal. Finally, the manager

asks the invocation component to invoke the selected

web service, using either the original goal or the

mediated goal.

This proposal is scored as Medium Support (MS) in

discovery, selection, and execution activities because

the implementation of each component is not defined.

Authors only describe the architecture and the

communication pattern; and the components are

described as black-boxes. With respect to the

mediation activity, a Low Support (LW) is scored

because there is no description about mechanisms used

to match requester and provider ontologies. Finally, an

extended proposal to support all WS activities (i.e.

composition) is described in [6]. Therefore, the

composition activity is scored as Medium Support

(MS).

3.1 Discussion

Semantic Web Services is still an open research and

many approaches are emerging every day proposing

solutions or semi-solutions to reach automatic

interoperation. All approaches described in this paper

are still under development, and currently the research

community is focusing on different aspects to improve

both the framework as well as the system infrastructure.

We observe that researchers of different approaches

are aimed to make new standards involving benefits of

each of them; for example, WSMO was added in IRS

III to improve interoperability within WSMF.

Besides, few approaches present a solution to the

whole problem, but in general they focus on one or

more activities of SWS. For example, Paolucci et al

only describe a solution for the automatic discovery

activity. As we aforementioned, some proposals

complement each other making possible working

together.

Note that none of the approaches provides a final

solution to execute SWS automatically, but each of

them presents advantages and disadvantages that we

have to take into account. The main disadvantage refers

to the mediation activity because few proposals present

a full implementation about aspects involved in this

activity. The proposal by Burstein is the only one that

contains a full description about the problems involved

in mediation tasks.

Results of the comparison of the different

approaches are presented in Figure 2. We can see that

the Motta et al. and Fensel et al. approaches describe

the most complete solutions.

From our analysis, selection, mediation and

composition are the activities that need more research

efforts. Let us briefly enounce some reasons.

As we can see in Figure 2, the selection activity is

highly supported by several proposals. In general, to

perform this activity, all proposals present mechanisms

to check that the preconditions of the services are

satisfied and prove that the post-conditions and effects

are the requested ones. However, these mechanisms are

not enough to select the best web service, because

aspects like cost and quality of service are not

considered. As an improvement, the work in [25]

introduces an approach based on ratings that can be

obtained by feedback received from clients or

calculated automatically.

The mediation of web services presents similar

features to Semantic Web development. In both cases,

ontologies are the tools used to find the most suitable

mappings among descriptions. There are several

approaches in the literature [21] describing new

methods to achieve ontology mappings, but they are

still in a development stage. There are no standard

methods consolidated in the community.

Finally, the composition activity involves several

aspects of the two activities aforementioned. For

example, suppose that a client requires a service to buy

a book involving three tasks: choose the book, ship it,

and debit the cost from a credit card. Each task can be

part of a different service and the composition

component must select the best service to perform each

task and mediate among them to achieve the complete

request. Therefore, by improving selection and

mediation, several unsolved characteristics of the

composition will be improved.

The use of standards for Web Services is another

important aspect to take into account. This aspect is

useful to make the use of Semantic Web Services be

supported by all software community. Therefore,

approaches that apply semantic through standards have

a major projection in the software industry.

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

4 Conclusion

Semantic web services hold the promise of greatly

increasing interoperability among software agents and

web services by enabling content-based automated

service discovery, mediation, and composition. In this

paper, we have introduced a framework to characterize

those activities through the use of semantics resources.

Seven representative proposals were surveyed from

literature and characterized according to our

framework. As a conclusion, we highlighted several

needs of further research. However, we are aware that a

more exhaustive analysis is required in order to

examine each activity deeply. This analysis should

consider all the specific problems a SWS has to face in

order to solve each of them.

5. Acknowledgments

This work is partially supported by the UNComa

project 04/E059.

6. References

[1] Antoniou, G., Harmelen F. Web Ontology Language:

OWL. Handbook on Ontologies in Information Systems.

Staab & Studer Editors. Springer-Verlag, 2003.

[2] Baader, F., Calvanese, D., McGuiness, D., Nardi, D. and

Patel-Schneider, P. editors. The Description Logic Handbook

- Theory, Implementation and Applications. Cambridge

University Press, ISBN 0-521-78176-0, 2003.

[3] Berners-Lee, T., Hendler, J., Lassila, O. The Semantic

Web. Scientific American, May 2001.

[4] Burstein, M., H. “Dynamic Invocation of Semantic Web

Services That Use Unfamiliar Ontologies”. IEEE Computer

Society, (pp.67-73), July-August 2004.

[5] Bussler, C., Fensel, D., Maedche, A. “A Conceptual

Architecture for Semantic Web Enabled Web Services”

SIGMOD Record. Vol.31(4), pp. 24-29, 2002.

[6] Bussler, C., Cimpian, E., Mocan, A., Moran, M.,

Zaremba, M. “WSMX: An Execution Environment for

Semantic Web Services”. Position Paper at W3C Workshop

on Frameworks for Semantics in Web Services, 2005.

[7] Cabral, L., Domingue, J., Motta, E., Payne, T. and

Hakimpour, F. “Approaches to Semantic Web Services: An

Overview and Comparisons”. In proceedings of the First

European Semantic Web Symposium (ESWS2004); May 10-

12, 2004, Heraklion, Crete, Greece.

[8] Confalonieri, R., Domingue J. and Motta, E.

“Orchestration of Semantic Web Services in IRS-III”. In

proceedings of the First AKT Workshop on Semantic Web

Services (AKT-SWS04) KMi, The Open University, Milton

Keynes, UK, December 8, 2004.

[9] Connolly, D. ,Van Harmelen, F., Horrocks, I.,

McGuinness, D., Patel-Schneider, P., Stein, L. “DAML+OIL

Reference Description”. W3C, December 18, 2001.

Available at http://www.w3.org/TR/daml+oil-reference.

[10] DAML-S Coalition: A. Ankolekar, M. Burstein, J.

Hobbs, O. Lassila, D. Martin, S. McIlraith, S. Narayanan, M.

Paolucci, T. Payne, K. Sycara, and H. Zeng. “DAMLS:

Semantic markup for Web services”. In Proc SWWS, pp.

411-430, 2001.

[11] Fensel, D., Bussler, C. and Maedche, A.. “Semantic

Web Enabled Web Services”. In Proceedings of the

International Semantic Web Conference 2002, LNCS,

Springer, pp. 1-2, 2002.

[12] Fensel, D., Motta, E. “Structured Development of

Problem Solving Methods”. IEEE Transactions on

Knowledge and Data Engineering. 13(6), pp. 913-932. 2001.

[13] Ferris, C., Farrel, J. “What Are Web Services.”

Communications of the ACM. Vol 46(6), 2003.

[14] Flett, A. “A comparison of DAML-S and WSMF”. In

Internal Report, Vrije Universiteit Amsterdam, 2002.

[15] Haarslev, V. and Moller, R. “RACER system

description”. In P. Lambrix, A. Borgida, M. Lenzerini, R.

[16] Moller, and P. Patel-Schneider, editors, Proceedings of

the International Workshop on Description Logics, number

22 in CEUR-WS, Linkoeping, Sweden, July 30-August 1

1999.

[17] Horrocks, I. “The FaCT system”. In H. de Swart, editor,

Automated Reasoning with Analytic Tableaux and Related

Methods: International Conference Tableaux'98, number

1397 in Lecture Notes in Artificial Intelligence, pages 307--

312. SpringerVerlag, Berlin, May 1998.

[18] Horrocks, I., Patel-Schneider, P., Boley, H., Tabet, S.,

Grosof, B., Dean, M. “SWRL: A Semantic Web Rule

Language Combining OWL and RuleML”. Technical report,

Version 0.5 of 19 November 2003.

[19] Howard, R., Kerschberg, L. “A Knowledge-based

Framework for Dynamic Semantic Web Services Brokering

and Management”. DEXA’04, 2004

[20] Januszewski, K. “Web Service Description and

Discovery Using UDDI”. Microsoft

http://msdn.microsoft.com/library/default.asp?url=/library/en

-us/dnservice/html/service10032001.asp. October 2001.

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

[21] Kalfoglou, Y. and Schorlemmer, M. “Ontology

mapping: the state of the art”. The Knowledge Engineering

Review, 18(1), pp. 1–31, 2003.

[22] Kifer, M., Lausen, G. and Wu, J. “Logical foundations

of object oriented and frame-based languages”. Journal of the

ACM, Vol.42(4), pp. 741-843, 1995.

[23] Lara, R., Lausen, H., Arroyo, S., Brujin, J. and Fensel,

D. “Semantic Web Services: description requirements and

current technologies”. International Workshop on Electronic

Commerce, Agents, and Semantic Web Services, Pittsburgh,

PA, September 30, 2003.

[24] Maximilien, E., Singh, M. “Toward Autonomic Web

Services Trust and Selection”. ICSOC 2004, New York,

Nov. 2004.

[25] Maximilien, E., Singh, M. “An Ontology for Web

Services Ratings and Reputations”. OAS 2003, S. Cranefield,

T. Finin, V. Tamma, and S. Wilmott (editors), vol. 73, pp.

25-30, 2003.

[26] McIlraith, S., Son, T., Zeng, H. “Semantic Web

Services”. IEEE Intelligent Systems, pp. 46-53, March/April,

2001.

[27] Motta, E., Domingue, J., Cabral, L., Gaspari, M. “IRS-

II: A Framework and Infrastructure for semantic Web

Services”. 2nd International Semantic Web Conference

(ISWC2003). Florida, USA. 20-23 October, 2003.

[28] Motta, E. “Reusable Components for Knowledge

Modelling”. IOS Press. Amsterdam. The Netherlands, 1999.

[29] Oren, E. WSMX Execution Semantics. WSMO Working

Draft v01, 2004.

[30] Paolucci, M., Kawamura, T., Payne, T., Sycara, K.

“Importing Semantic Web in UDDI”. WES 2002, LNCS

2512, pp.225-236, 2002.

[31] Paolucci, M., Sycara, K. “Autonomous Semantic Web

Services”. IEEE Internet Computing, pp. 34-41, Sept/Oct,

2003.

[32] Roman, D., Lausen, H., Keller, U. “Web Service

Modeling Ontology – Standard”. WSMO Working Draft

March 06, 2004. Available at

http://www.wsmo.org/2004/d2/v0.2/20040306/#L3907.

[33] “Semantic Markup for Web Services (OWL-S)”, OWL

Services Coalition, 2004; www.daml.org/services/owl-s/1.0/

[34] Smith, M.K.,Welty, C., McGuinness, D.L. OWL Web

Ontology Language Guide. W3C,

http://www.w3.org/TR/2004/REC-owl-guide-20040210/. 10

February 2004.

[35] Stafford, T. “E – Services”. Communications of the

ACM. Vol. 46(6), pp- 27–28, 2003.

[36] Solanki, M., Cau, A., Zedan, H. “Augmenting Semantic

Web Service Description with Compositional Specification”.

WWW2004, pp. 544-552. May 17-22, New York, USA,

2004.

[37] Sycara, K., Paolucci, M., Soundry, J., and Srinivasan, N.

“Dynamic Discovery and Coordination of Agent-Based

Semantic Web Services”. IEEE Internet Computing, pp. 66-

73, May-June 2004.

[38] Visser, P., Jones, D., Bench-Capon, T., Shave, M. “An

Analysis of Ontology Mismatches; Heterogeneity versus

Interoperability”. AAAI Spring Symposium on Ontological

Engineering, 1997.

[39] http://www.w3.org/2000/Talks/1206-xml2k-tbl/.

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE