44
MWSAF MWSAF METEOR-S METEOR-S Web Web Service Service Annotation Annotation Framework Framework M M ETEOR-S ETEOR-S W W EB EB S S ERVICE ERVICE A A NNOTATION NNOTATION F F RAMEWORK RAMEWORK (MWSAF) (MWSAF) Abhijit Patil, Swapna Oundhakar, Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma Amit Sheth, Kunal Verma LSDIS Lab, Department of Computer Science, LSDIS Lab, Department of Computer Science, The University of Georgia The University of Georgia

MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

Embed Size (px)

Citation preview

Page 1: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

MMETEOR-SETEOR-S WWEBEB SSERVICE ERVICE

AANNOTATIONNNOTATION FFRAMEWORKRAMEWORK

(MWSAF)(MWSAF)Abhijit Patil, Swapna Oundhakar, Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal VermaAmit Sheth, Kunal Verma

LSDIS Lab, Department of Computer Science,LSDIS Lab, Department of Computer Science,The University of GeorgiaThe University of Georgia

Page 2: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Outline

Introduction

METEOR-S Project @ UGA

SchemaGraph

Architecture

Matching algorithm

Results

Conclusions and Future Work

Page 3: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Introduction

Semantic Web Services

Explicate semantics of the Web service provider

Use existing domain ontologies to provide contextual normalization

Challenges

Finding relevant domain ontologies

Finding appropriate concepts in the ontologies

Need a tool for allowing semi-automatic annotation

Page 4: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Semantic Web services

Describe services with ontology based languages e.g. OWL-S Add semantics to existing Web service standards e.g.

METEOR-S

Common factor

OWL-SDescribe Web services using ontology based

service description languages

METEOR-SAdd Semantics by

adding annotations to service descriptions in

WSDL

Common FactorRelate Web service I/O

parameters with Ontological concepts

Page 5: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

METEOR-S Web service Annotation Map Web services’ inputs and outputs data represented using

XML schema to concepts in ontologies

Annotate WSDL with Ontologies

How ?

Borrow from Schema matching

Semantic disambiguation between terms in XML messages represented in WSDL and concepts in ontology

Match XML schema elements from WSDL to ontological concepts

Page 6: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

METEOR-S Web Service Annotation Framework (MWSAF)

Assumptions

Domain is depicted by one or more domain ontologies

A Web service may belong to one or more domains

MWSAF Functionality

Find the domain(s) of the Web service

Annotate the Web service with one or more ontologies

Page 7: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Outline

Introduction

METEOR-S Project @ UGA

SchemaGraph

Architecture

Matching algorithm

Results

Conclusions and Future Work

Page 8: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

http://swp.semanticweb.org, http://lsdis.cs.uga.edu/proj/meteor/swp.htm

METEOR-S Project @ UGA

METEOR-S exploits Workflow, Semantic Web, Web Services, and Simulation technologies to meet these challenges in a practical and standards based approach.

Applying Semantics in Annotation, Quality of Service, Discovery, Composition, Execution of Web Services

Adding semantics to different layers of Web services conceptual stack

Use of ontologies to provide underpinning for information sharing and semantic interoperability

Page 9: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Semantics in METEOR-S and WS stack

Publication

Discovery

Description

Messaging

Network

Flow

MWSDI: Scalable Infrastructure of Registries for Semantic publication and discovery of Web Services

MWSAF: Semantic Annotation of WSDL (WSDL-S)

MWSCF: Semantic Web Process Composition Framework

METEOR-S at the LSDIS Lab exploits Workflow, Semantic Web, Web Services, and Simulation technologies to meet these challenges in a practical and

standards based approach

http://swp.semanticweb.org, http://lsdis.cs.uga.edu/proj/meteor/swp.htm

Page 10: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework METEOR-S – Types of Semantics

Data / Information Semantics

What – Formal definition of data in input and output messages of a web service

Why – For Discovery and Interoperability

How – By annotating input/output data of web services using ontologies

Functional Semantics

What – Formally representing capabilities of web service

Why – For Discovery and Composition of Web Services

How – By annotating operations of Web Services as well as provide preconditions and postconditions

Page 11: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework METEOR-S: 4 types of Semantics

Execution Semantics

What – Formally representing the execution or flow of services in a process or operations in a service

Why – For Analysis (verification), Validation (simulation) and Execution (exception handling) of the process models

How – Using State Machines, Petri nets, activity diagrams etc.

QoS Semantics

What – Formally describing operational metrics of a web service/process

Why – To select the most suitable service to carry out an activity in a process

How – Using QoS model [Cardoso and Sheth, 2002] for web services

Page 12: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework METEOR-S Architecture

Page 13: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework WSDL-S Metamodel

Page 14: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework WSDL-S

<?xml version="1.0" encoding="UTF-8"?><definitions

name = "BatterySupplier"targetNamespace = "http://lsdis.cs.uga.edu/meteor/BatterySupplier.wsdl20"xmlns = "http://www.w3.org/2004/03/wsdl"xmlns:tns = "http://lsdis.cs.uga.edu/BatterySupplier.wsdl20"xmlns:rosetta = " http://lsdis.cs.uga.edu/projects/meteor-s/wsdl-s/pips.owl "

xmlns:mep=http://www.w3. rosetta:PurchaseOrderStatusResponse org/TR/wsdl20-patterns>

<interface name = "BatterySupplierInterface" description = "Computer PowerSupply Battery Buy Quote Order Status "

domain="naics:Computer and Electronic Product Manufacturing" > <operation name = "getQuote" pattern = "mep:in-out" action = "rosetta:#RequestQuote" >

<input messageLabel = ”qRequest” element = "rosetta:#QuoteRequest" /> <output messageLabel = ”quote” element = "rosetta:#QuoteConfirmation" /> </operation>

<operation name = "placeOrder" pattern = "mep:in-out" action = "rosetta:#RequestPurchaseOrder" >

<input messageLabel = ”order” element = "rosetta:#PurchaseOrderRequest" /> <output messageLabel = ”orderConfirmation” element = "rosetta:#PurchaseOrderConfirmation" />

</operation> </interface></definitions>

P. Rajasekaran, J. Miller, K. Verma, A. Sheth, Enhancing Web Services Description and Discovery to Facilitate Composition, available at http://lsdis.cs.uga.edu/lib/download/swswpc04.doc

Page 15: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Outline

Introduction

METEOR-S Project @ UGA

SchemaGraph

Architecture

Matching algorithm

Results

Conclusions and Future Work

Page 16: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Matching Issues (WSDL and Ontologies)

Expressiveness Different reasons behind their development

XML Schema used in WSDL for providing basic structure to data exchanged by Web services

Ontologies are developed to capture real world knowledge and domain theory

Knowledge captured XML Schema has minimal containment relationship

Language used to describe ontologies model real world entities as classes, their properties and provides named relationships between them

Solution Use hueristics to create normalized

representation

We call it SchemaGraph

Page 17: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – SchemaGraph

What is SchemaGraph ? Normalized representation to capture XML Schema and DAML

Ontology

How to use SchemaGraph Conversion functions convert both XML Schema and Ontology

to SchemaGraph representation

XML schema used by WSDL → W = {wc1, wc2, wc3, …, wcn} where, wci is an element in XML schema and n is the number of elements

Ontology → O = {oc1, oc2, oc3, …, ocm} where, oci is a concept in Ontology and m is the number of concepts

Match function takes both W and O and returns a set of mappings

Page 18: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

MWSAF – XML Schema to SchemaGraph

Rule XML Schema constructs SchemaGraph representation

1 Element, Node

2 simpleType Node

3 Enumeration values defined for simpleType S

Node with edge between simpleType S node and value node with name “hasValue”

4 ComplexType Node

5 Sub-elements of complexType C which have range as basic XML datatypes

Node with edge between complexType C node and this node with name “hasElement”

6 Sub-elements of complexType C which have range as complexTypes or simpleTypes or elements defined in same schema

Edge between complexType C node and the range type node

Page 19: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

MWSAF – XML Schema to SchemaGraph- <xsd:complexType name="WeatherReport">- <xsd:sequence>  <xsd:element name="phenomena" type="xsd1:Phenomenon" />   <xsd:element name="wind" type="xsd1:Wind" />   </xsd:sequence>  </xsd:complexType>- <xsd:complexType name="Phenomenon">- <xsd:sequence>  <xsd:element name="type" type="xsd1:PhenomenonType" />   <xsd:element name=“intensity" type="xsd1:PhenomenonIntensity" />   </xsd:sequence>  </xsd:complexType>- <xsd:complexType name="Wind">- <xsd:sequence>  <xsd:element name="gust_speed" type="xsd:double" />   <xsd:element name="prevailing_direction" type="xsd1:Direction" />   </xsd:sequence>  </xsd:complexType>- <xsd:simpleType name="PhenomenonType">- <xsd:restriction base="xsd:string">  <xsd:enumeration value="MIST" />   <xsd:enumeration value="FOG" />   <xsd:enumeration value=“SNOW" />   <xsd:enumeration value="DUST" />   </xsd:restriction>  </xsd:simpleType>

WeatherReport

WindPhenomenon

Directiongust_speedPhenomenonType

PhenomenonIntensity

MIST FOG SNOW DUST

phenomenawind

prevailing_directionhasElement

intensity

type

hasValuehasValue

hasValuehasValue

Rule 3

Rule 1 simpletype => Node

Rule 1complextype => Node

Rule 6

Rule 5

Rule 1Element => Node

Page 20: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF - Ontology to SchemaGraph

Rule Ontology representation SchemaGraph representation

1 Class Node

2 Property of class D with basic datatype as range (Attribute)

Node with edge joining it to class D node with name “hasProperty”

3 Property of class D with other class R as range (Relation)

Edge between class D node and range class R node

4 Instance of class C Node with edge joining class C node to instance node with name “hasInstance”

5 Class(X)-subclass(Y) relationship

Edge between class X node and class Y node with name “hasSubclass”

Page 21: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF - Ontology to SchemaGraph- <daml:Class rdf:ID="WeatherPhenomenon">  <rdfs:comment>Superclass for all weather events</rdfs:comment>   <rdfs:label>Weather event</rdfs:label>   </daml:Class>- <daml:Class rdf:ID="WindEvent">  <rdfs:subClassOf rdf:resource="#WeatherPhenomenon" />   </daml:Class>- <daml:Property rdf:ID="windDirection">  <rdfs:domain rdf:resource="#WindEvent" />   </daml:Property>- <daml:Class rdf:ID="GustingWindEvent">  <rdfs:subClassOf rdf:resource="#WindEvent" />   </daml:Class>- <daml:Class rdf:ID="CurrentWeatherPhenomenon">  <rdfs:subClassOf rdf:resource="#WeatherPhenomenon" />   </daml:Class>- <daml:Class rdf:ID="OtherWeatherPhenomena">  <rdfs:subClassOf rdf:resource="#CurrentWeatherPhenomenon" />   </daml:Class> - <daml:Class rdf:ID="Duststorm">  <rdfs:subClassOf rdf:resource="#OtherWeatherPhenomena" />   </daml:Class>- <daml:Class rdf:ID="PrecipitationEvent">  <rdfs:subClassOf rdf:resource="#CurrentWeatherPhenomenon" />   </daml:Class>- <daml:Class rdf:ID="SolidPrecipitationEvent">  <rdfs:subClassOf rdf:resource="#PrecipitationEvent" />   </daml:Class>- <daml:Class rdf:ID="Snow">  <rdfs:subClassOf rdf:resource="#SolidPrecipitationEvent" />   </daml:Class>- <daml:Class rdf:ID="ObscurationEvent">  <rdfs:subClassOf rdf:resource="#CurrentWeatherPhenomenon" />   </daml:Class>- <daml:Class rdf:ID="Fog">  <rdfs:subClassOf rdf:resource="#ObscurationEvent" />   </daml:Class>- <daml:Class rdf:ID="Mist">  <rdfs:subClassOf rdf:resource="#ObscurationEvent" />   </daml:Class>

WeatherPhenomenon

CurrentWeatherPhenomenon

WindEvent

GustingWindEvent

windDirection

ObsucurationEvent

PrecipitationEvent

OtherWeatherPhenomenon

Duststorm

Snow Mist Fog

SolidPrecipitationEvent

Rule 1

Rule 2Rule 5

Page 22: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Outline

Introduction

METEOR-S Project @ UGA

SchemaGraph

Architecture

Matching algorithm

Results

Conclusions and Future Work

Page 23: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Architecture

Ontology Store Categorize in domains Currently supports DAML and RDF formats Will be replaced in future with high quality ontology search mechanisms

Parser Library Parser used to generate SchemaGraphs Currently provides Ontology2Graph and WSDL2Graph parsers

Matcher Library Provides two types of Matching algorithms

Element level Matching algorithms – NGram, CheckSynonyms, CheckAbbreviations, TokenMatcher

Schema Matching algorithms

Allows to add new Algorithms

User Interface Displays the mappings and allows user to accept or reject it It also allows to match the concepts manually Displays the WSDL and ontology in tree format

Page 24: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

Ontology StoreOntology Store

Parser LibraryParser Library

Ont2Schema WSDL2Schema

Matcher LibraryMatcher Library

findMappings

NGram

MatchSynonyms

CheckAbbreviations

getBestMappinggetBestMapping(Ranking algorithm)(Ranking algorithm)

WSDL Concept Ontology Concept Match Score

Phenomenon WeatherEvent 0.51

windEvent Wind 0.79

User provided WSDL File

SchemaGraphFor Ontology

SchemaGraphFor WSDL

MWSAF – Architecture

Annotated WSDL file

Page 25: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Outline

Introduction

METEOR-S Project @ UGA

SchemaGraph

Architecture

Matching algorithm

Results

Conclusions and Future Work

Page 26: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

FUNCTION findMapping

INPUT wci Є W , oci Є O

OUTPUT mi = ( wci, oci, MS )

MWSAF – Matching two concepts

IOParametersMatch (w,o) =

ElemMatch (w,o) + SchemaMatch (w,o)

ElemMatch (w,o) => Element level match

SchemaMatch (w,o) => Schema level match

subTree(w) == subTree(o)

Page 27: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Element level Match

Definition Element level match is the measure of the linguistic similarity

between two concepts based on their names.

Assumption – Concepts from XML schema and ontology have meaningful names

ElemMatch (w,o) => Element level match NameMatch with stemming

SynonymsMatch : Snow and snowFall mean the same

HypernymRelation (w is a kind of o) : prevailing_speed is a type of speed of a wind i.e. windSpeed

HyponymRelation (o is a kind of w)

Acronyms : Sea Level Pressure has acronym SLP

Page 28: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

<xsd:complexType name="Wind"><xsd:sequence>  <xsd:element name="prevailing_speed" type="xsd:double" />   <xsd:element name="gust_speed" type="xsd:double" />   <xsd:element name="prevailing_direction" type="xsd1:Direction" /> </xsd:sequence></xsd:complexType>

WindEvent

windSpeed

WeatherEvent

windDirection

PressureEvent

AltimeterSettingwindGustSpeed

SeaLevelPressure

PressureChangeEvent

Class

Property

<xsd:complexType name=“Pressure"><xsd:sequence>  <xsd:element name=“altimeter" type="xsd:double" />   <xsd:element name=“slp" type="xsd:double" />   <xsd:element name=“delta" type="xsd:double" /> </xsd:sequence></xsd:complexType>

Ontology : weather-ont.damlOntology : weather-ont.daml

WSDL : GlobalWeather.wsdlWSDL : GlobalWeather.wsdl

0.756

0.69

0.90.50.8

0.23

1.01.0

MWSAF – Element level Match (example)

Page 29: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Element level Match

Element level match algorithms used by MWSAF

NGram – This algorithms calculates similarity between two strings by considering the number of qgrams that they have in common. It uses dice coefficient to calculate this similarity.

CheckSynonyms – This algorithm uses WordNet to find synonyms. It also accounts for hypernyms and hyponyms matching.

CheckAbbreviation – This algorithm uses domain specific Abbreviation dictionary to expand the abbreviations

TokenMatcher – This algorithm uses the Porter Stemmer to find the roots of the words. It also uses tokenization based on punctuation and capitalization of letters.

Page 30: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

0

1

0

)max(

1

4321

4321

4,3,2,1

msmsmsmsif

msmsmsmsif

msmsmsmsElemMatch

where, ms1 = MatchScore ( NGram ) ms2 = MatchScore ( Synonym Matching )ms3 = MatchScore ( Abbreviation Expansion )ms4 = MatchScore ( Token Matching )

WSDL Concept Ontological Concept ElemMatch Algorithm

wind WindEvent 0.639 NGram

wind WindChill 0.478 NGram

snow SnowFall 1 Synonyms

slp SeaLevelPressure 1 Abbreviation

relative_humidity RelativeHumidity 1 NGram

Example

MWSAF – Element level Match

Page 31: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Schema level Match

Definition The Schema level match is the measure of structural similarity

between two concepts It is based on sub-concept similarity (subConceptSim) and

sub-concept match (subConceptMatch).

1,0MatchsubConcept1,0SimsubConcept,where

MatchsubConcept*SimsubConcepthSchemaMatc

Page 32: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Schema level Match

Definition : Sub-concept Similarity ( subConceptSim ) The sub-concept similarity is the average match score of each

individual sub-element of the concept

Definition : Sub-concept Match ( subConceptMatch ) The sub-concept match is the fraction of total number of sub-

elements of a concept that are matched

Conceptmaintheofssubconceptofnon,wheren

subconceptMS

SimsubConcept

n

1ii

ssubConcepttotaln

ssubConceptmatchednMatchsubConcept

Page 33: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework

Example

WSDL Concept

Pressure

Ontological Concept

PressureEvent

MS

delta ---- 0

slp Sea Level Pressure 1

relative_humidity RelativeHumidity 1

subConceptSim ( Pressure , PressureEvent ) = ( 1 + 1 + 0 ) / 3 = 0.667

subConceptMatch ( Pressure , PressureEvent ) = 2 / 3 = 0.667

MWSAF – Schema level Match (example)

Page 34: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Categorizing WSDL

Average Service Match ( avgServiceMatch ) Calculated as the average match of all the concepts of a WSDL

schema and a domain ontology The domain of the ontology corresponding to the best average

service match also represents the domain of the Web service Normalized on the scale of 0 to 1

n

mMSMatchavgService

k

1ii

where, k = number of mapped conceptsn = number of concepts in WSDL schema

Page 35: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Annotating WSDL

Average Concept Match ( avgConceptMatch ) Calculated as the average match of the mapped concepts of a WSDL

schema Based on this measure user can decide whether to accept mappings

for annotation or not It is normalized on the scale of 0 to 1

conceptsmappedofnok,wherek

mMS

MatchavgConcept

k

1i

i

Page 36: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Outline

Introduction

METEOR-S Project @ UGA

SchemaGraph

Architecture

Matching algorithm

Results

Conclusions and Future Work

Page 37: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Categorizing WSDL

6 different Web services are compared to 5 ontologies to get avgServiceMatch values for each of them. Service belongs to the domain of the ontology for which it gives best avgServiceMatch.

E.g. AirportWeather service best matches to weather-ont ontology and hence belongs to weather domain

Weather-ont

Weather-ont

Weather-ont

Geo

Geo

Weather-ont

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Globalweather AirportWeather FastWeather Geocash Geo WeatherFetcher

Weather-ont Geo Univ Gentology Atlas-Publication

Page 38: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Categorizing WSDL

24 Web services from Weather and Geographical domain are categorized with different threshold (CT) values. For CT = 0.4, two services are categorized wrongly For CT = 0.5, all the Web services are not categorized

57

9 9

1715

0

5

10

15

20N

um

be

r o

f S

erv

ice

s

Weather Geo

Service Category

Categorization Threshold = 0.5Categorization Threshold = 0.4Actual Number of Services

Page 39: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Testing

With original Geo ontologies, services gave low match scores By adding few more concepts, the match scores improved for many

services. Plot of number of mapped concepts strengthens this observation

0

0.2

0.4

0.6

0.8

1

Services

Mapings with Original Geo ontology

Mappings with New Geo ontology

Page 40: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Testing

Problems Match scores are low All concepts are not mapped

Reasons Match algorithms can be improved

Domain specific synonyms and abbreviations can improve avgConceptMatch

Domain specific match algorithms can be implemented

Ontologies are still in development stage and not comprehensive enough to contain all the concepts from the domain

Need ontologies specifically designed for Web services WSDL files are automatically generated by web servers and hence

not all IO parameters have meaningful names

Page 41: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Outline

Introduction

METEOR-S Project @ UGA

SchemaGraph

Architecture

Matching algorithm

Results

Conclusions and Future Work

Page 42: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework Conclusions and Future Work

Conclusions Created an initial prototype for semi-automatic annotation of Web

services

Initial results promising, but a lot of improvement possible

WSDL-S adds semantics to Web services with minimal changes

Future Work Apply machine learning techniques to improve accuracy

Build a test bed for Semantic Web Services

Eclipse based tool release in 1 montg

Page 43: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework MWSAF – Screenshot

11

22

11

33

44

55

Page 44: MWSAFMETEOR-SWebServiceAnnotationFramework M ETEOR-S W EB S ERVICE A NNOTATION F RAMEWORK (MWSAF) Abhijit Patil, Swapna Oundhakar, Amit Sheth, Kunal Verma

MWSAFMWSAF

METEOR-S

METEOR-S

Web Web

ServiceService

Annotation

Annotation

Framework

Framework References

1. D. Fensel, C. Bussler, "The Web Service Modeling Framework WSMF", Technical Report, Vrije Universiteit Amsterdam

2. METEOR-S: Semantic Web Services and Processes, http://swp.semanticweb.org

3. A. Ankolekar, M. Burstein, J. Hobbs, O. Lassila, D. Martin, D. McDermott, S. McIlraith, S. Narayanan, M. Paolucci, T. Payne, and K. Sycara, "DAML-S: Web service Description for the Semantic Web," in Proceedings of the 1st International Semantic Web Conference (ISWC 2002)

4. S. Agarwal, S. Handschuh, and S. Staab “Surfing the Service Web”, in Proceedings of the 2nd International Semantic Web Conference (ISWC 2003)

5. M. Klein, “Combining and relating ontologies: an analysis of problems and solutions”. in (IJCAI 2001)

6. E. Rahm and P. A. Bernstein. A survey of approaches to automatic schema matching. In The VLDB Journal: Volume 10 Issue , (2001), pages 334-350, 2001.

7. H. Do, S. Melnik, and E. Rahm. Comparison of schema matching evaluations. In Proceedings of the 2nd Int. Workshop on Web Databases (German Informatics Society), 2002

8. Pottinger, R. A. and P. A. Bernstein, “Merging Models Based on Given Correspondences.” Proc. 29th VLDB Conference