Designing Semantic Web Process: The WSDL-S Approach Presented by Ke Li LSDIS Lab, University of...
-
Upload
amanda-young -
Category
Documents
-
view
213 -
download
0
Transcript of Designing Semantic Web Process: The WSDL-S Approach Presented by Ke Li LSDIS Lab, University of...
Designing Semantic Web Process:
The WSDL-S ApproachPresented by
Ke LiLSDIS Lab, University of Georgia
(Under the Direction of John A. Miller)
Acknowledgment
• Dr. John A. Miller• Dr. Amit P. Sheth• Dr. Eileen T. Kraemer• Kunal, Meena • Doug, Zixin• Cary, Scott
Outline• Introduction• Background• Contribution• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Outline
• Introduction• Background• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Introduction
• Web Service– Concept
• Web Services are self-contained modular business applications that have open, internet-oriented and standards-based interface.
– Web Service Standards• SOAP (Simple Object Access Protocol)• WSDL (Web Service Description Language)• UDDI (Universal Description, Discovery and Integration)• WS-BPEL (Web Service Business Process Execution
Language)
Introduction
• Web Process– Combine individual services to achieve a more
complex goal– Advantage
• enables modular design• Implements the control and data flow between
services – For example, Service A, B and C. B is dependent on A’s output message. A and C can be invoked at the same time
Introduction
• Semantic Web Service– Adding semantics to Web service standards– Bring “meaning” to the services– Removes ambiguity in the description of Web
service elements.– Enables automation of tasks like discovery,
invocation, composition
Introduction
• WSDL-S Based Tool Suite for Designing Semantic Web ProcessRadiant – Web Service Semantic Annotation
and Semantic PublishLumina – Semantic Web Service DiscoverySaros – Web Services Composition
Outline
• Introduction• Background• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Background
• Problems with current Web Service publishing, discovery and composition– No unified WSDL to UDDI mapping structure– Syntactic search mechanism for service
discovery
Background
• Modified Mapping Structure from WSDL-S to UDDI
<Service> Local NameDescription{Namespace, WSDL Location}
Business Entity
Business Service:NameDescriptionCategoryBag
Binding Template
TModel:NameOverviewDocCategoryBag
TModel:NameOverviewDocCategoryBag
<PortType> Local NameWSDL Location{Namespace}
<Operation>Local NameWSDL Location{Namespace, Domain, Input, Output, Semantic Concepts, Business Name, Service Name}
Service Implementation (WSDL)
UDDI
Background
• Four Semantic Web Service Standard Proposals (Brief Overview)– OWL-S – WSMO (Web Service Modeling Ontology)– SWSO (Semantic Web Service Ontology)– WSDL-S
Background (WSDL-S)
– WSDL-S• Built on existing Web Service standard - WSDL• Enables semantic annotation of Web Services by
using extensibility elements and attributes– Annotation on message types:
modelReference, and schemaMapping
– Annotation on operation:modelReference, category, precondition and effect
• Uses external domain models to provide the semantics
Outline• Introduction• Background• Contribution• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Contribution
• Design and develop the WSDL-S based semantic discovery tool called Lumina.
• Develop the API for publishing WSDL / WSDL-S files to our enhanced UDDI registry.
• Design the Semantic Template generator which can be used within Saros.
Outline
• Introduction• Background• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
The METEOR-S Semantic Discovery Tool - Lumina• Motivation
1. Support semantic discovery (WSDL-S approach)
2. Enable semi-automatic design of Web Processes (using Saros)
3. Supply a unified discovery style to discover from different Universal Business Registries
The METEOR-S Semantic Discovery Tool - Lumina• Setting Environment
– Web Server: Tomcat 5.0.30– UDDI Registry Implementation: JUDDI 0.9– Registry Database: MySQL-4.1.12-win32– JDK 1.5
• Model Dependency – METEOR-S Discovery API– WSDLS4J– UDDI4J
The METEOR-S Semantic Discovery Tool - Lumina• Discovery Modes – UDDI structure based
discovery1.General UDDI Discovery (Basic UDDI Discovery
Panel)• Unified search style for all the UBRs• Provide discovery of “Business Entity”, “Business
Service” and “Technical Model”– Business Entity: Business Name, Discovery URL,
Categories, TModel Keys– Business Service: Service Name, Categories, Business
Key, TModel Keys– TModel: TModel Name
The METEOR-S Semantic Discovery Tool - Lumina• Discovery Modes – WSDL-S based Semantic Discovery
2. WSDL-S Discovery (WSDL-S Discovery Panel & Semantic Template View)• Input to the discovery module
1. Ontology URL2. Operation functional concepts, semantic inputs and semantic outputs
Input modes1. Typed in by the user2. Dragged and dropped from the Ontology Navigator in Radiant
• Output from the discovery module1. Service information (service name, WSDL location) 2. Service provider information (link to the business entity)3. Detailed discovered operation information (operation name, input /
output variables, ontological concepts about these parameters, input / output types, portType)
The METEOR-S Semantic Discovery Tool - Lumina• Discovery Modes – WSDL based Syntactic
discovery3. WSDL Discovery (WSDL Discovery Panel)
• Input to discovery module:– Exact operation name, input and output variables– Same as WSDL-S Discovery except the semantic
information
The METEOR-S Semantic Discovery Tool - Lumina• Architecture of Lumina
– Adopts Eclipse Plugin Techniques:• Action: Lumina start button in tool bar• Editor: UDDI Editor (Basic UDDI Discovery, WSDL-S
Discovery and WSDL Discovery)• View: (Semantic Template Viewer and Partner Service
Viewer)• Perspective: Lumina Perspective
Outline
• Introduction• Background• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Design Semantic Web Process Using WSDL-S• Semantic Annotation
and Publish – Radiant– WSDL-S to UDDI
Mapping Structure
WSDL UDDI
Service Business Service
Local Name Name
Service Description Description
Namespace, WSDL location
CategoryBag
portType TModel
Local Name Name
WSDL location OverviewDoc
Namespace CategoryBag
Operation TModel
Local Name Name
WSDL location OverviewDoc
Namespace, inputs, outputs, semantic
concepts, etc.
CategoryBag
Design Semantic Web Process Using WSDL-S: WSDL-S to UDDI Mapping Structure
<Service> Local NameDescription{Namespace, WSDL Location}
Business Entity
Business Service:NameDescriptionCategoryBag
Binding Template
TModel:NameOverviewDocCategoryBag
TModel:NameOverviewDocCategoryBag
<PortType> Local NameWSDL Location{Namespace}
<Operation>Local NameWSDL Location{Namespace, Domain, Input, Output, Semantic Concepts, Business Name, Service Name}
Service Implementation (WSDL)
UDDI
Design Semantic Web Process Using WSDL-S• Semantic Discovery – Lumina
– WSDL-S Discovery Panel (UDDI Editor) and Partner Service Viewer
• Store the candidate partner services to partner service viewer (convenient)
– Semantic Template Viewer• Save the semantic template to files• Load a exist semantic file
– Enable discovery of multiple operations• Dependence• Economic• Efficient
Design Semantic Web Process Using WSDL-S• Semantic Web Process Design - Saros
– Dynamic partner selection using the Semantic Templates that describe virtual partners
– Two phase design• Generate new semantic template(s) or load the exist
semantic template(s) using Semantic Template Viewer (Lumina)
• Discover the partner services using the semantic templates and bind the discovered services to the process
Design Semantic Web Process Using WSDL-S• Semantic Web Process Design - Saros
Process Designer
Semantic Publication and Discovery UDDI
Registry
SemanticTemplate
WSDL-S
Search
BPEL Process
Results
Outline
• Introduction• Background• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Sample Use Case
• Sample Scenario– Goal: investment strategy for buying stock– Input: stock ticker, possible investment amount– Output: value analysis for proceeding with the
investment
Sample Use Case
4. Identify partners– Binding the real partners: using concrete
service information– Binding the virtual partners: filling a semantic
template
– Discovery based on:• Operation• Input and output
Sample Use Case
1. Analyze the business requirement and build a UML diagram
2. Fill in the process skeleton3. Fill in the nested constructs / structured
activities4. Identify partners
– Binding real partners– Binding virtual partners
Sample Use Case
5. Add namespace, variables6. Link partners to “invoke”, “receive” and
“reply” 7. Add the supplementary elements and fill
in details8. Generate BPEL process
– BPEL file– WSDL file of the Process
Outline
• Introduction• Background• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Evaluation
1. Efficient and effective service discovery– Comparative UBRs:
• XMethods and Microsoft UBR
– Search scenario: • Stock Quote
– Comparative formulas:• Precision =
• Recall =
servicesereddisofnumber
servicesereddiscorrectlyofnumber
_cov__
_cov___
servicescorrectallofnumber
servicesereddiscorrectlyofnumber
____
_cov___
Evaluation• Precision of “Stock Quote” Web Services Discovery Result on the Regular UBRs
Keywords XMethods Microsoft UBR
TModel Service TModel
Stock quote 3/3 = 100% 17/17 = 100% 28/28=100%
Stockquote 3/3=100% 4/4=100% 18/18=100%
Stock 7/7=100% 64/70=90% 18/18=100%
Delayed 1/1=100% 5/5=100% 1/1=100%
Real time 1/3=33% 0/1=0 0/0
Realtime 0/0 0/1=0 0/0
• Recall of “Stock Quote” Web Services Discovery Result on XMethods: 9/13 = 69%
EvaluationThe “Stock Quote” services in the enhanced UDDI registry
Services Operations Ontological Concepts
DelayedStockQuote GetQuote OntologyNS#DelayedStockQuote
GetQuickQuote OntologyNS#RealTimeStockQuote
BasicRealTimeQuotes GetOneQuote OntologyNS#RealTimeStockQuote
StockQuotes GetStockQuotes OntologyNS#DelayedStockQuote
StockScraper GetQuote OntologyNS#StockQuote
StockServices GetQuotes OntologyNS#StockQuote
GetQuickQuotes OntologyNS#DelayedStockQuote
StockQuote GetQuote OntologyNS#StockQuote
DOTSFastQuote GetStockInfo OntologyNS#DelayedStockQuote
Nexus6Studio_x0020_Stock_x0020_Quote
GetQuickQuote OntologyNS#StockQuote
GetDetailedQuote OntologyNS#StockQuote
EvaluationPrecision of Lumina Discovery Result Using StockQuote Ontological
Concepts
Ontological Concepts Lumina
TModel (Operations) Service
OntologyNS#StockQuote
11/11=100% 8/8=100%
OntologyNS#DelayedStockQuote
9/9=100% 7/7=100%
OntologyNS#RealTimeStockQuote
7/7=100% 6/6=100%
EvaluationRecall of Lumina Discovery Result Using StockQuote Ontological
Concepts
Ontological Concepts Lumina
TModel (Operations) Service
OntologyNS#StockQuote
11/11=100% 8/8=100%
OntologyNS#DelayedStockQuote
9/9=100% 7/7=100%
OntologyNS#RealTimeStockQuote
7/7=100% 6/6=100%
Evaluation
2. Accurate discovery of specific operations – Service level discovery and operation level
discovery– Operation level discovery: operation
functional concept, semantic inputs, semantic outputs
– Discovery of Multiple operations within one partner service
EvaluationWeb Services Based on the Currency Ontology
Searching Requirement Searching ResultWeb Service: Operation
Operation: ontologyNS#CurrencyRateInput: /nOutput: /n
Currencyws: GetRateCurrencyConvertor: ConvertionRateCurrencyExchangeService: getRate
Operation: ontologyNS#CurrencyInput: /nOutput: /n
Country: GetCurrencies; GetCurrencyByCountry; GetCurrencyCode; GetCurrencyCodeByCurrencyName
Operation: ontologyNS#Currency.countryInput: /nOutput: /n
Country: GetCountries; GetCountryByCountryCode; GetCountryByCurrencyCode; GetISOCountryCodeByCountryName
Operation: ontologyNS#CurrencyInput: ontologyNS#Currency.countryOutput: /n
Country: GetCurrencyByCountry
Operation: ontologyNS#CurrencyInput: ontologyNS#Currency.nameOutput: ontologyNS#Currency.code
Country: GetCurrencyCodeByCurrencyName
Operation: ontologyNS#Currency.countryInput: ontologyNS#Currency.country_iso_code Output: ontologyNS#Currency.country
Country: GetCountryByCountryCode;
EvaluationWeb Services annotated with a part of the Travel Ontology describing the Weather domain
Searching Requirement Searching Result
Operation: ontologyNS#ForcastInput: /nOutput: /n
ForecastByZip: GetForecastByZipWeatherFetcher: GetWeatherDOTSFastWeather: GetWeatherByCityState GetWeatherByZip
Operation: ontologyNS#ForcastInput: ontologyNS#ZipCodeOutput: /n
ForecastByZip: GetForecastByZipDOTSFastWeather: GetWeatherByZipWeatherFetcher: GetWeather
Operation: ontologyNS#ForcastInput: ontologyNS#CityOutput: /n
DOTSFastWeather: GetWeatherByCityState
Operation: ontologyNS#ForcastInput: ontologyNS#CityOutput: OntologyNS#Weather.hasPercipitation
DOTSFastWeather: GetWeatherByZip
Evaluation
3. Semi-automatic BPEL process design – Supply the detailed information of the service
and operations; these information are useful to design the process.
Outline
• Introduction• Background• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Related Work
• Two categories of Web Services Composition:– Workflow composition
• Static workflow composition: – EFlow (Casati, Ilnicki, et al. 2000)
• Dynamic workflow composition: – PPM (Polymorphic Process Model) (Schuster, Georgakopoulos,
et al. 2000)
– AI Planning– Golog – Logic Programming Language– Planning Domain Definition Language (PDDL) – action value– Rule-based plan generation – SWORD (Ponnekanti and Fox,
2002)– Hierarchical Task Network (HTN) – SHOP2 (Wu, Sirin, et al.
2003)
Outline
• Introduction• Background• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Conclusion
• By using Semantics to annotate the Web Services, we provide the efficient, effective and accurate services discovery. It enables the automatic and dynamic Web Process Design.
• WSDL-S supplies a easy way to add semantics to the Web Services.
Outline
• Introduction• Background• The METEOR-S Semantic Discovery Tool – Lumina• Design Semantic Web Process Using WSDL-S• Sample Use Case• Evaluation• Related Work• Conclusion• Future Work
Future Work• Organize Saros to run in the same workspace as Lumina,
and supply the Drag and Drop functionality to further ease the work of the process developer
• Develop a constraint analyzer to extend our WSDL-S based tool suite.
• Adopt data mapping techniques to implement Web Process composition automatically.
• Extend the discovery, composition by using “preconditions” and “effects” to achieve a more accurate result.
• Develop a process monitor to trace the process at execution time.