260 likes | 440 Views
Composing Web Services on the Semantic Web by Brahim Medjahed. Presented by Dohan Kim Lichun Zhu. Outline. Semantic Description of Web Services Composability Model for Web Services Automatic Composition of Web Services Summarization and Conclusion. Semantic Description of Web Services.
E N D
Composing Web Serviceson the Semantic Webby Brahim Medjahed Presented by Dohan Kim Lichun Zhu
Outline • Semantic Description of Web Services • Composability Model for Web Services • Automatic Composition of Web Services • Summarization and Conclusion
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
Ontology-based description of Web Services ( WSDL Concept) Binding Name Input 1:N 1:{0,1} 1:N 1:1 Parameter Service Operation Output 1:N 1:{0,1} 1:N Data Type 1:1 1:1 1:1 Name Name
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
Ontology-based description of Web Services ( Revisited) Mode Business Role Binding 1:1 Name Input 1:1 1:N 1:N 1:{0,1} 1:1 Parameter Service Operation Output 1:N 1:{0,1} 1:N Data Type 1:1 1:1 1:1 1:1 Name Name Unit
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
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
Semantic Description of Web Services • Quality • Fees, Security, Privacy • Fees : Dollar amount needed to execute an operation • Security : A boolean that specifies whether an operation’s messages are securely exchanged • Privacy : A set of input and output parameters that are not divulged to external entities
Ontology-based description of Web Services Domain Synonym Specialization Mode 1:N Business Role 1:1 Binding Category 1:1 Name Input 1:1 1:N 1:1 1:N 1:{0,1} 1:1 Parameter Service Operation Output 1:N 1:{0,1} 1:N Data Type 1:1 1:1 1:1 1:1 Name Description Name 1:1 Unit Description 1:1 Purpose 1:N Quality 1:1 1:1 1:N 1:1 Synonym Specialization 1:1 Function Fees Security Privacy
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, Categoryik, Qualityik)
Composability model for Web Services • Mode and Binding Composability • Message Composability • Operation Semantics Composability • Qualitative Composability • Composition Soundness
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 ≠Ø
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 output operation • Checking Unit and Business Role between input and output operation
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 withPjl • Cik is compatible with Cjl • Qualitative Composability • Qik.Fees≥Qjl.Fees • (Qik .Security = true) ⇒ (Qjl.Security = true) • Qik.Privacy ⊆Qjl.Privacy
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
Automatic Composition of Web Services • Four conceptually separated phases for automatic composition of Web Services • Specification Phase • Matchmaking Phase • Selection Phase • Generation Phase
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)
Automatic Composition of Web Services • CSSL - Car broker composite service (continued) ………. • <message name=“offer”> • <parameter name=“price” type=“float” unit=“US dollar” role=“extendedPrice”/> • <parameter name=“make” type=“string” ....../> • <parameter name=“model” type=“string” ....../> • <pararmeter name=“year” type=“gYear” ....../> • <parameter name=“mileage” type=“integer” ....../> • </message> .......
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”>
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_composable(), message_composable(), sound()
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
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
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
Questions and Answers Thank You !