david martin for daml-s coalition 05/08/2003 part ii: owl-s technical overview profile, process...
TRANSCRIPT
David Martin for DAML-S Coalition 05/08/2003
Part II: OWL-STechnical Overview
Profile, Process & Grounding ontologies Next Steps & Future Directions
SWSI, SWSL & SWSA
David Martin for DAML-S Coalition 05/08/2003
DAML-S Web Services CoalitionBBN: Mark Burstein
CMU: Katia Sycara, Massimo Paolucci*
ICSI: Srini Narayanan
Maryland / College Park: Bijan Parsia
Nokia: Ora Lassila
Stanford KSL: Sheila McIlraith*
SRI: David Martin*
Southampton: Terry Payne*
USC-ISI: Jerry Hobbs
Yale: Drew McDermott
*Contributor to these slides
David Martin for DAML-S Coalition 05/08/2003
What is OWL-S?
• Ontology Web Language for Services • An OWL 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/
David Martin for DAML-S Coalition 05/08/2003
Layered Approach to Language Development
DAML-??? (Rules, FOL?)
XML (Extensible Markup Language)
RDF (Resource Description Framework)
RDFS (RDF Schema)
DAML+OIL OWL (Ontology)
OWL-S (Services)
OWL-S: a major application of OWLFuture versions will build upon emerging layers (e.g. DAML-Rules)
David Martin for DAML-S Coalition 05/08/2003
OWL-S ObjectivesAutomation 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 standardsIncremental exploitation
Enable reasoning/planning about servicese.g., On-the-fly composition
Integrated use with information resourcesEase of use; powerful tools
David Martin for DAML-S Coalition 05/08/2003
Automation Enabled by OWL-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?
David Martin for DAML-S Coalition 05/08/2003
Pro
cess
Mod
el
Gro
undi
ng
Development … Deployment … Use …
Publication
Simulation
Verification
Discovery
Composition
Key:
Selection
Execution, Interoperation
Monitoring, Recovery
Pro
file
David Martin for DAML-S Coalition 05/08/2003
Upper Ontology of Services
Ontology images compliments of Terry Payne, University of Southampton
David Martin for DAML-S Coalition 05/08/2003
High-level characterization/summary of a serviceUsed for
• Populating service registries• A service can have many profiles
• Automated service discovery• Service selection (matchmaking)
One can derive:• Service advertisements• Service requests
Service Profile: “What does it do?”
David Martin for DAML-S Coalition 05/08/2003
Service ProfileNon Functional Non Functional PropertiesProperties
Functionality Functionality DescriptionDescription
David Martin for DAML-S Coalition 05/08/2003
Service Profile: Functionality Description
• Functional Specification of what the service provides in terms of parameters, subclassed as:– preconditionspreconditions– inputsinputs– outputsoutputs– effectseffects
• Summarizes the top-level Process
David Martin for DAML-S Coalition 05/08/2003
Service Profile: NonFunctional Properties
• Provides supporting information about the service.
David Martin for DAML-S Coalition 05/08/2003
Service Profile: NonFunctional Properties
• These include– serviceName
– textDescription
– qualityRating
– serviceParameter
– serviceCategory
– contactInformation
David Martin for DAML-S Coalition 05/08/2003
Service Profile: NonFunctional Properties - Actor
David Martin for DAML-S Coalition 05/08/2003
• Class-hierarchical yellow pages– Implicit capability characterization
– Arrangement of attributes on class hierarchy
– Can use multiple inheritance
– Relies primarily on “non-functional” properties
• Process summaries for planning purposes– More explicit
– Inputs, outputs, preconditions, effects
– Less reliance on formal hierarchical organization
– Summarizes process model specs
– Relies primarily on functional description
Service Profile: Styles of use
David Martin for DAML-S Coalition 05/08/2003
Exploiting Profile Hierarchies
Tie in with UDDI, UNSPSC, …
DL Basis for matchmaking
Multiple profiles; multiple taxonomies
David Martin for DAML-S Coalition 05/08/2003
Upper Ontology of Services
David Martin for DAML-S Coalition 05/08/2003
Service Model“How does it work?”
Process– Interpretable description of service provider’s 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
Process Model: “How does it work?”
David Martin for DAML-S Coalition 05/08/2003
Service Model / Process Model
David Martin for DAML-S Coalition 05/08/2003
Acme Book
Truck Shipment
Function/Dataflow Metaphor
Input:
• confirmation no.• ...
Output:
• failure notification• …
truck available+
valid credit card
Y
N?
• customer name• origin• destination• weight• pickup date• ...
David Martin for DAML-S Coalition 05/08/2003
AI-inspired Action/Process Metaphor
Input:
• confirmation no.• ...
Output:
• failure notification• …
truck available+
valid credit card
Y
N?
Preconditions:
• customer name• origin• destination• pickup date• ...
• knowledge of the input• ...
• goods at location if successful• credit card debited...
Effect:
Output:
Effect: <no effect>
Acme Book
Truck Shipment
David Martin for DAML-S Coalition 05/08/2003
AcmeTruckShpng
www.acmeair.com
book flight service
• customer name• flight numbers• dates• credit card no.• • ...
• confirmation no.• ...
• failure notification• errror information• …
?
www.acmehotel.com
book hotel service
• confirmation no.• dates• room type• credit card no.• ...
• confirmation no.• ...
• failure notification• …
?
www.acmecar.com
book car service
• customer name• location• car type• dates• credit card no.• ...
• confirmation no.• ...
• failure notification• …
?
• • • •
Composite Process
• • • • • • • • • •
• • • •
?
• • • • • • • • • • •
Input &Preconditions
Output &Effects
• • • •
• • • •
David Martin for DAML-S Coalition 05/08/2003
Atomic Process Example
<!– Atomic Process Definition - GetDesiredFlightDetails --> <rdfs:Class rdf:ID="GetDesiredFlightDetails"> <rdfs:subClassOf rdf:resource="http://www.daml.org/Process#AtomicProcess" /> </rdfs:Class>
GetDesired Flight Details
Airport
Flight Date
departureAirport_In
outboundDate_In
<!– (sample) Inputs used by atomic process GetDesiredFlightDetails --> <rdf:Property rdf:ID="departureAirport_In"> <rdfs:subPropertyOf rdf:resource="http://www.daml.org/Process#input" /> <rdfs:domain rdf:resource="#GetDesiredFlightDetails" /> <rdfs:range rdf:resource="http://www.daml.ri.cmu.edu/ont/
DAML-S/concepts.daml#Airport" /> </rdf:Property>
<rdf:Property rdf:ID="outbounDate_In"> <rdfs:subPropertyOf rdf:resource="http://www.daml.org/Process#input" /> <rdfs:domain rdf:resource="#GetDesiredFlightDetails" /> <rdfs:range rdf:resource="http://www.daml.ri.cmu.edu/ont/ DAML-S/concepts.daml#FlightDate" /> </rdf:Property>
David Martin for DAML-S Coalition 05/08/2003
Composite Process Example
<rdfs:Class rdf:ID="BookFlight"> <rdfs:subClassOf rdf:resource="#CompositeProcess" /> <rdfs:subClassOf rdf:resource="http://www.daml.org/Process#Sequence" /> <daml:subClassOf> <daml:Restriction> <daml:onProperty rdf:resource="http://www.daml.org/Process#components" /> <daml:toClass> <daml:subClassOf> <daml:unionOf rdf:parseType="daml:collection"> <rdfs:Class rdfs:about="#GetFlightDetails" /> <rdfs:Class rdfs:about="#GetContactDetails" /> <rdfs:Class rdfs:about="#ReserveFlight" /> <rdfs:Class rdfs:about="#ConfirmReservation" /> </daml:unionOf> </daml:subClassOf> </daml:toClass> </daml:Restriction> </daml:subClassOf></rdfs:Class>
Composite Process
Confirm Reservation
BookFlight
Get Contact Details
Sequence
Get Flight Details
Reserve Flight
SequenceSequence
David Martin for DAML-S Coalition 05/08/2003
Simple and Composite Processes
truck available+
valid credit card
Y
N
Confirm Shipping Region
Get Quote
Get Shipping Dates
Book Truck Shipment
Acme
Truck
Shipping
Service
expands
AcmeTruckShpng ExpandedAcmeTruckShpng
David Martin for DAML-S Coalition 05/08/2003
Upper Ontology of Services
David Martin for DAML-S Coalition 05/08/2003
Service 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
• Builds upon WSDL
David Martin for DAML-S Coalition 05/08/2003
OWL-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 OWL-S
David Martin for DAML-S Coalition 05/08/2003
OWL-S / WSDL Grounding
Resources/Concepts
WSDL
OWL-S
Process Model
Atomic Process
Operation Message
Inputs / Outputs
Binding to SOAP, HTTP, etc.
David Martin for DAML-S Coalition 05/08/2003
OWL-S / WSDL Grounding (cont’d)
David Martin for DAML-S Coalition 05/08/2003
daml-property
owl-s-process
inputX
daml-propertyoutputY
AtomicProcess
WSDLDocument
<message …> <part …>
<message …> <part …>
<operation …>
<binding …>
OWL-S / WSDL Grounding (cont’d)
David Martin for DAML-S Coalition 05/08/2003
Review: Upper Ontology of Services
David Martin for DAML-S Coalition 05/08/2003
Path of EvolutionRelease 0.5 (May 2001)
Initial Profile & Process ontologies
Release 0.6 (December 2001)Refinements to Profile & Process; Resources ontology
Release 0.7 (October 2002)Initial DAML-S/WSDL Grounding; Profile, Process Model refinements; more complete examples
Release 0.9 (May 2003) - just announcedDAML-S OWL-SGrounding: greater generality, flexibilityInitial work on expressing conditions, securityMore community support (contributions pages)
Towards 1.0Expressiveness issues; exceptions, lifecycle; process issues
David Martin for DAML-S Coalition 05/08/2003
• OWL-final
• Process Model– Exceptions
– Process Control Ontology (lifecycle mgmt.)
– Roles, explicit messaging
– Surface language?
• Grounding– WSDL 1.2
Critical Path to 1.0
David Martin for DAML-S Coalition 05/08/2003
Semantic Web Services Initiative (SWSI)
www.swsi.org
David Martin for DAML-S Coalition 05/08/2003
SWSI Objectives
• Bring together US and European Semantic Web Services researchers
• Engage in collaborative standardization efforts– Semantic Web Services Language
• DAML-S as a primary input• More attention to working with industry standards efforts
– Semantic Web Services Architecture
• Close collaboration with W3C directions– Web Service Choreography Working Group– Semantic Web Services Interest Group– Likely outcome is a W3C Note
David Martin for DAML-S Coalition 05/08/2003
SWSI Structure
• Advisory Committee – Murray Burke, Hans-Georg Stork, Jim Hendler
• Coordinating Committee– Co-chairs: Dieter Fensel and Katia Sycara
• Industrial Advisory Board– Co-chairs: Michael Uschold and ???
• Language Technical Committee – Co-chairs: David Martin and Michael Kifer
• Architecture Technical Committee– Co-chairs: Mark Burstein and Christoph Bussler
David Martin for DAML-S Coalition 05/08/2003
End of Part II
ExtraMaterialFollows
David Martin for DAML-S Coalition 05/08/2003
Challenges• 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 OWL?– Interface between DL ontology, logical expressions,
algorithm/workflow representation
• Connecting with Industry– Showing compelling value– Not promising too much– Providing an incremental path
David Martin for DAML-S Coalition 05/08/2003
(Some) Related Work
Related Industrial Initiatives • UDDI • ebXML
• WSDL • .Net
• XLANG • Biztalk, e-speak, etc
These XML-based initiatives are largely complementary to OWL-S. OWL-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