53
1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey http://www.srdc.metu.edu.tr/~asuman/

1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

Embed Size (px)

Citation preview

Page 1: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

1

Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery

Asuman Dogac

Middle East Technical University

Ankara, Turkey

http://www.srdc.metu.edu.tr/~asuman/

Page 2: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 2/53

Talk Outline

Intoduction

Why do we need service semantics?

Web Ontology Language – OWL

ebXML Registry Information Model (RIM)

Mapping OWL Constructs to ebXML RIM

Future Work

Page 3: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 3/53

Introduction

The efforts by industry in providing semantic support in service registries are disconnected from the Semantic Web initiative

UDDI registries use tModels to represent compliance with a taxonomy such as Universal Standard Products and Services Classification

ebXML registries use classification hierarchies to associate semantics with registry items

Semantic Web initiative have produced the Web Ontology Language (OWL)

Page 4: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 4/53

The Objective

1. Describe how ebXML registries can be enriched through OWL ontologies to describe Web service semantics

2. Show how the stored semantics can be queried through standardized queries by using the ebXML query facility

3. Provide our observations on how ebXML registries can be extended to provide more efficient semantic support

Realized within the scope of IST-1-002104-STP Satine Project“Semantic Web service based Interoperability Infrastructure for Travel Industry”

http://www.srdc.metu.edu.tr/satine/

Page 5: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 5/53

Talk Outline

Intoduction

Why do we need service semantics?

Web Ontology Language – OWL

ebXML Registry Information Model (RIM)

Mapping OWL Constructs to ebXML RIM

Future Work

Page 6: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 6/53

Why do we need Web Service Semantics? In order to exploit services in their full potential their properties

must be defined:

The methods of charging and payment The channels by which the service is requested and

provided Constraints on temporal and spatial aspects Availability Service quality Security, trust and rights attached to a service

Page 7: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 7/53

WSDL does not describe Web service semantics

Web ServiceService Consumer

Web Service Description

defines

Semantic description of the properties of a service in DAML-S

uses

Page 8: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 8/53

Taxonomies are not enough to define service semantics:An Example Taxonomy: UNSPSC

43.00.00.00.00Communications and ComputerEquipment and Peripherals and

Components and Supplies

43.16.17.00.00Business Transaction and Personal

Business Software

43.16.17.02.00Tax Preparation Software

Through taxonomies: • It is not possible to define properties of servicesor

• Relate service classes with one another

• UDDI usestaxonomies to describe the semantic of Webservices by relating them to tModels

Page 9: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 9/53

Why do we need Web Service Semantics? To be able to describe service properties

And later search for services according to their properties

This search needs to be done in a machine processable and interoperable manner

This in turn is possible only by describing the semantics of Web services through ontology languages

Page 10: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 10/53

Talk Outline

Intoduction

Why do we need service semantics?

Web Ontology Language – OWL

ebXML Registry Information Model (RIM)

Mapping OWL Constructs to ebXML RIM

Future Work

Page 11: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 11/53

Web Ontology Language - OWL

DAML:Darpa Agent Markup Language

OIL: Ontology Inference Layer (European

Commission Project)

DAML+OIL

OWL: Web OntologyLanguage (Being

Standardized by W3C)

RDF (ResourceDescriptionFramework)

Page 12: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 12/53

RDF (Resource Description framework)

RDF Model and Syntax gives us recognisable metadata

RDF Schemas gives us a mechanism for defining shared vocabularies

Page 13: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 13/53

OWL = RDF Schema + more

All of the elements/attributes provided by RDF and RDF Schema can be used when creating an OWL document

OWL classes permit much greater expressiveness than RDF Schema classes

Consequently, OWL has created their own Class, owl:Class

Page 14: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 14/53

RDF Schema Features used in OWL rdfs:Class rdf:Property rdfs:subClassOf rdfs:subPropertyOf rdfs:domain rdfs:range

Page 15: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 15/53

Defining Property Characteristics RDF Schema provides three ways to characterize a

property: range: use this to indicate the range of values for a

property. domain: use this to associate a property with a

class. subPropertyOf: use this to specialize a property.

OWL documents also use rdfs:range, rdfs:domain, and rdfs:subPropertyOf

OWL has more property types that are useful in inferencing!

Page 16: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 16/53

OWL Lite Features

Equality: equivalentClass equivalentProperty sameAs differentFrom allDifferent

Property Characteristics: inverseOf TransitiveProperty SymmetricProperty FunctionalProperty InverseFunctionalProperty

Page 17: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 17/53

OWL Lite Features

Property Type Restrictions: allValuesFrom someValuesFrom

Class Intersection: intersectionOf

Page 18: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 18/53

An Example to Restriction

Example:

<owl:Class rdf:ID="ReserveAFlight">

<rdfs:subClassOf>

<owl:Restriction>

<owl:onProperty rdf:resource="#paymentMethod"/>

<owl:allValuesFrom rdf:resource= "#CreditCard"/>

</owl:Restriction>

</rdfs:subClassOf>

</owl:Class>

Page 19: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 19/53

OWL Full Language constructs that are in addition to those of OWL Lite Class Axioms:

oneOf, dataRange disjointWith equivalentClass

(applied to class expressions)

rdfs:subClassOf(applied to class expressions)

Boolean Combinations of Class Expressions: unionOf intersectionOf complementOf

Arbitrary Cardinality: minCardinality maxCardinality cardinality

Filler Information: hasValue

Page 20: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 20/53

Talk Outline

Intoduction

Why do we need service semantics?

Web Ontology Language – OWL

ebXML Registry Information Model (RIM)

Mapping OWL Constructs to ebXML RIM

Future Work

Page 21: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 21/53

Describing Semantics in ebXML Registries ebXML registry allows metadata to be stored in the registry

This is achieved through a classification mechanism, called ClassificationScheme

ClassificationScheme helps to classify the objects in the registry

Association instances are used in relating objects in the registry

Furthermore Slot instances provide a dynamic way to add arbitrary attributes to RegistryObject instances

Page 22: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 22/53

ebXML Registry Information Model (RIM)

RegistryObject

ClassificationNode Classification

RegistryPackage ExtrinsicObject Service

AssociationRegistryEntry

ClassificationScheme

Page 23: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 23/53

ebXML Registry Information Model (RIM) The RegistryObject class is an abstract base class used by most

classes in the model Slot instances provide a dynamic way to add arbitrary attributes to

RegistryObject instances Association instances are RegistryObject instances that are used

to define many- to-many associations between objects in the information model

ClassificationScheme instances are RegistryEntry instances that describe a structured way to classify or categorize RegistryObject instances

ClassificationNode instances are RegistryObject instances that are used to define tree structures under a ClassificationScheme

Classification instances are RegistryObject instances that are used to classify other RegistryObject instances

RegistryPackage instances are RegistryEntry instances that group logically related RegistryObject instances together

Page 24: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 24/53

Some of the Predefined Association Types in ebXML RegistriesRelatedTo Relates Registry Objects

HasMember Defines the members of the Registry Package

Contains Defines that Source Registry Object contains the Target Registry Object

EquivalentTo Defines that Source Registry Object is equivalent to the Target Registry Object

Extends Defines that Source Registry Object inherits from the Target Registry Object

Implements Defines that Source Registry Object implements the functionality defined by the Target Registry Object

InstanceOf Defines that Source Registry Object is an instance of the Target Registry Object

ebXML allows this list to be extended!

Page 25: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 25/53

Talk Outline

Intoduction

Why do we need service semantics?

Web Ontology Language – OWL

ebXML Registry Information Model (RIM)

Mapping OWL Constructs to ebXML RIM

Future Work

Page 26: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 26/53

The Basic Ideas in Mapping OWL Constructs to ebXML Classification Hierarchies Mapping OWL classes → ebXML Classification Nodes

Mapping OWL properties → ebXML Association Types

Mapping the relationships between properties (such as “rdfs:subPropertyOf”) → Associations between associations

Using existing Association Types when available E.g. “owl:samePropertyAs” → ebXML Predefined Association Type

“EquivalentTo” Creating new Association Types when necessary

Page 27: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 27/53

The Basic Ideas in Mapping OWL Constructs to ebXML Classification Hierarchies Mapping OWL collections → ebXML RegistryPackage

How to handle OWL multiple inheritance?

How to handle OWL Class Boolean expressions?

How to handle OWL restriction?

Page 28: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 28/53

OWL Classes and RDF Properties → ebXML RIM

OWL:

<owl:Class rdf:ID="TransportationService"> <rdfs:subClassOf rdf:resource="#TravelService"/></owl:Class>

<owl:Class rdf:ID="PromotionTypes"> <rdfs:subClassOf rdf:resource="#TravelService"/></owl:Class>

<owl:ObjectProperty rdf:ID="promotion"> <rdfs:domain rdf:resource="#TransportationService"/> <rdfs:range rdf:resource="#PromotionTypes"/></owl:ObjectProperty>

TransportationService

PromotionTypes

ObjectProperty: promotion

OWL classes → ebXML ClassificationNodes OWL properties → ebXML new Association TypesExample:

Page 29: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 29/53

OWL Classes and RDF Properties → ebXML RIM OWL classes → ClassificationNodes OWL Properties → ebXML new Associations Types Example:

ebXML RIM:<rim:ClassificationNode id = 'TransportationService‘ parent= 'TravelService'> <rim:Name> <rim:LocalizedString value =

“TransportationService"/> </rim:Name></rim:ClassificationNode>

<rim:ClassificationNode id = 'PromotionType‘ parent= 'TravelService'> <rim:Name> <rim:LocalizedString value =

“PromotionType"/> </rim:Name></rim:ClassificationNode>

<rim:Association id = 'promotion‘ associationType = ‘ObjectProperty' sourceObject = 'TransportationService' targetObject = 'PromotionType' ><rim:Name> <rim:LocalizedString value =

“promotion"/> </rim:Name></rim:Association>

TravelService

PromotionType

TransportationService

Association of type “ObjectProperty”: promotion

Page 30: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 30/53

OWL Multiple Inheritance → ebXML RIM New Association Type: subClassOf

OWL:<owl:Class rdf:ID="ReserveAFlight"><rdfs:subClassOf

rdf:resource=“#ReservationService"/><rdfs:subClassOf

rdf:resource="#AirTransportationService"/>

</owl:Class>

AirTransportationService

ReserveAFlight

ReservationService

ebXML:

<rim:Association id = ‘RAsubclass’associationType = ‘subClassOf ' sourceObject = 'ReserveAFlight’targetObject = `AirTransportationService'><rim:Name> <rim:LocalizedString value = “RAsubclass"/> </rim:Name></rim:Association>

<rim:Association id = ‘RRsubclass ‘ associationType = ‘subClassOf ' sourceObject = 'ReserveAFlight ' targetObject = `ReservationService'><rim:Name> <rim:LocalizedString value = “RRSubclass"/> </rim:Name></rim:Association>

Page 31: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 31/53

OWL Functional Property → ebXML RIM New Association Type

<owl:FunctionalProperty rdf:ID="hasPrice"> <rdfs:subpropertyOf

rdf:resource="http://www.daml.org/ services/daml-s/2001/05/Profile.owl"/> <rdfs:domain

rdf:resource="#ReserveAFlight"/> <rdfs:range

rdf:resource="http://www.w3.org/2000/10/ XMLSchema/nonNegativeInteger"/>

</owl:FunctionalProperty>

<rim:Association id = 'hasPrice'associationType = ‘FunctionalProperty'sourceObject = 'ReserveAFlight'targetObject = ‘XML Schema nonNegativeIntegerDataType' ><rim:Name> <rim:LocalizedString value = “hasPrice"/> </rim:Name></rim:Association>

ReserveAFlight XML SchemanonNegativeInteger

Functional Property: hasPrice

Page 32: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 32/53

OWL Boolean Combination of Classes → ebXML RIM New Association Type

<owl:Class rdf:ID="AirTransportation"> <owl:complementOf

rdf:resource="#LandTransportion"/></owl:Class>

<rim:Association id = ‘ALComp'associationType = ‘complementOf'sourceObject = 'AirTransportation 'targetObject = 'LandTransportion ' ><rim:Name> <rim:LocalizedString value = “ALComp"/> </rim:Name></rim:Association>

AirTransportation LandTransportion

complementOf

AirTransportation LandTransportation

TravelService

complementOf

Page 33: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 33/53

OWL Restriction In RDF, a property has a global scope, that is, no matter what class the

property is applied to, the range of the property is the same

owl:Resriction, on the other hand, has a local scope; restriction is applied on the property within the scope of the class where it is defined

In ebXML class hierarchies, an association (which represents a property) is defined already in a local scope by associating two nodes of the class hierarchy

Example: <owl:Class rdf:ID="ReserveAFlight"><rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#paymentMethod"/> <owl:allValuesFrom rdf:resource= "#CreditCard"/> </owl:Restriction> </rdfs:subClassOf></owl:Class>

OWL provides the following language elements to indicate the type of restriction: • owl:allValuesFrom• owl:someValuesFrom• owl:hasValue

Page 34: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 34/53

OWL XML Schema Datatypes OWL allows the use of XML Schema datatypes

to describe part of the datatype domain by simply including their URIs within an OWL ontology

In ebXML, basic XML Schema datatypes are stored in ebXML registry

For complex types an external link is provided from the registry

<rim:ExternalLink id = "hasPrice” externalURI="http://www.w3.org/2001/XMLSchema#complexType" > <rim:Name> <rim:LocalizedString value = “XML Schema Complex Type"/> </rim:Name></rim:ExternalLink>

ReserveAFlight XML SchemaInteger

DatatypeProperty: hasPrice

ReserveAFlight XML Schema Complex type

An association of type “DatatypeProperty”: hasPrice

ClassificationNode (A Registry Object)

External Link(A Registry Object)

Page 35: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 35/53

Some Observations Ontologies can play two major roles in the Web services area:

One is to provide a source of shared and precisely defined terms which can be used to dynamically discover, compose and monitor services

The other is to reason about the ontologies

When an ontology language like OWL is mapped to a class hierarchy like the one in ebXML, the first role can directly be achieved

However, for the second role, the reasoners can not directly run on the ebXML class hierarchy

Page 36: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 36/53

Some Observations

Some OWL constructs are for reasoners to use them

The fact is that we do not have industrial strength reasoners yet!

Semantic can also be taken advantage of through querying

Page 37: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 37/53

Exploiting semantics

In relating the semantics with the services advertised in service registries, there are two key issues: Where to store the

generic semantics of the services: In ebXML, metadata is stored in the registry

How to relate the services advertised in the registry with the semantic defined through an ontology: In ebXML through Classification objects

ReserveAFlight

originatingFrom destinationTo paymentMethod

MyService

TravelService

EntertainmentService

AccommodationService

ReserveAFlight BuyATicket

AirTransportation

TransportationService

originatingFrom destinationTo paymentMethod

?

?

Page 38: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 38/53

Relating a Web service Advertised with Service Ontology in ebXML

MyService:Registry Entry

ReserveAFlight:ClassificationNode

ServiceToIndustryClassification:Classification

classsifiedObject classificationNode

Page 39: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 39/53

How to relate services advertised with the generic ontology classes? By relating a service advertised with a node in classification

hierarchy, we make the service an explicit member of this node

The service also inherits the well-defined meaning associated with this node as well as the generic properties defined for this node

When we associate “MyService” with “ReserveAFlightService”, its meaning becomes clear; that this service is a flight reservation service

Assuming that the “ReserveAFlightService” service has the generic properties such as “originatingFrom”, “destinationTo” and “paymentMethod”, “MyService” also inherits these properties

Page 40: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 40/53

How to relate services advertised with the generic ontology classes?

<rs:SubmitObjectsRequest > <LeafRegistryObjectList> <Service id="MyReserveAFlightService"> <Name> <LocalizedString lang="en_US" value ="

MyReserveAFlightService "/> </Name> </Service> <Classification classificationNode="ReserveAFlight" classifiedObject="MyReserveAFlightService" /> </LeafRegistryObjectList></rs:SubmitObjectsRequest>

The following “SubmitObjectsRequest” classifies "MyReserveAFlightService" with "ReserveAFlight" ClassificationNode

Page 41: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 41/53

Exploiting Semantics through Querying Once semantics is associated with Web services in

ebXML registries, it can be used to discover services simply through queries

Examples: It is possible to find the properties of a Web service class

It is possible to find all the advertised instances of a Web service class in the ontology

It is possible to obtain semantics of individual services together

Page 42: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 42/53

Querying ebXML Registry through Query Templates This can be achieved through predefined query

templates which yields into automation:

A query template is used to obtain the properties of a generic class

A query template is used for locating service instances of a given generic class node in the class hierarchy

A template is a content retrieval query to obtain the original OWL and WSDL files through the identifiers of the OWL and WSDL files in the SpecificationLinks

Page 43: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 43/53

ObjectProperty

DatatypeProperty

TravelService

EntertainmentService

AccommodationService

ReserveAFlight BuyATicket

AirTransportation

TransportationService

originatingFrom destinationTo paymentMethod promotion

ebXML Registry

ebXML QueryGet Datatype Properties

ebXML Query Result

originatingFrom

destinationTo

ebXML QueryGet Object Properties

ebXML Query Result

paymentMethod

promotion

A query template to obtain the properties of a generic class

Page 44: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 44/53

An Example Query Retrieving all the Associations of Type “dataTypeProperty” for

“ReserveAClassFlightService” <AdhocQueryRequest xmlns ="urn:oasis:names:tc:ebxml-regrep:query:xsd:2.0" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation ="urn:oasis:names:tc:ebxml-regrep:query:xsd:2.0 query.xsd"> <ResponseOption returnType = "LeafClass" returnComposedObjects = "true" /> <FilterQuery> <ClassificationNodeQuery> <SourceAssociationBranch>

<AssociationFilter> <Clause> <SimpleClause leftArgument = "associationType"> <StringClause stringPredicate = "Equal">

dataTypeProperty</StringClause> </SimpleClause> </Clause> </AssociationFilter> <ClassificationNodeQuery> <NameBranch> <LocalizedStringFilter> <Clause> <SimpleClause leftArgument = "value"> <StringClause stringPredicate = "Contains">

ReserveAFlightService</StringClause> </SimpleClause> </Clause> </LocalizedStringFilter> </NameBranch> </ClassificationNodeQuery> </SourceAssociationBranch>

</ClassificationNodeQuery> </FilterQuery> </AdhocQueryRequest>

Page 45: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 45/53

TravelService

EntertainmentService

AccommodationService

ReserveAFlight BuyATicket

AirTransportation

TransportationService

MyService1 MyService2 MyService3

ebXML Registry

ebXML QueryGet Extension of a ClassificationNode

ebXML Query Result

MyService1

MyService2MyService3

A query template to find all the advertised instances of a Web service class

Page 46: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 46/53

An Example Query: Retrieving all the Services Classified with “ReserveAFlightService” ClassificationNode<AdhocQueryRequest xmlns = "urn:oasis:names:tc:ebxml-regrep:query:xsd:2.0" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "urn:oasis:names:tc:ebxml-regrep:query:xsd: 2.0 query.xsd"> <ResponseOption returnType = "LeafClass" returnComposedObjects = "true" /> <FilterQuery> <ServiceQuery> <ClassifiedByBranch> <ClassificationNodeQuery> <NameBranch> <LocalizedStringFilter> <Clause> <SimpleClause leftArgument = "value"> <StringClause stringPredicate = "Equal"> ReserveAFlightService

</StringClause> </SimpleClause> </Clause> </LocalizedStringFilter> </NameBranch> </ClassificationNodeQuery> </ClassifiedByBranch> </ServiceQuery>

</FilterQuery></AdhocQueryRequest>

Page 47: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 47/53

ebXML Registry ebXML Repository

WSDL of MyService1

OWL-S of MyService1

TravelService

EntertainmentService

AccommodationService

ReserveAFlight BuyATicket

AirTransportation

TransportationService

MyService1

Extrinsic Object

Extrinsic Object

SpecificationLink

ebXML QueryGet SpecificationLinkContent of a Service

ebXML Query Result

WSDL of MyService1

OWL-S of MyService1

A Content Retrieval Query template

Page 48: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 48/53

Retrieving the WSDL Files (Content Retrieval Query)<GetContentRequest xmlns="urn:oasis:names:tc:ebxml-regrep:query:xsd:2.1" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.1 ../schema/rim.xsd urn:oasis:names:tc:ebxml-regrep:query:xsd:2.1 ../schema/query.xsd"> <rim:ObjectRefList> <--! The unique id of the WSDL file in the registry --> <rim:ObjectRef id="urn:uuid:7e4397db-916a-490f-bdc7-c9da"/> </rim:ObjectRefList></GetContentRequest>

Page 49: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 49/53

Ontology Efforts in the Travel Domain To realize the vision presented in this work, there is a need for

domain specific Web service ontologies

There are some efforts in this direction

There have been some efforts in defining the message ontologies in the travel domain such as the Harmonise project http://www.harmonise.org/

The Harmonise project have defined the Interoperability Minimum Harmonization Ontology (IMHO)

The Mapping FRAmework (MAFRA) tool is used for ontology mediation

Page 50: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 50/53

Talk Outline

Intoduction

Why do we need service semantics?

Web Ontology Language – OWL

ebXML Registry Information Model (RIM)

Mapping OWL Constructs to ebXML RIM

Conclusions and Future Work

Page 51: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 51/53

Conclusions and Future Work The only way to store semantic of individual service

instances in ebXML registries is to store them external to the registry (“ExtrinsicObject” in ebXML terminology)

And the content of external objects can not be queried through ebXML queries

If a mechanism is developed to store individual

service semantics local tothe registry, then the queries searching for services with required properties can be executed more efficiently

Page 52: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 52/53

Conclusions and Future Work It is difficult for Web Services to succeed without

incorporating semantics: If you can not describe what you want, you can not have it If you can not describe what you have got, very few will use

it

Semantics is useful through querying even without reasoning

Reasoning definitely helps but to use it in industry, we need industrial strength inference engines

As a future work, we will apply the ideas to travel domain

Page 53: 1 Enriching ebXML Registries with OWL Ontologies for Efficient Service Discovery Asuman Dogac Middle East Technical University Ankara, Turkey asuman

RIDE ‘04March 29, 2004 Asuman Dogac 53/53

Thank you for your attention!

Questions?