1
Composing Web Serviceson the Semantic Web
by Brahim Medjahed
Presented by
Dohan Kim
Lichun Zhu
2
Outline
Semantic Description of Web Services
Composability Model for Web Services
Automatic Composition of Web Services
Summarization and Conclusion
3
Semantic Description of Web Services
Web Services Description Language (WSDL)
Extending WSDL with Semantic Capabilities
Providers, Composers, and Consumers
Automatic Composition of Web Services The approach for combining the concepts of Web
Services and Ontology
4
Service
Binding
Name
Ontology-based description of Web Services ( WSDL Concept)
Operation
Input
Output
Name
Parameter
Name
DataType
1:N
1:N
1:N
1:N
1:1
1:1
1:1
1:1
1:{0,1}
1:{0,1}
5
Semantic Description of Web Services
Mode Notification, One-way, Solicit-response, Request-response
Message A Message M is defined as a tuple ( P, T, U, R ) P is a set of parameter names T: P → DataTypes U: P → Units R: P → Roles
6
Service
Binding
Name
Ontology-based description of Web Services ( Revisited)
Operation
Input
Output
Name
Parameter
Name
DataType
1:N
1:N
1:N
1:N
1:1
1:1
1:1
1:1
1:{0,1}
1:{0,1}
Mode
Unit
BusinessRole
1:1
1:1
1:1
7
Semantic Description of Web Services
Purpose
Function, Synonyms, Specialization Function : Business functionality defined within a
given taxonomy Synonyms : A set of alternative function names Specialization : A set of characteristics of an
operation’s function
8
Semantic Description of Web Services
Category
Domain, Synonyms, Specialization Domain : Area of interest defined within a given
taxonomy Synonyms : A set of alternative domains Specialization : A set of characteristics of an
operation’s domain
9
Semantic Description of Web Services
Quality
Fees, Security, Privacy Fees : Dollar amount needed to execute an operation Security : A boolean that specifies whether an operati
on’s messages are securely exchanged Privacy : A set of input and output parameters that ar
e not divulged to external entities
10
Service
Binding
Name
Ontology-based description of Web Services
Operation
Input
Output
Name
Parameter
Name
DataType
1:N
1:N
1:N
1:N
1:1
1:1
1:1
1:1
1:{0,1}
1:{0,1}
Mode
Unit
BusinessRole
1:1
1:1
1:1
Purpose
Category
Function Synonym Specialization
Domain Synonym Specialization
Quality
Fees Security Privacy
Description
Description
1:1
1:1
1:1
1:1
1:N
1:N1:1
1:1
1:1
1:1
1:N
11
Semantic Description of Web Services
Defining Web Services and Operation
Web Service
A Web service WSi is defined by a tuple: ( Descriptioni, OPi, Bindingsi, Purposei, Categoryi )
Operation
An operation OPik is defined by a tuple : ( Descriptionik, Modeik, Inik, Outik, Purposeik, Categoryi
k, Qualityik)
12
Composability model for Web Services
Mode and Binding Composability
Message Composability
Operation Semantics Composability
Qualitative Composability
Composition Soundness
13
Composability model for Web Services
Mode Composability
Two operations are mode composable if mode of each operation is paired as follows:
( notification, one-way), ( one-way, notification) ( solicit-response, request-response) ( request-response, solicit-response)
Binding Composability
WSi =( Di, Oi, Bi, Pi, Ci ), WSj =( Dj, Oj, Bj, Pj, Cj ) Two services are binding composable if Bi ∩ Bj ≠Ø
14
Composability model for Web Services
Message Composability
A message consists of one or more parameters, each having a certain data type
Data Type Compatible (Direct vs Indirect Compatible) Input message of a service operation may use only a
subset of the parameters of an output message Checking data type compatibility between input and o
utput operation Checking Unit and Business Role between input and
output operation
15
Composability model for Web Services
OPik in WSi = (Dik, Mik, Inik, Outik, Pik, Cik, Qik) OPjl in WSj = (Djl, Mjl, Injl, Outjl, Pjl, Cjl, Qjl)
Operation Semantics Composability Pik is compatible with Pjl
Cik is compatible with Cjl
Qualitative Composability Qik.Fees ≥ Qjl.Fees (Qik .Security = true) ⇒ (Qjl.Security = true) Qik.Privacy ⊆ Qjl.Privacy
16
Composability model for Web Services
Composition Soundness
Test whether composite services provides an added value
Combining airline and hotel services Combining airline and lemon check services ?
Composition Templates Stored Templates
A Composition of services are sound if its template is a subgraph of a stored template
17
Automatic Composition of Web Services
Four conceptually separated phases for automatic composition of Web Services
Specification Phase
Matchmaking Phase
Selection Phase
Generation Phase
18
Automatic Composition of Web Services
Specification Phase
Composite Service Specification Language ( CSSL ) High level description of composite services Specification of the control flow between composite
service operations
Example : CSSL - Car Broker Composite Service
<service name=“car broker”/> <category domain=“brokerage”> <binding name=“SOAP”/> ........ (continued)
19
Automatic Composition of Web Services
CSSL - Car broker composite service (continued)
………. <message name=“offer”> <parameter name=“price” type=“float” unit=“US dollar” role=“extende
dPrice”/> <parameter name=“make” type=“string” ....../> <parameter name=“model” type=“string” ....../> <pararmeter name=“year” type=“gYear” ....../> <parameter name=“mileage” type=“integer” ....../> </message>
.......
20
Automatic Composition of Web Services
CSSL - Car broker composite service (continued)
………. <operation name=“receiveSpecialOffers” mode=“one way”/> <input name=“offer”/> <category domain=“automobile dealer”> <synonyms> <synonym value=“car dealer”/></synonyms> <purpose function=“price-sales catalogue”/> <quality> <fees value=0/> ....... </operation> <flow source=“getPayingHistory” target=“applyForFinancing”>
21
Automatic Composition of Web Services
Matchmaking phase
Generating composition plans using a matchmaking algorithm
Mapping each operation of the composite service to one or more operations of existing service and check composability.
Example functions of the algorithm purpose_compatible(), category_compatible(), quality_composa
ble(), message_composable(), sound()
22
Automatic Composition of Web Services
Selection phase
Quality of Composition ( QoC ) parameters Ranking, Relevance, Completeness
Composition Ranking( CT, STi ) =
Composition Relevance =
Composition Completeness =
Plans with the highest ranking are returned first
1
( )
( )i
n
kk
R ST
R ST
| |
| |iE E
E
| ( ) |
| |i
i
Composable O
O
23
Automatic Composition of Web Services
Generation phase
Generating a detailed description of a composite service
• List of outsourced services• Mapping between composite and component service operations• Mapping between messages and parameters• Flow of control and data between component services
Target language for CSSL specification• Web Service Flow Language( WSFL), XLANG, etc
24
Target Language Example ( WSFL )
25
Conclusion
Automatically generate composite services from high-level specifications of the desired composition
Semantic description of Web Services Mode, Message, Operation,Purpose, Category, etc.
Composability model for Web Services
Automatic Composition of Web Services Specification, Matchmaking, Selection and Generation Phase
26
Questions and Answers
Thank You !