Title: Part III: Resources
1Part III Resources Building Blocks
- General Resources
- Applications
- Tools Components
- Summary
2Acknowledgements
- 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
3General 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_at_w3.org
- Look for conference workshops
- DAML-S/OWL-S related publications
- Many and varied
- See http//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
4Some 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/comp
oser/) - MyCampus (http//128.2.199.68/project)
- Secure Mobile Services (UMBC/Finin)
5Tools 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
64 Sweet Spots
Publication
Profile
Discovery
Development
Selection
Process Model
Simulation
Composition
Verification
Execution, Interoperation
Grounding
Monitoring, Recovery
Development Deployment Use
7Sweet Spot Development
- DAML-S API
- WSDL2DAML-S
- DAML-S Editor
- See also http//www.daml.org/services/
- Publications, Tools
8DAML-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
9WSDL2DAML-S
- WSDL widely used to describe Web services
- Wide repositories of WSDL descriptions
- www.salcentral.com www.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
10DAML-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
11Create new DAML-S service
12Search Tap server for reusable ontologies Inspect
Class/Instance Properties (notice the
inputs/outputs/pre/effect for subclasses of
DAML-S Process)
13Expand the search results (view the subclasses of
search results)
14Load reusable ontologies into JTP
15Create new class
add/remove new property, add/remove/modify
property values
16create/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
17Browse the Process Ontology to create/edit a
service
18Select/subclass/sibling a service and
Create/Edit its properties
19Define the control structure for composite
services
20Select a service and inspect its properties
21Define the data flow within a composite service
22ltrdfsClass rdfID"ExpandedAcmeMovingService"gt
ltrdfssubClassOf rdfresource"http//www.daml.or
g/services/daml-s/2001/05/ProcessSequence" /gt -
ltrdfssubClassOfgt - ltdamlRestrictiongt
ltdamlonProperty rdfresource"http//www.daml.or
g/services/daml-s/2001/05/Processcomponents" /gt
ltdamltoClass rdfresource"PROCESS-LIST-142"
/gt lt/damlRestrictiongt lt/rdfssubClassOfgt
lt/rdfsClassgt - ltrdfsClass rdfID"PROCESS-LIST
-142"gt ltrdfssubClassOf rdfresource"http//www.
daml.org/services/daml-s/2001/05/ProcessProcessLi
st" /gt - ltrdfssubClassOfgt - ltdamlRestrictiongt
ltdamlonProperty rdfresource"http//www.daml.or
g/2001/03/damloilfirst" /gt ltdamltoClass
rdfresource"AcmeConfirmMvRoute" /gt
lt/damlRestrictiongt lt/rdfssubClassOfgt -
ltrdfssubClassOfgt - ltdamlRestrictiongt
ltdamlonProperty rdfresource"http//www.daml.or
g/2001/03/damloilrest" /gt ltdamltoClass
rdfresource"PROCESS-LIST-141" /gt
lt/damlRestrictiongt lt/rdfssubClassOfgt
lt/rdfsClassgt - ltrdfsClass rdfID"PROCESS-LIST
-141"gt ltrdfssubClassOf rdfresource"http//www.
daml.org/services/daml-s/2001/05/ProcessProcessLi
st" /gt - ltrdfssubClassOfgt .-
Finally, generate the DAML-S for the services
23Sweet Spot Matchmaking
Sweet Spot Matchmaking
From Web Services Architecture W3C Working
Drafthttp//www.w3.org/TR/2002/WD-ws-arch-200211
14/
24Sweet 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
25DAML-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
26DAML-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
27Sweet Spot Matchmaking
Sweet Spot Service Provision
From Web Services Architecture W3C Working
Drafthttp//www.w3.org/TR/2002/WD-ws-arch-200211
14/
28DAML-S VM
- DAML-S processor that allows any Web service to
interact with Web services using only DAML-S
specifications
29Features 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
30DAML-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
31Sweet Spot Matchmaking
Sweet Spot (?) Composition
From Web Services Architecture W3C Working
Drafthttp//www.w3.org/TR/2002/WD-ws-arch-200211
14/
32Sweet 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
33Stanford 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 users objective. (NP
complete or worse) II. Customize reusable
generic procedures - Define and archive
reusable generic procedures - Customize with
users constraints. (NP complete or worse in
a reduced search space) Advantages
efficiency, ease of use, customization
34Architecture
35Demo Dynamic UI with DAMLOIL
User Interface auto-generated from DAMLOIL
Ontology
36Behind the Scenes
User ConstraintsGeneric Proceduresdeductioncomp
osition or User constraints Goal
deduction composition Talk to Web services
through OAA
37Agent e-mails itinerary to customer
Email the user travel plans when done...
38Agent creates expense claim for customer
Generate expense claim
39KSL Service CompositionStatus Challenges
Automated Web Service Composition is working
now! Implementation ? DAMLOIL/DAML-S FOL -gt
Ontolingua, Golog sitn calculus in Prolog ?
Java, Prolog, Ontolingua-DAMLOIL 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 repns required Reasoner.
Technical challenges Execution Monitoring
Recovery, Info vs. world-chging services
Automate Service Selection Low-level
synchronization, message passing issues
40Tools 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 DAMLOIL with OWL
- Exploit new ontology editor
- Improve interface
- Not yet publically releasedcontact Sheila
McIlraith
414 Sweet Spots
Publication
Profile
Discovery
Development
Selection
Process Model
Simulation
Composition
Verification
Execution, Interoperation
Grounding
Monitoring, Recovery
Development Deployment Use
42Summary
- 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/
43End of Part IIIExtraMaterialFollows
44DAMLzon DAML-S for Amazon.com
- WSDL2DAML-S used to generate DAML-S for Amazons
Web Service - DAML-S VM used to interact with Amazon Web service
Reserve Book
Book Search
Process Model for Amazon.com
45Perfomance 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 browsingreserving
task - No client for BrowsingReserving provided by
Amazon
46Results Experiment 1
- Compared Amazon client with DAML-S VM client on
browsing task - 98 runs total over 4 days in varying load
conditions - Results in milliseconds
Amazon Client DAML-S VM
Average execution time 2007 ms 2021 ms Only 14 ms more
Strd Deviation 1134 ms 776 ms
Distribution
47Results Experiment 2
Time of DAML-S VM Time of data transform. Invocation Time
Average 83 156 2797
Strd dev 107 146 1314
- DAML-S VM client on browsingreserving task
- No client for BrowsingReserving 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