470 likes | 545 Views
Part III: Resources & Building Blocks. General Resources Applications Tools & Components Summary. Acknowledgements. Massimo Paolucci, Katia Sycara Robotics Institute, Carnegie Mellon University Material on DAML-S Matchmaker, DAML-S API, DAML-S Virtual Machine, WSDL2DAML-S, DAMLzon
E N D
Part III: Resources & Building Blocks • General Resources • Applications • Tools & Components • Summary
Acknowledgements • Massimo Paolucci, Katia Sycara • Robotics Institute, Carnegie Mellon University • Material on DAML-S Matchmaker, DAML-S API, DAML-S Virtual Machine, WSDL2DAML-S, DAMLzon • Sheila McIlraith, Honglei Zeng, Rob McCool • Knowledge Systems Lab, Stanford University • Material on DAML-S Editor, Automated Web Service Composition
General Resources • Web site & mailing lists • http://www.daml.org/services/ • New pages for collecting use cases, tools, sample code • http://www.swsi.org • www-ws@w3.org • Look for conference workshops • DAML-S/OWL-S & related publications • Many and varied • Seehttp://www.daml.org/services/ • W3C Web services activities • Description, Architecture, Choreography WGs • Under discussion: Semantic Web Services IG • Liaisons: Katia Sycara, Jim Hendler, Bijan Parsia
Some Applications Using DAML-S • CoSAR-TS demo (shown at SWMU) • CMU demo(s) • Travel planning, Electronic parts buying, DAMLzon • Stanford KSL demo • MyGrid: (http://mygrid.man.ac.uk) • AgentCities (www.agentcities.org) • Task Computing (Fujitsu Labs with MINDSWAP) • Composer demo (http://www.mindswap.org/~evren/composer/) • MyCampus (http://128.2.199.68/project) • Secure Mobile Services (UMBC/Finin)
Tools & Components • OWL-S is just another OWL ontology • All the tools & technologies for OWL are relevant • Tools & components specialized for OWL-S • Development tools • Matchmakers • Service provision (execution) tools • Service composition technology • See also: http://www.daml.org/services/ • Publications, Tools
4 “Sweet Spots” Publication Profile Discovery Development Selection Process Model Simulation Composition Verification Execution, Interoperation Grounding Monitoring, Recovery Development … Deployment … Use …
Sweet Spot: Development • DAML-S API • WSDL2DAML-S • DAML-S Editor • See also: http://www.daml.org/services/ • Publications,Tools
DAML-S API • Provides easy way to process DAML-S in Java • Translates DAML-S ontologies into Java • One Java class for each DAML-S class • Accessors for each property in DAML-S classes • Complete implementation of DAML-S 0.7
WSDL2DAML-S • WSDL widely used to describe Web services • Wide repositories of WSDL descriptions • www.salcentral.comwww.xmethods.com • WSDL2DAMLS allows easy derivation of DAML-S code from WSDL documents • Automatic generation of Grounding • Partial generation of Process Model and Profile • Up to 80% of work required to generate a DAML-S description is done automatically • Combined with Java2WSDL to provide Java2DAML-S
DAML-S Editor • Goal: Editor tailored to the markup of Web Services in DAML-S+ • (not just an ontology editor -- focus on end user needs and intuitions) • Input: graphical and form entry Output: DAML-S • Anticipated Users: • Web service providers • 3rd party Web page developers • 2nd-ary Web service providers • DAML community • Approach: • Use-based • Graphical • Ontology editor and reasoner behind the scenes • What will make it significant Value added by reasoning: • Verification of properties of services • Simulation of services • Diagnostics
Search Tap server for reusable ontologies Inspect Class/Instance Properties (notice the inputs/outputs/pre/effect for subclasses of DAML-S Process)
Expand the search results (view the subclasses of search results)
Create new class add/remove new property, add/remove/modify property values
create/edit a simple/composite services specify Control Flow of composite services specify Data Flow of composite services Pallete of connectives for Control Flow specification Pallete of services for Data & Control Flow specification
Select/subclass/sibling a service and Create/Edit its properties
<rdfs:Class rdf:ID="ExpandedAcmeMovingService"> <rdfs:subClassOf rdf:resource="http://www.daml.org/services/daml-s/2001/05/Process#Sequence" /> - <rdfs:subClassOf> - <daml:Restriction> <daml:onProperty rdf:resource="http://www.daml.org/services/daml-s/2001/05/Process#components" /> <daml:toClass rdf:resource="#PROCESS-LIST-142" /> </daml:Restriction> </rdfs:subClassOf> </rdfs:Class> - <rdfs:Class rdf:ID="PROCESS-LIST-142"> <rdfs:subClassOf rdf:resource="http://www.daml.org/services/daml-s/2001/05/Process#ProcessList" /> - <rdfs:subClassOf> - <daml:Restriction> <daml:onProperty rdf:resource="http://www.daml.org/2001/03/daml+oil#first" /> <daml:toClass rdf:resource="#AcmeConfirmMvRoute" /> </daml:Restriction> </rdfs:subClassOf> - <rdfs:subClassOf> - <daml:Restriction> <daml:onProperty rdf:resource="http://www.daml.org/2001/03/daml+oil#rest" /> <daml:toClass rdf:resource="#PROCESS-LIST-141" /> </daml:Restriction> </rdfs:subClassOf> </rdfs:Class> - <rdfs:Class rdf:ID="PROCESS-LIST-141"> <rdfs:subClassOf rdf:resource="http://www.daml.org/services/daml-s/2001/05/Process#ProcessList" /> - <rdfs:subClassOf> ….- Finally, generate the DAML-S for the services
Sweet Spot: Matchmaking Sweet Spot: Matchmaking From “Web Services Architecture W3C Working Draft”http://www.w3.org/TR/2002/WD-ws-arch-20021114/
Sweet Spot: Matchmaking • Matchmakers (and other forms of middle agents) have been a focus in work on software agents • Work on DL-based matchmaking predates DAML • Semantic Web has brought renewed attention • E.g. Paolucci/Sycara (CMU), Trastour (HP Labs), Lei/Horrocks (Manchester), … • Used in most or all SW Services applications • See previous slide • See also: http://www.daml.org/services/ • Publications
DAML-S Matchmaker • Yellow pages matching service: Web services and agents advertise their capabilities or look for agents and Web services with a given capability • Uses DAML-S to represent capability of Web Services • Extends UDDI Registry by adding capability matching which is impossible to do without semantic information • Emphasis on flexible matching against services not known a priori
DAML-S Matchmaker(2) • Provides Web interface to compile advertisements and requests • Make easier for human users to compile advertisements and requests • Does not require profound knowledge of DAML and DAML-S syntax • Implementation available at www.damlsmm.ri.cmu.edu
Sweet Spot: Service Provision Sweet Spot: Matchmaking From “Web Services Architecture W3C Working Draft”http://www.w3.org/TR/2002/WD-ws-arch-20021114/
DAML-S VM DAML-S processor that allows any Web service to interact with Web services using only DAML-S specifications
Features of DAML-S VM • Uses DAML-S as representation of Web services • Uses DAML to represent information to exchange between Web services • Actively adopts logic inference to reason about DAML-S and DAML ontologies • Shows how to integrate DAML-S within Web services technology such as Axis and WSIF
DAML-S for P2P • Use DAML-S to expand search mechanism on Gnutella P2P network • Search capabilities in Gnutella restricted to keyword search – No Semantic Information • Improve on Gnutella by adding semantics in DAML and capability representation in DAML-S • Removes the need of centralized Registry • Protocol: • Non DAML nodes allow requests to hop from node to node • DAML nodes reason about the requests that they receive and decide whether to accept the task
Sweet Spot (?): Composition Sweet Spot: Matchmaking From “Web Services Architecture W3C Working Draft”http://www.w3.org/TR/2002/WD-ws-arch-20021114/
Sweet Spot: Composition • Stanford Knowledge Systems Lab (McIlraith) • CMU Robotics Lab (Sycara/Paolucci) • MINDSWAP (Hendler/Parsia) • http://www.mindswap.org/~evren/composer/ • See also: http://www.daml.org/services/ • Publications
Stanford KSLAutomated Web Service Composition E.g., Arrange food for 500 people for 2 weeks in Dubai. Approach: I. Plan a sequences of services that realize user’s objective. (NP complete or worse) II. Customize reusable generic procedures - Define and archive reusable generic procedures - Customize with user’s constraints. (NP complete or worse in a reduced search space) Advantages: efficiency, ease of use, customization
Web Procedures Ontologies Agent Broker Web Service Ontologies DAML-enabled personal/company constraints and prefs ... E-mail DAML-enabled web pages Architecture
Demo: Dynamic UI with DAML+OIL User Interface auto-generated from DAML+OIL Ontology
Behind the Scenes User Constraints+Generic Procedures+deduction=composition **or** User constraints + Goal + deduction = composition Talk to Web services through OAA
Agent e-mails itinerary to customer Email the user travel plans when done...
Agent creates expense claim for customer Generate expense claim
KSL Service Composition:Status & Challenges • Automated Web Service Composition is working now! • Implementation: • DAML+OIL/DAML-S FOL -> Ontolingua, Golog & sit’n calculus in Prolog • Java, Prolog, Ontolingua-DAML+OIL translator, OKBC, • DAML-S to PDDL translator, bubble gum, scotch tape • Challenges: • • Outstanding DAML-S representation issues • • DAML-S-ize our work; Reduce number of repn’s required; Reasoner. • • Technical challenges: • • Execution Monitoring & Recovery, Info vs. world-chging services • • Automate Service Selection • • Low-level synchronization, message passing issues
Tools & Components: Status • DAML-S Matchmaker • Implementation available at www.damlsmm.ri.cmu.edu • DAML-S API, WSDL2DAML-S, DAML-S VM, DAML-S for P2P • Not yet publically released; contact Katia Sycara • DAML-S Editor • Currently being rewritten to • Replace DAML+OIL with OWL • Exploit new ontology editor • Improve interface • Not yet publically released;contact Sheila McIlraith
4 “Sweet Spots” Publication Profile Discovery Development Selection Process Model Simulation Composition Verification Execution, Interoperation Grounding Monitoring, Recovery Development … Deployment … Use …
Summary The service paradigm will be a crucial part of the Semantic Web OWL-S supports service descriptions that are integral with other Semantic Web meta-data OWL-S aims to enable automatic discovery, selection, invocation, composition, monitoring of services Service description ontology (Profile, Process, and Grounding) is available, in use, and evolving Several extremely useful building blocks have been created and are in use Many publications and other resources are available here: http://www.daml.org/services/
DAMLzon: DAML-S for Amazon.com • WSDL2DAML-S used to generate DAML-S for Amazon’s Web Service • DAML-S VM used to interact with Amazon Web service Reserve Book Book Search Process Model for Amazon.com
Perfomance Measures • We compared the performance of using DAML-S in its interaction with Amazon.com • Two experiments • Compared Amazon client with DAML-S VM client on browsing task • Analyzed DAML-S VM client on browsing+reserving task • No client for Browsing+Reserving provided by Amazon
Compared Amazon client with DAML-S VM client on browsing task 98 runs total over 4 days in varying load conditions Results in milliseconds Results Experiment 1 Distribution
Results Experiment 2 • DAML-S VM client on browsing+reserving task • No client for Browsing+Reserving provided by Amazon • Analyzed data by computing: • Time required by DAML-S VM to execute Process Model • Time required for data transformation to fit Amazon requirements • Time required to invoke an operation on Amazon • 98 runs total over 4 days in varying load conditions • Results in milliseconds