Transcript Document

Surfing the Service Web
Sudhir Agarwal, Siegfried Handschuh, and
Steffen Staab
Presenter: Yihong Ding
Web Service
Service
Registry
1. Service provider
Publish Service
2. Service requestor
find the service
SOAP on HTTP
Service
Requestor
Service
provider
3. Use the service
through a SOAP call
(use WSDL to build the
SOAP request)
WSDL

Web Service Description Language
 An xml vocabulary that is used to define the service interface for
a web service
 Service interface detail
 Access protocol
 Contact endpoint
Service
Implementation
Definition
Service
Port
Binding
Service
Interface
Definition
PortType
Message
Type
url to accept the
soap request
OntoMat-Service
1.
Web service presentation
2.
Deep annotation
3.
Web service planning
4.
Web service invocation
Web Service Presentation (Step 1)

WSDL web service description



By the service provider
For machine agents or software engineers
Result: service description web pages


Nicely formatted advertisement (human readable)
Embedded/referred web service descriptions (machine
understandable)


Usually WSDL + ontology
Manual step

May be supported by tools

WSDL Document Generator (http://www.xmlspy.com)
Web Service Requests
Web Service Description
Web Service Description Web Page
<html><head><title>Laptop Vendor Service</title></head>
<body><h1 align="center">Laptop Vendor Service</h1>
<p><h2>getLaptopOffers</h2>
This service delivers the top offers of the laptops available in the city. We have the largest archive
of the laptop offers for the city. So, the possibility that you find your desired laptop at a reasonable
price is very high. Just try it and get convinced from our great offers.
<ul><li> <span wsdlLocation="http://laptop-vendor.de/laptop.wsdl“
elementURI="http://laptop.wsdl/laptop/#part(getOffersRequest/processorSpeed)"> <b>Processor
speed</b> </span>
Specifies the speed of the processor. Please use only the units "MHz" and "GHz". For example,
"2GHz", "1.4GHz" and "1600MHz" are valid whereas "1800" or "170000KHz" are invalid. </li>
<li> <span wsdlLocation="http://laptop-vendor.de/laptop.wsdl“
elementURI="http://laptop.wsdl/laptop/#part(getOffersRequest/diskSpace)"> <b>Disk space</b>
</span>
Specifies the disk space. Please use only the units "GB" and "MB". For example, "20GB",
"30.5GB" are valid whereas "40" or "25000KB" are invalid. </li>
<li> <span wsdlLocation="http://laptop-vendor.de/laptop.wsdl“
elementURI="http://laptop-vendor.wsdl/laptop/#part(getOffersResponse/laptopOffers)"> <b>Top
Offers</b> </span>
This is the list of the most reasonable offers available in the city that fulfill your requirements.
</li></ul></p>
...
</body></html>
Deep Annotation (Step 2)

Purpose



Annotation



Not to annotate surface information
But to annotate background structure (the WSDL
elements)
By annotators (could be end users)
Result: sets of mapping rules between web
service ontologies and the client ontology
Manual step

Supported by OntoMat-Service-Surfer
Service Browsing
Manual Ontology Mapping Specification
Establish mapping rules in F-Logic expressions
Service Ontology
Client Ontology
Web Service Planning (Step 3)

End user select

A set of web service operations
A set of mapping rules

Result: sets of possible web service flows


Input type must match previous output type
Web Service Invocation (Step 4)
Conclusion

OntoMat-Service is a framework for semantic web
service




Manually specification
Automatic invocation
Local-as-View model
Open questions





How to automate web service presentations?
How to automate web service mappings?
How to automatically schedule multiple services?
How to make compiled flows understandable to the users?
How to characterize the boundaries of what functionality
can be aggregated and executed?