Title: DAMLS: Bringing Services to the Semantic Web
1DAML-SBringing Services tothe Semantic Web
- David Martin
- SRI International
- http//www.daml.org/services/
2DAML-S Web Services Coalition
- BBN Mark Burstein
- CMU Massimo Paolucci, Katia Sycara
- ICSI Srini Narayanan
- Nokia Ora Lassila
- Stanford KSL Sheila McIlraith
- SRI David Martin
- Southampton Terry Payne
- USC-ISI Jerry Hobbs
- Yale Drew McDermott
- Contributed to these slides
3Outline
- Motivation Goals
- DAML-S technical overview
- Profile, Process Grounding ontologies
- Achievements to date
- Releases, tools applications
- Challenges
- Next Steps
4Convergence on Services
- Commercial vendors, media, forecasters, etc.
- Intranets, not just internets
- W3C Web services efforts
- Semantic Web community
- DAML-S WSMF other EU efforts
- ISWC 10 services-related papers, 7 posters
- Grid computing (OGSA)
- Ubiquitous computing (devices)
- Mobile access to services
- ? A remarkable opportunity
- Bringing behavioral intelligence to the Web
5What is DAML?
- A DARPA program
- An input to the W3C Semantic Web activity
- Draft for the Web Ontology working group
- A markup language
- www.daml.org
6Characteristics of DAML
- Based on XML RDF(S)
- Beyond RDF properties of properties, equivalence
and disjointness of classes, more constraints,
etc. Feature comparison https//www.daml.org/lan
guage/features.html - Layered approach
- XML RDF(S) DAMLOIL (DAML-L) DAML-S
- Semantics for Web resources from Knowledge
Representation concepts - DAMLOIL can be regarded as a description logic
- Ontologies
- Logical rules inference
- DAML-S Extension to Services
7What is DAML-S?
- DARPA Agent Markup Language for Services
-
- A DAMLOIL ontology/language for (formally)
describing properties and capabilities of Web
services - An approach that draws on many sources
- Description logic
- AI planning
- Workflow
- Formal process modeling
- Agents
- Web services
- http//www.daml.org/services/
8Layered Approach to Language Development
- DAML-S a major application of DAMLOIL
- Future versions will build upon emerging layers
(e.g. DAML-Rules)
DAML-S (Services)
DAML-??? (Rules, FOL?)
9DAML-S Objectives
- Automation of service use by software agents
- Ideal full-fledged use of services never before
encountered - discovery, selection, composition, invocation,
monitoring - Useful in the real world
- Compatible with industry standards
- Incremental exploitation
- Enable reasoning/planning about services
- e.g., On-the-fly composition
- Integrated use with information resources
- Ease of use powerful tools
10Automation Enabled by DAML-S
- Web service discovery
- Find me a shipping service that transports goods
to Dubai. - Web service invocation
- Buy me 500 lbs. powdered milk from
www.acmemoo.com -
- Web service selection composition
- Arrange food for 500 people for 2 weeks in
Dubai. - Web service execution monitoring
- Has the powdered milk been ordered and paid for
yet?
11Upper Ontology of Services
Ontology images compliments of Terry Payne,
University of Southampton
12Service Profile What does it do?
- High-level characterization/summary of a service
- Used for
- Populating service registries
- A service can have many profiles
- Automated service discovery
- Service selection (matchmaking)
- One can derive
- Service advertisements
- Service requests
13Service Profile
Non Functional Properties
Functionality Description
14Service Profile Capability Description
- Specification of what the service provides
- High-level functional representation in terms of
- preconditions
- inputs
- (conditional) outputs
- (conditional) effects
- Summarizes the top-level Process (described by
Service Model)
15Service Profile Functional Attributes
- Provide supporting information about the service,
including
- geographical scope
- Pizza Delivery only within the Pittsburgh area
- quality descriptions and guarantees
- Stock quotes delivered within 10 secs
- service types, service categories
- Commercial / Problem Solving etc
- service parameters
- Average Response time is currently ...
16Service Profile Styles of use
- Class-hierarchical yellow pages
- Implicit capability characterization
- Arrangement of attributes on class hierarchy
- Can use multiple inheritance
- Process summaries for planning purposes
- More explicit
- Inputs, outputs, preconditions, effects
- Less reliance on formal hierarchical organization
- Summarizes process model specs
17Exploiting Taxonomies of Services
nameproviderroleavgResponseTime?
ServiceProfile
FeeBased
feeBasispaymentMethod
ProductProvidingService
ActionService
Physical_Product
Manufacturing
InfoService
InformationProduct
physicalProductmanufacturerdeliveryRegiondel
iveryProviderdeliveryType
PhysicalProductService
Repair
physicalProduct
Tie in with UDDI, UNSPSC, DL Basis for
matchmakingMultiple profiles multiple taxonomies
transportationModegeographicRegion
Transportation
18Upper Ontology of Services
19Service ModelHow does it work?
Process Model How does it work?
- Process
- Interpretable description of service providers
behavior - Tells service user how and when to interact
(read/write messages) - Process control
- Ontology of process state supports status
queries - (stubbed out at present)
- Used for
- Service invocation, planning/composition,
interoperation, monitoring - All processes have
- Inputs, outputs, preconditions and effects
- Function/dataflow metaphor action/process
metaphor - Composite processes
- Control flow
- Data flow
20Service Model / Process Model
21Function/Dataflow Metaphor
Input
Output
- customer name
- origin
- destination
- weight
- pickup date
- ...
Acme Book Truck Shipment
Y
truck available valid credit card
?
N
22AI-inspired Action/Process Metaphor
Output
Input
- customer name
- origin
- destination
- pickup date
- ...
- goods at location
- if successful
- credit card debited...
Effect
Y
truck available valid credit card
?
Preconditions
N
- knowledge of
- the input
- ...
Output
Effect
23Composite Process
Output Effects
Input Preconditions
AcmeTruckShpng
- customer name
- location
- car type
- dates
- credit card no.
- ...
www.acmecar.com book car service
?
?
- confirmation no.
- dates
- room type
- credit card no.
- ...
www.acmehotel.com book hotel service
?
- customer name
- flight numbers
- dates
- credit card no.
-
- ...
www.acmeair.com book flight service
?
- failure notification
- errror information
-
24Simple and Composite Processes
AcmeTruckShpng
ExpandedAcmeTruckShpng
25Process Model Recent evolution
- Conditional outputs effects
- Parameter bindings
- alues rdfparseType"damlcollection"
theProperty"fullCongoBuyBookISBN"/
theProperty"outInCatalogBookISBN"/
theProperty"congoBuyBookISBN"/
s - ? Pushing the limits of DAMLOIL expressiveness
26Upper Ontology of Services
27Service Grounding How to access it
- Implementation-specific
- Message formatting, transport mechanisms,
protocols, serializations of types - Service Model Grounding give everything needed
for using the service - Examples HTTP forms, SOAP, KQML, CORBA IDL, OAA
ICL, Java RMI
28DAML-S / WSDL Grounding
- Web Services Description Language
- Authored by IBM, Ariba, Microsoft
- Focus of W3C Web Services Description WG
- Commercial momentum
- Specifies message syntax accepted/generated by
communication ports - Bindings to popular message/transport standards
(SOAP, HTTP, MIME) - Abstract types extensibility elements
- Complementary with DAML-S
29DAML-S
DL-based Types
Process Model
Inputs / Outputs
Atomic Process
Message
Operation
Binding to SOAP, HTTP, etc.
WSDL
30DAML-S / WSDL Grounding (contd)
31DAML-S / WSDL Grounding (contd)
WSDLDocument
daml-property
inputX
daml-property
outputY
daml-s-process
AtomicProcess
32Review Upper Ontology of Services
33Key
Publication
Profile
Discovery
Simulation
Selection
Process Model
Verification
Composition
Invocation, Interoperation
Grounding
Monitoring, Recovery
Development Deployment Use
34Path of Evolution
- Release 0.5 (May 2001)
- Initial Profile Process ontologies
- Release 0.6 (December 2001)
- Refinements to Profile Process
- Resources ontology
- Two approaches to formal semantics
- Sycara/Ankolekar, McIlraith/Narayanan
- Release 0.7 (October 2002)
- DAML-S/WSDL Grounding
- Profile, Process Model refinements
- More complete examples
- Towards 1.0
- Expressiveness issues process modeling industry
tie-in
35Related Activities
- Web site mailing lists
- http//www.daml.org/services/
- www-ws_at_w3.org
- Users
- UMCP (Hendler/Parsia), UMBC (Finin), Manchester
(Goble), CMU (Sadeh), Lockheed-Martin, Ultralog,
beta-reviewers, - Tools
- DAML-S publications
- WWW10 SW Workshop (2), SWWS, WWW11, Coordination
2002, AAMAS, ICSW (4), IEEE Computer, IEEE
Intel. Systems - W3C Web services activities
- Designated liaison for WS Arch. WG Katia Sycara
- Experiment
- Use cases
36Tools and Applications
DAML-S is just another DAMLOIL ontology ? All
the tools technologies for DAMLOIL are
relevant Some DAML-S Specific Tools and
Technologies Discovery, Matchmaking, Agent
Brokering CMU, SRI (OAA), Stanford KSL
Automated Web Service Composition Stanford KSL,
BBN/Yale/Kestrel, CMU, MIT,
Nokia, SRI DAML-S Editor Stanford KSL, SRI,
CMU (profiles), Manchester Process Modeling
Tools Reasoning SRI, Stanford KSL Service
Enactment /Simulation SRI, Stanford KSL Formal
Specification of DAML-S Operational/Execution
Semantics CMU, Stanford KSL, SRI
37Challenges
- Finding the 80/20 line
- Profiles relationship with processes
- Process modeling many issues
- Variability of public/private aspects of
Processes - Extending to offline (sub)processes
- Generalizing to multiple roles
- Failure, transactions
- Where and how to go beyond DAMLOIL?
- Interface between DL ontology, logical
expressions, algorithm/workflow representation - Connecting with Industry
- Showing compelling value
- Not promising too much
- Providing an incremental path
38Next steps / priorities
- Focus on use cases ? architecture
- Joint committee forming
- Move to OWL
- Model information services
- Profile More substantial illustrative taxonomies
- Tie in with existing taxonomies where possible
(e.g. UNSPSC) - Process Model
- Evaluate potential tie-in with an existing effort
(WSFL?) - Support real-world use
- Describing and using public WSDL services
- Possible collaborations with other SemWeb
projects - Demos directed towards Web services community
- Tools
- DAML-S API
39(Some) Related Work
- Related Industrial Initiatives
- UDDI ebXML
- WSDL .Net
- XLANG Biztalk, e-speak, etc
- These XML-based initiatives are largely
complementary to DAML-S. - DAML-S aims to build on top of these efforts
enabling increased expressiveness, semantics, and
inference enabling automation. - Related Academic Efforts
- Process Algebras (e.g., Pi Calculus)
- Process Specification Language (Hoare Logic,
PSL) - Planning Domain Definition Language (PDDL)
- Business Process Modeling (e.g., BMPL)
- OntoWeb Process Modeling Effort
40Summary
- The service paradigm will be a crucial part of
the Semantic Web - DAML-S supports service descriptions that are
integral with other Semantic Web meta-data - DAML-S aims to enable automatic discovery,
selection, invocation, composition, monitoring of
services - Initial versions of Profile, Process, and
Grounding ontologies are available - Many challenges remain
- Were interested in synergy with related work
- http//www.daml.org/services/
41Acknowledgements
- Slides created by David Martin, Sheila
McIlraith, Terry Payne - Ontology images created by Terry Payne, CMU