260 likes | 362 Views
On Automating Web Services Discovery. Boualem Benatallah , University of New South Wales Mohand-Said Hacid , Universite Lyon Alain Leger , France Telecom Christophe Rey , Universite Blaise Pascal Farouk Toumani , Universite Blaise Pascal. Contents. Introduction Description logic
E N D
On Automating Web Services Discovery Boualem Benatallah, University of New South Wales Mohand-Said Hacid, Universite Lyon Alain Leger, France Telecom Christophe Rey, Universite Blaise Pascal Farouk Toumani, Universite Blaise Pascal
Contents • Introduction • Description logic • Example – Travel reservations • Semantic reasoning for Web services discovery • Evaluation • Future work • Conclusions
Purpose – Service Discovery • Effectively discovering services on the web • Using description logics (DL) • EU project that has been implemented
Web Services • Built on XML • Standards: • SOAP (Simple Object Access Protocol) • WSDL (Web Services Description Language) • UDDI (Universal Description, Discovery, and Integration) • Service description • Service discovery (FOCUS) • Communication
Semantic web • Purpose to improve technology to: • Organize • Search • Integrate • Evolve Web-accessible resources • Ontologies to identify metadata to: • Discover information sources • Reason about their capabilities • Give rich description and modeling of • Services • Properties • Capabilities • Behaviors
Definitions 1 • Terminology – DL service descriptions • Difference operation – extract service description • Reduced clause form and structure equivalence • Structural subsumption – identify unique difference • Cover – services that cover the query • Rest and miss – query services not found
Definitions 2 • Best cover – SOLUTION • Hypergraph and transversal – represent cover • Hypergraph generation – concept (vertex) & service (edge) • Cost of a set of vertices – Low Cost search • Profile cover – services found • Profile rest and profile miss – services not found
Theorem I – The best covering problem is NP-hard • Lemma 1 – Characterization of the minimal rest or missing services is always unique • Lemma 2 – Characterization of covers that minimize the rest or the missing services is a minimal transversal of the hypergraph
Theorem II – Minimal transversal – describes a solution pair (xi, sj) Let Tr(H) = {xi, i = 1..m} be the set of minimal transversals for the hypergraph H and E = {sj, j = 1..n} an edge of H. Assume H’ = H U E. Then we have: xiU {sj} is a nonminimal transversal of H’ there exists a minimal transversal xk of H such that xk ∩ E = {sj} and xk \ {sj} is a subset of xi.
Optimizations – separate options of the algorithm • PERS – only minimal transversals are good candidates (reduces candidates for solution) • BNB – Branch and bound (prunes hypergraph) • Preference to small cost • Upperbound is Cost Evaluation
Terminology (T) ToTravel≡ (≥ 1 departurePlace) ∏(VdeparturePlace.Location) ∏ (≥ 1 arrivalPlace) ∏(VarrivalPlace.Location) ∏ (≥ 1 arrival-Date) ∏(VarrivalDate.Date) ∏ (≥ 1 arrivalTime) ∏(VarrivalTime.Time) FromTravel≡ (≥ 1 departurePlace) ∏(VdeparturePlace.Location) ∏(≥ 1 arrivalPlace) ∏(VarrivalPlace.Location) ∏ (≥ 1 departure-Date) ∏(VdepartureDate.Date) ∏ (≥ 1 departureTime) ∏(VdepartureTime.Time) Hotel ≡ Accommodation ∏ (≥ 1 destinationPlace) ∏(VdestinationPlace.Location) ∏ (≥ 1 checkIn) ∏(VcheckIn.Date) ∏ (≥ 1 checkOut) ∏(VcheckOut.Date) ∏ (≥ 1 nbAdults) ∏(VnbAdults.Integer) ∏ (≥ 1 nbChildren) ∏(VnbChildren.Integer)
Query (Q) Q ≡ (≥ 1 departurePlace) ∏(VdeparturePlace.Location) ∏ (≥ 1 arrivalPlace) ∏(VarrivalPlace.Location) ∏ (≥ 1 departureDate) ∏(VdepartureDate.Date) ∏ Accommodation ∏ (≥ 1 destinationPlace) ∏(VdestinationPlace.Location)∏ (≥ 1 checkIn) ∏(VcheckIn.Date) ∏ (≥ 1 checkOut) ∏(Vcheck-Out.Date) ∏ carRental (carRental - NOT MATCHED)
Vertices and Edges of the Hypergraph • Vertices Σ = {VToTravel, VFromTravel, VHotel} • Edges Γ = {w(≥1departurePlace), w(V departurePlace.Location), w(≥1arrivalPlace), w(V arrivalPlace.Location), w(≥1departureDate), w(V departureDate.Date), wAccommodation, w(≥1destinationP lace), w(V destinationP lace.Location), w(≥1checkIn), w(V checkIn.Date), w(≥1checkOut), w(V checkOut.Date), wcarRental}.
Generate the transversal hypergraph • incremental subexponential time k O(log k) • k = input# + output#
Semantic reasoning for Web services discovery – DAML-S ontology • ServiceProfile – capabilities and parameters • Description of the service (human-readable) • Functional behavior – transformation of inputs to outputs • Nonfunctional attributes (i.e. cost) • ServiceModel – description of the operation • ServiceGrounding – how to access the service (messaging)
Evaluation • Prototype implementation of the computeBCov algorithm • GOALS • Validate the feasibility of the approach • Test the correctness of the algorithm • Study the performance and scalability of the algorithm (not completed) • Implement in European project – MKBEEM Multilingual Knowledge Based European Electronic Marketplace
Knowledge Representation - MKBEEM Multilingual Knowledge Based European Electronic Marketplace
Future work • Extend the proposed framework to include: • Best covering problem where the difference operation is not semantically unique • Service discovery with a large number of hetergeneous ontologies • Support for service composition automation
Conclusions • Good example of applying description logic to a web service discovery problem • Only works when there is a best covering problem that is semantically unique • Removes solutions that do not cover minimum services (BEST solution may be a combination) • IF all services cannot be provided by one service provider (i.e. car rental), how is the query divided • IF there are millions of service providers instead of just hundreds, how do you manage