1 / 54

Ontologies for the Semantic Web: Services and Events

Ontologies for the Semantic Web: Services and Events. Jerry R. Hobbs USC/ISI Marina del Rey, CA. Outline. Services: DAML-S (OWL-S) An Event Ontology for video data Time: DAML-Time Plans for a Space Ontology Ideas toward an Ontology of Information Structure

emmettl
Download Presentation

Ontologies for the Semantic Web: Services and Events

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ontologies for the Semantic Web:Services and Events Jerry R. Hobbs USC/ISI Marina del Rey, CA

  2. Outline Services: DAML-S (OWL-S) An Event Ontology for video data Time: DAML-Time Plans for a Space Ontology Ideas toward an Ontology of Information Structure Progress toward an Ontology of Commonsense Psychology

  3. DAML-S Acknowledgements Many slides stolen from David Martin, A few slides stolen from Terry Payne and Dieter Fensel

  4. Motivating Tasks Automatic Web service discovery Find an airline site that accepts Diners Club Automatic Web service invocation Buy coach class United flight 347 for Sept 15 Automatic Web service composition Find the cheapest flight LAX to some Washington airport Sept 15 or 16 and buy a ticket; Rent a compact car for when I arrive; Reserve a room at the Arlington Hyatt. Automatic Web service “decomposition” Use Amazon.com to find reference Automatic Web service execution monitoring Has my credit card been charged yet? Has the ticket been mailed yet?

  5. Intelligent Web Services Why Semantic Web Services? Thanks to Dieter Fensel (U. of Innsbruck)for use of this material Bringing the web to its full potential Web Services UDDI, WSDL, SOAP Dynamic WWW Semantic Web URI, HTML, HTTP RDF, RDF(S), OWL Static Shallow Deep

  6. BBN: 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 DAML-S Web Services Coalition *Contributor to these slides

  7. 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/

  8. DAML+OIL  OWL(Ontology) RDFS (RDF Schema) RDF (Resource Description Framework) XML (Extensible Markup Language) Layered Approach to Language Development OWL-S: a major application of OWL Future versions will build upon emerging layers (e.g. DAML-Rules) OWL-S (Services) DAML-??? (Rules, FOL?)

  9. 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 OWL-S Objectives

  10. Upper Ontology of Services Ontology images compliments of Terry Payne, University of Southampton

  11. 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 Service Profile:“What does it do?”

  12. Service Profile Non Functional Properties Functionality Description

  13. Functional Specification of what the service provides in terms of parameters, subclassed as: preconditions inputs outputs effects Summarizes the top-level Process Service Profile: Functionality Description

  14. Provides supporting information about the service. Service Profile: NonFunctional Properties

  15. These include serviceName textDescription qualityRating serviceParameter serviceCategory contactInformation Service Profile: NonFunctional Properties

  16. Service Profile: NonFunctional Properties - Actor

  17. 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

  18. Exploiting Profile Hierarchies Tie in with UDDI, UNSPSC, …DL Basis for matchmakingMultiple profiles; multiple taxonomies

  19. Upper Ontology of Services

  20. 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/(de)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?” Service Model“How does it work?”

  21. Service Model / Process Model

  22. Function/Dataflow Metaphor Input: Output: • customer name • origin • destination • weight • pickup date • ... • confirmation no. • ... Acme Book Truck Shipment Y truck available + valid credit card ? N • failure notification • …

  23. Acme Book Truck Shipment AI-inspired Action/Process Metaphor Output: • confirmation no. • ... 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 • ... • failure notification • … Output: <no effect> Effect:

  24. Composite Process Output & Effects Input & Preconditions AcmeTruckShpng • confirmation no. • ... • customer name • location • car type • dates • credit card no. • ... www.acmecar.com book car service ? • failure notification • … ? • confirmation no. • ... • confirmation no. • dates • room type • credit card no. • ... www.acmehotel.com book hotel service • confirmation no. • ... ? • customer name • flight numbers • dates • credit card no. • ... www.acmeair.com book flight service ? • failure notification • … • failure notification • errror information • …

  25. Atomic Process Example <!– Atomic Process Definition - GetDesiredFlightDetails --> <rdfs:Class rdf:ID="GetDesiredFlightDetails"> <rdfs:subClassOfrdf:resource="http://www.daml.org/Process#AtomicProcess" /> </rdfs:Class> <!– (sample) Inputs used by atomic processGetDesiredFlightDetails --> <rdf:Property rdf:ID="departureAirport_In"> <rdfs:subPropertyOfrdf:resource="http://www.daml.org/Process#input" /> <rdfs:domainrdf:resource="#GetDesiredFlightDetails" /> <rdfs:rangerdf:resource="http://www.daml.ri.cmu.edu/ont/ DAML-S/concepts.daml#Airport" /> </rdf:Property> <rdf:Property rdf:ID="outboundDate_In"> <rdfs:subPropertyOfrdf:resource="http://www.daml.org/Process#input" /> <rdfs:domainrdf:resource="#GetDesiredFlightDetails" /> <rdfs:rangerdf:resource="http://www.daml.ri.cmu.edu/ont/ DAML-S/concepts.daml#FlightDate" /> </rdf:Property> departureAirport_In Airport GetDesired Flight Details Flight Date outboundDate_In

  26. Composite Process Example <rdfs:Class rdf:ID="BookFlight"> <rdfs:subClassOfrdf:resource="#CompositeProcess" /> <rdfs:subClassOfrdf:resource="http://www.daml.org/Process#Sequence" /> <daml:subClassOf> <daml:Restriction> <daml:onPropertyrdf:resource="http://www.daml.org/Process#components" /> <daml:toClass> <daml:subClassOf> <daml:unionOf rdf:parseType="daml:collection"> <rdfs:Classrdfs:about="#GetFlightDetails" /> <rdfs:Classrdfs:about="#GetContactDetails" /> <rdfs:Classrdfs:about="#ReserveFlight" /> <rdfs:Classrdfs:about="#ConfirmReservation" /> </daml:unionOf> </daml:subClassOf> </daml:toClass> </daml:Restriction> </daml:subClassOf> </rdfs:Class> Composite Process BookFlight Get Flight Details Get Contact Details Confirm Reservation Reserve Flight Sequence Sequence Sequence

  27. Confirm Shipping Region truck available + valid credit card N Acme Truck Shipping Service Y expands Get Quote Get Shipping Dates Book Truck Shipment Simple and Composite Processes AcmeTruckShpng ExpandedAcmeTruckShpng

  28. Upper Ontology of Services

  29. 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

  30. 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

  31. OWL-S / WSDL Grounding OWL-S Resources/Concepts Process Model Inputs / Outputs Atomic Process Message Operation Binding to SOAP, HTTP, etc. WSDL

  32. OWL-S / WSDL Grounding (cont’d)

  33. OWL-S / WSDL Grounding (cont’d) WSDLDocument <message …> <part …><message …> <part …> <operation …><binding …> daml-property inputX daml-property outputY owl-s-process AtomicProcess

  34. Review: Upper Ontology of Services

  35. DAML Coalition formed (February 2001) Release 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) DAML-S  OWL-S Grounding: greater generality, flexibility Initial work on expressing conditions, security More community support (contributions pages) Towards 1.0 Expressiveness issues; exceptions, lifecycle; process issues Path of Evolution

  36. Event Ontology for Video Data (work with Ram Nevatia, USC) Some concepts Single-thread composite events Multi-thread composite events Granularity and primitive events The functionality of events An ontology of mobile objects

  37. Motivation In a convenience store surveillance videotape, how do you tell the difference between a legitimate purchase a holdup shoplifting A language of describing the structure of event in video data for recognition and retrieval

  38. Role of Ontology Fixes meaning of terms in common vocabulary Abstract Theory Common Vocabulary Application1 Application2 Mark-Up Language

  39. How to Build an Ontology What types of objects are there? What are their attributes or properties? What relations can obtain between various types of objects? What possible changes are there in properties and relations? = Events

  40. Reification of Events p(x) The state or event of p being true of or happening to x Various notation devices possible. If events are your main topic, your logic should have variables that can refer to them.

  41. Some Terminology Properties, Attributes, Relationships An event is a change of state (e.g., location). change(p(x),q(x)), change(at(x,y),at(x,z)) An agent, state or event can cause a state or event. [change(p1(x),q1(x))] -cause-> [change(p2(y),q2(y))] An agent is an entity that can initiate a causal chain. a -cause-> [change(p(x),q(x))] An action is an event with an agent. a -cause-> [change(p(x),q(x))] John -cause-> change(at(H,A),at(H,W)) -cause-> change(intact(W),broken(W)) Agent Instrument Theme/Object

  42. Some Terminology A process is a complex of tightly coupled events. An activity is a set of loosely coupled events and/or processes. {[change(p(x),q(x))], ....} An event is a limiting case of a process; a process is an event at a finer granularity. e1 e4 e3 e2 e5

  43. Single-Thread Event Compositionfor Single Agents/Objects Sequence: open door; go thru; ... Iteration: walking: {move left leg; move right leg}* Alternation: take part; [toss into bin A | toss into bin B] Conditionals: take part; square? ==> toss into bin A round? ==> toss into bin B Hierarchical Composition Interruption and Resumption Similar to DAML-S Process Model

  44. Multi-thread Events Each agent/objects executes its single-thread process. Sometimes agents/objects interact (physically). Some agents can observe other agents’/objects’ actions and events, and modify their behavior accordingly. Some agents can perform actions in order to be observed: communication. . . . . . . . . . .

  45. Multi-thread Events:Example off & empty off & filled Blender: on blending turns on burner fills blender turns on blender Cook: Pot on Burner: off on boiling increasing temperature

  46. Temporal Constraints Many processes have temporal constraints among component events. Topological relations: begin, inside, end, before, interval relations. part appears on conveyor belt; pick it up Duration: rhythm -- two agents keep iterations at same duration Clock and calendar: process begins at 9:00 am DAML-Time Ontology for relating events and describing their temporal properties

  47. Granularity Coarse-grained view: PERSON CROWD Fine-grained view: person1 head person2 person3 person4 arm arm torso person5 person6 leg leg

  48. Granularity COARSE: Complex object as single entity. FINE: Complex object as multiple independent, coordinated agents.

  49. Granularity COARSE: Complex object as single entity. INTERMEDIATE: Complex object as single entity with parts FINE: Complex object as multiple independent, coordinated agents.

  50. Primitive Actions Granularity-dependent, domain-dependent. Some primitive actions in visual applications: Cars: move w speed in direction, change People in indoor/outdoor surveillance: tens, not hundreds walk, look at objects, pick up and carry objects, hand objects to other persons, ... People in meetings: Gaze direction,body position, Hand gestures: deictic, iconic, “metaphorical”, ...

More Related