METEOR-S%20WEB%20SERVICE%20ANNOTATION%20FRAMEWORK%20(MWSAF) - PowerPoint PPT Presentation

About This Presentation
Title:

METEOR-S%20WEB%20SERVICE%20ANNOTATION%20FRAMEWORK%20(MWSAF)

Description:

rosetta:PurchaseOrderStatusResponse org/TR/wsdl20-patterns ... input messageLabel = 'qRequest' element = 'rosetta:#QuoteRequest' ... – PowerPoint PPT presentation

Number of Views:131
Avg rating:3.0/5.0
Slides: 45
Provided by: abh110
Learn more at: http://www.daml.org
Category:

less

Transcript and Presenter's Notes

Title: METEOR-S%20WEB%20SERVICE%20ANNOTATION%20FRAMEWORK%20(MWSAF)


1
METEOR-S WEB SERVICE ANNOTATION FRAMEWORK(MWSAF)
Abhijit Patil, Swapna Oundhakar, Amit Sheth,
Kunal Verma LSDIS Lab, Department of Computer
Science,The University of Georgia
2
Outline
  • Introduction
  • METEOR-S Project _at_ UGA
  • SchemaGraph
  • Architecture
  • Matching algorithm
  • Results
  • Conclusions and Future Work

3
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

4
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-S Describe Web services using ontology based
service description languages
METEOR-S Add Semantics by adding annotations to
service descriptions in WSDL
Common Factor Relate Web service I/O parameters
with Ontological concepts
5
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

6
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

7
Outline
  • Introduction
  • METEOR-S Project _at_ UGA
  • SchemaGraph
  • Architecture
  • Matching algorithm
  • Results
  • Conclusions and Future Work

8
METEOR-S Project _at_ 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

http//swp.semanticweb.org, http//lsdis.cs.uga.ed
u/proj/meteor/swp.htm
9
Semantics in METEOR-S and WS stack
MWSCF Semantic Web Process Composition Framework
Flow
MWSDI Scalable Infrastructure of Registries for
Semantic publication and discovery of Web Services
Description
MWSAF Semantic Annotation of WSDL (WSDL-S)
Messaging
Network
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.ed
u/proj/meteor/swp.htm
10
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

11
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

12
METEOR-S Architecture
13
WSDL-S Metamodel
14
WSDL-S
  • lt?xml version"1.0" encoding"UTF-8"?gt
  • ltdefinitions
  • name "BatterySupplier"
  • targetNamespace "http//lsdis.cs.uga.edu/meteor
    /BatterySupplier.wsdl20"
  • xmlns "http//www.w3.org/2004/03/wsdl"
  • xmlnstns "http//lsdis.cs.uga.edu/BatterySuppl
    ier.wsdl20"
  • xmlnsrosetta " http//lsdis.cs.uga.edu/project
    s/meteor-s/wsdl-s/pips.owl "
  • xmlnsmephttp//www.w3.
    rosettaPurchaseOrderStatusResponse
    org/TR/wsdl20-patternsgt
  • ltinterface name "BatterySupplierInterface"
    description "Computer PowerSupply Battery Buy
    Quote Order Status "
  • domain"naicsComputer and
    Electronic Product Manufacturing" gt
  • ltoperation name "getQuote" pattern
    "mepin-out" action "rosettaRequestQuote" gt
  • ltinput messageLabel qRequest element
    "rosettaQuoteRequest" /gt
  • ltoutput messageLabel quote
    element "rosettaQuoteConfirmation" /gt
  • lt/operationgt
  • ltoperation name "placeOrder" pattern
    "mepin-out" action "rosettaRequestPurchase
    Order" gt
  • ltinput messageLabel order element
    "rosettaPurchaseOrderRequest" /gt
  • ltoutput messageLabel
    orderConfirmation element "rosettaPurchaseO
    rderConfirmation" /gt

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
15
Outline
  • Introduction
  • METEOR-S Project _at_ UGA
  • SchemaGraph
  • Architecture
  • Matching algorithm
  • Results
  • Conclusions and Future Work

16
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

17
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

18
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
19
MWSAF XML Schema to SchemaGraph
- ltxsdcomplexType name"WeatherReport"gt -
ltxsdsequencegt   ltxsdelement
name"phenomena" type"xsd1Phenomenon" /gt  
ltxsdelement name"wind" type"xsd1Wind" /gt  
lt/xsdsequencegt   lt/xsdcomplexTypegt -
ltxsdcomplexType name"Phenomenon"gt -
ltxsdsequencegt   ltxsdelement name"type"
type"xsd1PhenomenonType" /gt   ltxsdelement
nameintensity" type"xsd1PhenomenonIntensity"
/gt   lt/xsdsequencegt   lt/xsdcomplexTypegt -
ltxsdcomplexType name"Wind"gt -
ltxsdsequencegt   ltxsdelement
name"gust_speed" type"xsddouble" /gt  
ltxsdelement name"prevailing_direction"
type"xsd1Direction" /gt   lt/xsdsequencegt  
lt/xsdcomplexTypegt - ltxsdsimpleType
name"PhenomenonType"gt - ltxsdrestriction
base"xsdstring"gt   ltxsdenumeration
value"MIST" /gt   ltxsdenumeration
value"FOG" /gt   ltxsdenumeration
valueSNOW" /gt   ltxsdenumeration
value"DUST" /gt   lt/xsdrestrictiongt  
lt/xsdsimpleTypegt
WeatherReport
wind
phenomena
Wind
Phenomenon
hasElement
prevailing_direction
type
Direction
gust_speed
intensity
PhenomenonType
Rule 1 Element gt Node
PhenomenonIntensity
hasValue
hasValue
hasValue
hasValue
MIST
FOG
SNOW
DUST
20
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
21
MWSAF - Ontology to SchemaGraph
- ltdamlClass rdfID"WeatherPhenomenon"gt  
ltrdfscommentgtSuperclass for all weather
eventslt/rdfscommentgt   ltrdfslabelgtWeather
eventlt/rdfslabelgt   lt/damlClassgt - ltdamlClass
rdfID"WindEvent"gt   ltrdfssubClassOf
rdfresource"WeatherPhenomenon" /gt  
lt/damlClassgt - ltdamlProperty rdfID"windDirecti
on"gt   ltrdfsdomain rdfresource"WindEvent"
/gt   lt/damlPropertygt - ltdamlClass
rdfID"GustingWindEvent"gt   ltrdfssubClassOf
rdfresource"WindEvent" /gt   lt/damlClassgt -
ltdamlClass rdfID"CurrentWeatherPhenomenon"gt  
ltrdfssubClassOf rdfresource"WeatherPhenomenon
" /gt   lt/damlClassgt - ltdamlClass
rdfID"OtherWeatherPhenomena"gt  
ltrdfssubClassOf rdfresource"CurrentWeatherPhen
omenon" /gt   lt/damlClassgt - ltdamlClass
rdfID"Duststorm"gt   ltrdfssubClassOf
rdfresource"OtherWeatherPhenomena" /gt  
lt/damlClassgt - ltdamlClass rdfID"PrecipitationE
vent"gt   ltrdfssubClassOf rdfresource"Current
WeatherPhenomenon" /gt   lt/damlClassgt -
ltdamlClass rdfID"SolidPrecipitationEvent"gt  
ltrdfssubClassOf rdfresource"PrecipitationEvent
" /gt   lt/damlClassgt - ltdamlClass
rdfID"Snow"gt   ltrdfssubClassOf
rdfresource"SolidPrecipitationEvent" /gt  
lt/damlClassgt - ltdamlClass rdfID"ObscurationEve
nt"gt   ltrdfssubClassOf rdfresource"CurrentWe
atherPhenomenon" /gt   lt/damlClassgt -
ltdamlClass rdfID"Fog"gt   ltrdfssubClassOf
rdfresource"ObscurationEvent" /gt  
lt/damlClassgt - ltdamlClass rdfID"Mist"gt  
ltrdfssubClassOf rdfresource"ObscurationEvent"
/gt   lt/damlClassgt
WeatherPhenomenon
WindEvent
Rule 1
Rule 5
windDirection
GustingWindEvent
Rule 2
CurrentWeatherPhenomenon
OtherWeatherPhenomenon
Duststorm
PrecipitationEvent
ObsucurationEvent
SolidPrecipitationEvent
Snow
Mist
Fog
22
Outline
  • Introduction
  • METEOR-S Project _at_ UGA
  • SchemaGraph
  • Architecture
  • Matching algorithm
  • Results
  • Conclusions and Future Work

23
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

24
MWSAF Architecture
SchemaGraph For WSDL
SchemaGraph For Ontology
getBestMapping (Ranking algorithm)
WSDL Concept Ontology Concept Match Score
Phenomenon WeatherEvent 0.51
windEvent Wind 0.79
Annotated WSDL file
25
Outline
  • Introduction
  • METEOR-S Project _at_ UGA
  • SchemaGraph
  • Architecture
  • Matching algorithm
  • Results
  • Conclusions and Future Work

26
MWSAF Matching two concepts
  • IOParametersMatch (w,o)
  • ElemMatch (w,o) SchemaMatch (w,o)
  • ElemMatch (w,o) gt Element level match
  • SchemaMatch (w,o) gt Schema level match
  • subTree(w) subTree(o)

FUNCTION findMapping
INPUT wci ? W , oci ? O
OUTPUT mi ( wci, oci, MS )
27
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) gt 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

28
MWSAF Element level Match (example)
29
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.

30
MWSAF Element level Match
where, ms1 MatchScore ( NGram ) ms2
MatchScore ( Synonym Matching ) ms3 MatchScore
( Abbreviation Expansion ) ms4 MatchScore (
Token Matching )
Example
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
31
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).

32
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

33
MWSAF Schema level Match (example)
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 subConceptSim ( Pressure , PressureEvent ) ( 1 1 0 ) / 3 0.667 subConceptSim ( Pressure , PressureEvent ) ( 1 1 0 ) / 3 0.667
subConceptMatch ( Pressure , PressureEvent ) 2 / 3 0.667 subConceptMatch ( Pressure , PressureEvent ) 2 / 3 0.667 subConceptMatch ( Pressure , PressureEvent ) 2 / 3 0.667
34
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

where, k number of mapped concepts n number
of concepts in WSDL schema
35
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

36
Outline
  • Introduction
  • METEOR-S Project _at_ UGA
  • SchemaGraph
  • Architecture
  • Matching algorithm
  • Results
  • Conclusions and Future Work

37
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

38
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

39
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

40
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

41
Outline
  • Introduction
  • METEOR-S Project _at_ UGA
  • SchemaGraph
  • Architecture
  • Matching algorithm
  • Results
  • Conclusions and Future Work

42
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

43
MWSAF Screenshot
44
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
Write a Comment
User Comments (0)
About PowerShow.com