k s l w i n e a g e n t : testbed application for semantic web technologies deborah mcguinness eric...

1
K S L W i n e A g e n t K S L W i n e A g e n t : : Testbed Application for Semantic Web Technologies Testbed Application for Semantic Web Technologies Deborah McGuinness Eric Hsu Jessica Jenkins Rob McCool Sheila McIlraith Paulo Pinheiro da Silva Richard Fikes Knowledge Systems Laboratory, Computer Science Department, Stanford University Wine Agent receives a meal description and retrieves a selection of matching wines available on the Web, using an ensemble of emerging standards and tools: DAML+OIL / OWL for representing a domain ontology of foods, wines, their properties, and relationships between them JTP theorem prover for deriving appropriate pairings DQL for querying a knowledge base consisting of the above Inference Web for explaining and validating the response [Web Services for interfacing with vendors] Utilities for conducting and caching the above transactions Premises: ((|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://ra1.stanford.edu/wkb#|::|NEW-COURSE9| |http://ra1.stanford.edu/wkb#|::|SEAFOOD-COURSE|) (|http://ra1.stanford.edu/wkb#|::|DRINK| |http://ra1.stanford.edu/wkb#|::|NEW-COURSE9| |http://ra1.stanford.edu/wkb#|::|WINE9|)) Query Pattern: (|http://ra1.stanford.edu/wkb#|::|COLOR| |http://ra1.stanford.edu/wkb#|::|WINE9| ?x) Must Bind: ?x Answer Bundle Size Bound: NIL -----------> Answer set: (X = |http://ra1.stanford.edu/wkb#|::|WHITE|) Process-Handle: #GR3421342207 Semantic Web Example Integration Semantic Web Example Integration Domain Ontology Domain Ontology <rdfs:Class rdf:ID="BLAND-FISH-COURSE"> <daml:intersectionOf rdf:parseType="daml:collection"> <rdfs:Class rdf:about="#MEAL-COURSE"/> <daml:Restriction> <daml:onProperty rdf:resource="#FOOD"/> <daml:toClass rdf:resource="#BLAND-FISH"/> </daml:Restriction> </daml:intersectionOf> <rdfs:subClassOf rdf:resource="#DRINK-HAS-DELICATE-FLAVOR-RESTRICTION"/> </rdfs:Class> <rdfs:Class rdf:ID="BLAND-FISH"> <rdfs:subClassOf rdf:resource="#FISH"/> <daml:disjointWith rdf:resource="#NON-BLAND-FISH"/> </rdfs:Class> <rdf:Description rdf:ID="FLOUNDER"> <rdf:type rdf:resource="#BLAND-FISH"/> </rdf:Description> <rdfs:Class rdf:ID="CHARDONNAY"> <rdfs:subClassOf rdf:resource="#WHITE-COLOR-RESTRICTION"/> <rdfs:subClassOf rdf:resource="#MEDIUM-OR-FULL-BODY-RESTRICTION"/> <rdfs:subClassOf rdf:resource="#MODERATE-OR-STRONG-FLAVOR-RESTRICTION"/> […] </rdfs:Class> <rdf:Description rdf:ID="BANCROFT-CHARDONNAY"> <rdf:type rdf:resource="#CHARDONNAY"/> <REGION rdf:resource="#NAPA"/> <MAKER rdf:resource="#BANCROFT"/> <SUGAR rdf:resource="#DRY"/> […] </rdf:Description> DQL specifies abstract semantics of KB query-answering Can be used as an agent-to-agent protocol and query language for interfacing with a networked knowledge base Supports incomplete answer sets, discontinuous sessions, … KSL DQL server processes incoming Wine Agent queries Used to allow the wine agent to query the wines ontology loaded into JTP about consequences of the user defined scenario Example : Finding descriptions of wines (or individual wines) that complement particular meal courses. The example below finds the wine color suggested with a seafood course. (Other queries map individual foods to course types, wines/varietals to properties, etc.) In addition to being a pedagogical demonstration of the semantic web in action, the KSL Wine Agent has provided empirical input to research on: DAML/OIL reasoner implementations Reasoning from premises DAML query language requirements Semantic web integration issues Explanation requirements Defines classes of foods and wines and the restrictions between them, along with some some sample instances. Excerpts : Bland Fish and Chardonnay classes and instances Reasoning System Reasoning System JTP Theorem Prover infers pairings within given framework Uses DAML Axioms to operationalize domain specification Produces proofs for publication via Inference Web Programmatic interface; knowledge base is loaded via URI and then embedded within DQL server JTP available from the Stanford Knowledge Systems Lab http://www.ksl.stanford.edu/software/JTP/ Querying the Wine Knowledge Base Querying the Wine Knowledge Base Justifying the Answers Justifying the Answers Web Services (current work) Web Services (current work) Web-based reasoning/retrieval motivates explanation needs: Provenance: verify that source information came from an up-to-date, trustworthy source. Reasoning transparency: expose reasoner used and reasoning employed through browser navigation. Interoperability: allow the sharing and composition of proofs from distributed and heterogeneous reasoners. Reasoning abstraction: (in process) rewrite proof steps into more understandable proof fragments. Wine Agent produces proofs in Inference Web DAML format Further proof browser, portable proof, and registry information available from: http://www.ksl.stanford.edu/software/iw/ Example : Browsing proof that seafood pairs with white wine Wine Agent accesses information about pricing and availability of wines through www.wine.com , via a rudimentary on-site search engine. www.wine.com used as information providing Web Service. The inputs and outputs to www.wine.com will be annotated in DAML-S 0.9 the DAML+OIL/OWL ontology for Web Services. Markup will enable automated invocation of the www.wine.com Web Service, facilitating interoperability, semantic translation of wine information, and enabling more sophisticated searching and filtering of wine information using the richer wine ontology provided by the Wine Agent. More Wine Agent info: http://www.ksl.stanford.edu/projects/wine/explanation.html

Upload: lisa-charles

Post on 18-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: K S L W i n e A g e n t : Testbed Application for Semantic Web Technologies Deborah McGuinness Eric Hsu Jessica Jenkins Rob McCool Sheila McIlraith Paulo

K S L W i n e A g e n tK S L W i n e A g e n t ::Testbed Application for Semantic Web TechnologiesTestbed Application for Semantic Web Technologies

Deborah McGuinness Eric Hsu Jessica Jenkins Rob McCoolSheila McIlraith Paulo Pinheiro da Silva Richard Fikes

Knowledge Systems Laboratory, Computer Science Department, Stanford University

Wine Agent receives a meal description and retrieves a

selection of matching wines available on the Web, using an

ensemble of emerging standards and tools: DAML+OIL / OWL for representing a domain ontology of foods, wines, their properties, and relationships between themJTP theorem prover for deriving appropriate pairingsDQL for querying a knowledge base consisting of the aboveInference Web for explaining and validating the response[Web Services for interfacing with vendors]Utilities for conducting and caching the above transactions

Premises: ((|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://ra1.stanford.edu/wkb#|::|NEW-COURSE9| |http://ra1.stanford.edu/wkb#|::|SEAFOOD-COURSE|) (|http://ra1.stanford.edu/wkb#|::|DRINK| |http://ra1.stanford.edu/wkb#|::|NEW-COURSE9| |http://ra1.stanford.edu/wkb#|::|WINE9|))Query Pattern: (|http://ra1.stanford.edu/wkb#|::|COLOR| |http://ra1.stanford.edu/wkb#|::|WINE9| ?x)Must Bind: ?xAnswer Bundle Size Bound: NIL----------->Answer set: (X = |http://ra1.stanford.edu/wkb#|::|WHITE|)Process-Handle: #GR3421342207

Semantic Web Example IntegrationSemantic Web Example Integration

Domain OntologyDomain Ontology

<rdfs:Class rdf:ID="BLAND-FISH-COURSE">

<daml:intersectionOf rdf:parseType="daml:collection">

<rdfs:Class rdf:about="#MEAL-COURSE"/>

<daml:Restriction>

<daml:onProperty rdf:resource="#FOOD"/>

<daml:toClass rdf:resource="#BLAND-FISH"/>

</daml:Restriction>

</daml:intersectionOf>

<rdfs:subClassOf rdf:resource="#DRINK-HAS-DELICATE-FLAVOR-RESTRICTION"/>

</rdfs:Class>

<rdfs:Class rdf:ID="BLAND-FISH">

<rdfs:subClassOf rdf:resource="#FISH"/>

<daml:disjointWith rdf:resource="#NON-BLAND-FISH"/>

</rdfs:Class>

<rdf:Description rdf:ID="FLOUNDER">

<rdf:type rdf:resource="#BLAND-FISH"/>

</rdf:Description>

<rdfs:Class rdf:ID="CHARDONNAY">

<rdfs:subClassOf rdf:resource="#WHITE-COLOR-RESTRICTION"/>

<rdfs:subClassOf rdf:resource="#MEDIUM-OR-FULL-BODY-RESTRICTION"/>

<rdfs:subClassOf rdf:resource="#MODERATE-OR-STRONG-FLAVOR-RESTRICTION"/> […]

</rdfs:Class>

<rdf:Description rdf:ID="BANCROFT-CHARDONNAY">

<rdf:type rdf:resource="#CHARDONNAY"/>

<REGION rdf:resource="#NAPA"/>

<MAKER rdf:resource="#BANCROFT"/>

<SUGAR rdf:resource="#DRY"/> […]

</rdf:Description>

DQL specifies abstract semantics of KB query-answeringCan be used as an agent-to-agent protocol and query language for interfacing with a networked knowledge baseSupports incomplete answer sets, discontinuous sessions, …

KSL DQL server processes incoming Wine Agent queriesUsed to allow the wine agent to query the wines ontology loaded into JTP about consequences of the user defined scenarioExample: Finding descriptions of wines (or individual wines) that complement particular meal courses. The example below finds the wine color suggested with a seafood course. (Other queries map individual foods to course types, wines/varietals to properties, etc.)

In addition to being a

pedagogical demonstration

of the semantic web in

action, the KSL Wine Agent

has provided empirical input

to research on:DAML/OIL reasoner implementations Reasoning from premisesDAML query language requirementsSemantic web integration issuesExplanation requirements

Defines classes of foods and wines and the restrictions

between them, along with some some sample instances. Excerpts: Bland Fish and Chardonnay classes and instances

Reasoning SystemReasoning System JTP Theorem Prover infers pairings within given framework

Uses DAML Axioms to operationalize domain specification Produces proofs for publication via Inference WebProgrammatic interface; knowledge base is loaded via URI and then embedded within DQL server

JTP available from the Stanford Knowledge Systems Labhttp://www.ksl.stanford.edu/software/JTP/

Querying the Wine Knowledge BaseQuerying the Wine Knowledge Base

Justifying the AnswersJustifying the Answers

Web Services (current work)Web Services (current work)

Web-based reasoning/retrieval motivates explanation needs: Provenance: verify that source information came from an up-to-

date, trustworthy source. Reasoning transparency: expose reasoner used and reasoning

employed through browser navigation. Interoperability: allow the sharing and composition of proofs from

distributed and heterogeneous reasoners. Reasoning abstraction: (in process) rewrite proof steps into more

understandable proof fragments.

Wine Agent produces proofs in Inference Web DAML format

Further proof browser, portable proof, and registry information

available from: http://www.ksl.stanford.edu/software/iw/

Example: Browsing proof that seafood pairs with white wine

Wine Agent accesses information about pricing and availability of

wines through www.wine.com, via a rudimentary on-site search engine.

www.wine.com used as information providing Web Service.

The inputs and outputs to www.wine.com will be annotated in DAML-S 0.9

the DAML+OIL/OWL ontology for Web Services.

Markup will enable automated invocation of the www.wine.com Web

Service, facilitating interoperability, semantic translation of wine information,

and enabling more sophisticated searching and filtering of wine information

using the richer wine ontology provided by the Wine Agent.

More Wine Agent info: http://www.ksl.stanford.edu/projects/wine/explanation.html