OWL-S: Ontology Web Language For Services

sounderslipInternet and Web Development

Oct 22, 2013 (3 years and 9 months ago)

90 views


*


*


0

OWL
-
S: Ontology Web Language
For Services

Reyhan AYDOĞAN

Emre YILMAZ

21/12/2005

OWL
-
S: Ontology Web
Language for Services


*


*


0

OUTLINE


Introduction


Motivation for OWL
-
S


The parts of OWL
-
S


Service Profile


Service Model


Grounding


Comparison with Related Technologies


Examples and Discussions

21/12/2005

OWL
-
S: Ontology Web
Language for Services


*


*


0

Introduction


OWL
-
S:


An ontology of service


As a part of DARPA Agent Mark
-
up Program



Traditional systems
:


Lack of semantic description of Services


Requirement of human assistant

21/12/2005

OWL
-
S: Ontology Web
Language for Services





*


*


0

Motivations for OWL
-
S


Automatic Web Service Discovery



Automatic Web Service Invocation



Automatic Web Service Composition &
Interoperation



Automatic Web Service Execution Monitoring

21/12/2005

OWL
-
S: Ontology Web
Language for Services


*


*


0


Automatic Web Service Discovery


E.g.: Selling Airline ticket accepting
particular credit card






Declarative advertisements of service
properties for automatic service discovery

21/12/2005

OWL
-
S: Ontology Web
Language for Services

Use Search engine

Read Web Page

Execute the service Manually

Satisfies the
constraints??


*


*


0

Automatic Web Service Invocation


Execution of Web service by computer
program or agent


E.g.: Purchasing an airline ticket





Machine understands what input, output,
how to execute the service

21/12/2005

OWL
-
S: Ontology Web
Language for Services


Fill a form


Click button for execution

Human

performs



*


*


0

Automatic Web Service Composition
and Interoperation


Automatic selection, composition and
interoperation


E.g. Travel Arrangement






Declaring prerequisites and effect of service

21/12/2005

OWL
-
S: Ontology Web
Language for Services

Select the web service

Specify the composition manually

Check necessity of software for interoperation

Human


*


*


0

Automatic Web Service Execution
Monitoring



The ability to find out:


Where the request is in the process


The status of the request


Be sure the service made


Unanticipated exception


21/12/2005

OWL
-
S: Ontology Web
Language for Services


*


*


0

21/12/2005

OWL
-
S: Ontology Web
Language for Services

Parts of Service Ontology

Is Taken From [1]


*


*


0

Service Profile


Describe the service what does


Service name, Text Description and Contact Information


Similar to yellow pages


Gives information about the functionality


IOPE s of Service


Gives the characteristics features of the services


Quality ratings of service


Classification information


Enables automatic discovery

21/12/2005

OWL
-
S: Ontology Web
Language for Services




*


*


0

21/12/2005

OWL
-
S: Ontology Web
Language for Services



OLW
-
S & UDDI Mapping

Is Taken From [2]


*


*


0

Service Model


Describes how service works


Includes Data and control flow of service
process


Does not enforce the consistency with
Service Profile


Traveling service in profile



Book Service in service process model


Process Model is subclass of Service Model

21/12/2005

OWL
-
S: Ontology Web
Language for Services




*


*


0

21/12/2005

OWL
-
S: Ontology Web
Language for Services



Process Ontology

Is Taken From [1]


*


*


0

21/12/2005

OWL
-
S: Ontology Web
Language for Services



Is Taken From [6]

Example: Process Sequence


*


*


0

Grounding


Describes how to access the service


Concrete description such as binding
protocol, address, message formats, etc.


WSDL + OWL
-
S


Type : Includes OWL
-
S class types


Message: OWL
-
S inputs and OWL
-
S outputs


Operation:OWL
-
S atomic process


Binding: Encoding Style supplied

21/12/2005

OWL
-
S: Ontology Web
Language for Services




*


*


0

21/12/2005

OWL
-
S: Ontology Web
Language for Services




Sample WSDL file taken from [7]

Example: WSDL+OLWS


*


*


0

21/12/2005

OWL
-
S: Ontology Web
Language for Services




Sample WSDL file taken from [7]

Example: WSDL+OLWS Cont.


*


*


0

Comparison with Related Technologies



UDDI


-

Used mostly in registering services.


-

UDDI has 2 drawbacks:

21/12/2005

OWL
-
S: Ontology Web
Language for Services


1.provides a search mechanism depending on
keywords



2.lacks the semantic description

-

Advantage of UDDI


It
guarantees syntactical interoperability to OWL
-
S


*


*


0

Comparison with Related Technologies






-

Because of these reasons OWL
-
S and UDDI complements
eachother, we need a maping between them.




21/12/2005

OWL
-
S: Ontology Web
Language for Services

UDDI (continues)

Is Taken From [2]


*


*


0

Comparison with Related
Technologies





-

can be compared with the OWL
-
S service model in terms of
expressiveness, semantics, monitoring and fault handling



-

In addition to the input and output in BPEL4WS, OWL
-
S add
the precondition and effects.



-

OWL
-
S is based on formal semantics (advantage of OWL
-
S)






21/12/2005

OWL
-
S: Ontology Web
Language for Services


BPEL4WS


*


*


0

Comparison with Related
Technologies




-

BPEL4WS provides handling mechanisms of faults , OWL
-
S
does not support any recovery protocols.



-

Execution monitoring task is in the future list of
BPE4WS.However both of OWL
-
S and BPEL4WS do not support
execution monitoring now.



-

WS
-
Coordination and WS
-
Transaction may extend by
BPEL4WS.




21/12/2005

OWL
-
S: Ontology Web
Language for Services

BPEL4WS
(continues)


*


*


0

Example

21/12/2005

OWL
-
S: Ontology Web
Language for Services

Currency Controller
-
Service

<?xml version="1.0" encoding="ISO
-
8859
-
1" ?>


<!DOCTYPE uridef (View Source for full doctype...)>


-

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22
-
rdf
-
syntax
-
ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf
-

schema#" xmlns:daml="http://www.daml.org/2001/03/daml+oil#" xmlns:service="http://www.daml.org/services/daml
-

s/0.7/Service.daml#" xmlns:process="http://www.daml.org/services/daml
-
s/0.7/Process.daml#"
xmlns:profile="http://www.daml.org/services/daml
-
s/0.7/Profile.daml#"
xmlns:profileHierarchy="http://www.daml.org/services/daml
-
s/0.7/ProfileHierarchy.daml#"
xmlns="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-
service.daml#">

-

<daml:Ontology>


<daml:versionInfo>$Id: currencyconverter
-
service.daml,v 1.0 2003/03/04 23:47:36 trp Exp $</daml:versionInfo>


<rdfs:comment>DAML
-
S Coalition: Currency Converter Example for DAML
-
S release 0.7 Service
description</rdfs:comment>


<daml:imports rdf:resource="http://www.w3.org/1999/02/22
-
rdf
-
syntax
-
ns" />


<daml:imports rdf:resource="http://www.w3.org/2000/01/rdf
-
schema" />


<daml:imports rdf:resource="http://www.daml.org/2001/03/daml+oil" />


<daml:imports rdf:resource="http://www.daml.org/services/daml
-
s/0.7/Service.daml" />


<daml:imports rdf:resource="http://www.daml.org/services/daml
-
s/0.7/Profile.daml" />


<daml:imports rdf:resource="http://www.daml.org/services/daml
-
s/0.7/Process.daml" />


<daml:imports rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-
service.daml"
/>


<daml:imports rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-
process.daml"
/>


<daml:imports rdf:resource="http://www.daml.org/services/daml
-
s/0.7/ProfileHierarchy.daml" />


</daml:Ontology>


*


*


0

Example

21/12/2005

OWL
-
S: Ontology Web
Language for Services

Currency Controller
-
Service
(continues)

-

<service:Service rdf:ID="CurrenctConverterWebService">


-

<!
--

Reference to the Profile
--
>


<service:presents rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

profile.daml#Profile_SotonCCWS" />


-

<!
--

Reference to the Process Model
--
>


<service:describedBy rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

process.daml#Process_SotonCCWS" />


-

<!
--

Reference to the Grounding
--
>


<service:supports rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

grounding.daml#Grounding_SotonCCWS" />



</service:Service>



</rdf:RDF>


*


*


0

Example

21/12/2005

Currency Controller
-
Service Profile

-

<daml:Class rdf:ID="Information_Translation_Service">


<rdfs:subClassOf rdf:resource="profileHierachy#Information_Service" />


<daml:comment>Class that represents Information Translation Services</daml:comment>


</daml:Class>


-

<daml:Class rdf:ID="RAE
-
Rating">

-

<daml:oneOf rdf:parseType="daml:collection">


<RAE
-
Rating rdf:ID="RAE
-
1" />


<RAE
-
Rating rdf:ID="RAE
-
2" />


<RAE
-
Rating rdf:ID="RAE
-
3" />


<RAE
-
Rating rdf:ID="RAE
-
4" />


<RAE
-
Rating rdf:ID="RAE
-
5" />


<RAE
-
Rating rdf:ID="RAE
-
5star" />


</daml:oneOf>


</daml:Class>

-

<profile:QualityRating rdf:ID="Provider
-
Rating">


<profile:ratingName>Research Assessment Exercise Ratings</profile:ratingName>


<profile:rating rdf:resource="#RAE
-
Rating" />


</profile:QualityRating>


-

<profile:Actor rdf:ID="Contact
-
SotonCCWS">


<profile:name>Terry Payne</profile:name>


<profile:title>Lecturer</profile:title>


<profile:phone>+44(0)23 8059 8343</profile:phone>


<profile:fax>+44(0)23 8059 2865</profile:fax>


<profile:email>trp@ecs.soton.ac.uk</profile:email>


<profile:physicalAddress>University of Southampton, Southampton, SO17 1BJ, UK</profile:physicalAddress>


<profile:webURL>http://www.ecs.soton.ac.uk/~trp</profile:webURL>


</profile:Actor>



*


*


0

Example

21/12/2005

Currency Controller
-
Service Process Model

<!
--

Instance Definition of the Process Model


--
>

-

<process:ProcessModel rdf:ID="Process_SotonCCWS">


<process:hasProcess rdf:resource="#call_SotonCCWS" />


<service:describes rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

service.daml#CurrenctConverterWebService" />


</process:ProcessModel>

-

<!
--

##########################################################################


<daml:Class rdf:ID="call_SotonCCWS">


<daml:subClassOf rdf:resource="http://www.daml.org/services/daml
-
s/0.7/Process.daml#AtomicProcess" />


<label>This is the top level process</label>


</daml:Class>

-

<!
--

IOPEs


--
>

-

<daml:Property rdf:ID="originalAmount_In">


<daml:subPropertyOf rdf:resource="http://www.daml.org/services/daml
-
s/0.7/Process.daml#input" />


<daml:domain rdf:resource="#call_SotonCCWS" />


<daml:range rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

profile.daml#Amount" />


</daml:Property>

-

<daml:Property rdf:ID="originalCurrency_In">


<daml:subPropertyOf rdf:resource="http://www.daml.org/services/daml
-
s/0.7/Process.daml#input" />


<daml:domain rdf:resource="#call_SotonCCWS" />


<daml:range rdf:resource="http://www.daml.ecs.soton.ac.uk/ont/currency.daml#Currency" />


</daml:Property>




OWL
-
S: Ontology Web
Language for Services


*


*


0

Example

21/12/2005

Currency Controller
-
Grounding

<!
--

Instance Definition of the Grounding Model


--
>

-

<process:ProcessModel rdf:ID="Grounding_SotonCCWS">


<process:hasProcess rdf:resource="#SotonCCWSprocess" />


<service:describes rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

service.daml#CurrenctConverterWebService" />


</process:ProcessModel>

-

<grounding:WsdlGrounding rdf:ID="Grounding_SotonCCWS">


<service:supportedBy rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

service.daml#CurrenctConverterWebService" />

-

<!
--

Collecton of all the groundings specifications


--
>


<grounding:hasAtomicProcessGrounding rdf:resource="#WsdlGrounding_SotonCCWS" />


</grounding:WsdlGrounding>

-

<!
--

###############################################################


--
>

-

<!
--

# call_SotonCCSW (Atomic) #


--
>

-

<grounding:WsdlAtomicProcessGrounding rdf:ID="WsdlGrounding_SotonCCWS">

OWL
-
S: Ontology Web
Language for Services


*


*


0

Example


-

<!
--

Grounding for the Atomic Process call_SotonCCWS



--
>



<grounding:damlsProcess rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

process.daml#call_SotonCCWS" />


-

<!
--

Reference to the corresponding WSDL operation



--
>


-

<grounding:wsdlOperation>



<xsd:uriReference rdf:value="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

grounding.wsdl#call_SotonCCWS_operation" />



</grounding:wsdlOperation>


-

<!
--

Reference to the WSDL input message



--
>


-

<grounding:wsdlInputMessage>



<xsd:uriReference rdf:value="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

grounding.wsdl#call_SotonCCWS_input" />



</grounding:wsdlInputMessage>


-

<!
--

Mapping of DAML
-
S inputs to WSDL message parts



--
>


-

<grounding:wsdlInputMessageParts rdf:parseType="daml:collection">


-

<grounding:WsdlMessageMap>



<grounding:damlsParameter rdf:resource="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

process.daml#originalAmount_In" />


-

<grounding:wsdlMessagePart>



<xsd:uriReference rdf:value="http://www.daml.ecs.soton.ac.uk/services/daml
-
s0.7/cc/currencyconverter
-

grounding.wsdl#originalAmount_WSDLIn" />



</grounding:wsdlMessagePart>



</grounding:WsdlMessageMap>



Currency Controller

Grounding

Cont.

OWL
-
S: Ontology Web
Language for Services

21/12/2005


*


*


0

References




21/12/2005

OWL
-
S: Ontology Web
Language for Services

1. The OWL Services Coalition, OWL
-
S: Semantic Markup for Web Services,
available at http://www.daml.org/services/owl
-
s/1.0/owl
-
s.pdf.

2. D. Martin, Artificial Intelligence Center, SRI International, Menlo Park, CA,
USA, M. Paolucci, Robotics Institute, Carnegia Mellon University, S. McIlraith,
Department of Computer Science, University of Toronto, M. Burstein, D.
McDermott, D. McGuinness, B. Parsia, T. Payne, M. Sabou, M. Solanki, N.
Srinivasan, K. Sycara, Bringing Semantics to Web Services: The OWL
-
S
Approach.

3. N.Srinivasan, M. Paolucci, K.Sycara, Robotics Institute, Carnegia Mellon
University, Adding OWL
-
S to UDDI, implementation and throughput.

4. DAML
-
S and Related Technologies, available at
http://www.daml.org/services/owl
-

s/1.0/survey.pdf

5. OWL
-
S Homepage, http://www.daml.org/services/owl
-
s/

6. P.S Munindar. and N.H Mitchael, Service Oriented Computing: Semantics,
Processes and Agents, Willey, England,2005.

7. D. Martin, M. Burstein, O. Lassia, M. Paolucci, T. Payne, S. McIlraith,
Describing Web Services using OWL
-
S and WSDL, DAML
-
S Coalition Working
Document, October 2003.

8. Examples from http://www.daml.org/services/owl
-
s/examples.html


*


*


0




21/12/2005

OWL
-
S: Ontology Web
Language for Services

Thank you for listening!