DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow)...

16
DAML Queries/Life Cycle SRI International

Transcript of DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow)...

Page 1: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

DAML Queries/Life Cycle

SRI International

Page 2: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Parts of Ontologies(used in the examples to follow)

• Assumptions

Researcher String

lastName

firstName

Publication-ref

author

Topictopic

Numberyear

Page 3: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Queries• Find a reference to the most recent paper on SHOE with Jame Hendler as a co-

author.• Find a reference to the paper on SHOE with James Hendler as a co-author,

with the most citations in the World Wide Web Virtual Library: Artificial Intelligence.

• Find an article or technical report on SHOE by Jim Hendler.• Request the Stanford Library to hold a copy of Daniel Dennett's book "Elbow

Room" for me.• If the Stanford Library does not have a copy of Daniel Dennett's "Elbow

Room", order it for me via Interlibrary Loan.• Buy a copy of Daniel Dennett's "Elbow Room" for me from amazon.com.• Buy me a copy of Daniel Dennett's "Elbow Room" at the cheapest available

price.• Who in the SRI AI Center has coauthored a paper with a Turing Award

winner? a Nobel Prize winner? someone from Iowa?

Page 4: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Query Language• Extend DAML syntax to cover queries

– Support a subset of OO query language mechanisms

• Example: “Find information about Researcher with last name ‘Hendler’”

… xmlns: SRI=“http://www.ai.sri.com/daml/ontologies/Researcher.daml”

<FIND> <SRI:Researcher>

<RESTRICTEDBY> … <lastName>Hendler</lastName>… </RESTRICTEDBY>

</FIND>

Page 5: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Data and Control Flow• DAML query is parsed, interpreted and (all or parts) sent to search site “DAML Vista”• DAML Vista searches indexed DB for matching Researcher objects

– Recursively searches through imported ontologies

– May translate to other ontologies with help of ontology mapping service/engine

– May seek help from specialty KB service (e.g., specializing in researchers)

Page 6: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Search Engine Strategies

… xmlns: SRI=…ai.sri.com/ontologies/Researcher.daml

<SRI:Researcher> <lastName>Hendler<\lastName> ...

CASE ONE: Simple matching of class/properties

Web page

Page 7: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Search Engine Strategies (2)

xmlns: SRI=…ai.sri.com/ontologies/Researcher.daml

xmlns:Hobbs=…ai.sri.com/~hobbs/MyResearcher.daml

<Hobbs:MyResearcher> <lastName>Hendler<\lastName>

MyResearcher subClass of Researcher

CASE TWO: Recursive search of ontology tags through imported ontologies

(USING SUBCLASSES, SUBPROPERTIES)

Page 8: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Search Engine Strategies (3)

xmlns: KSL=…ksl.stanford.edu/Staff.daml

<KSL:Staff> <name>Hendler</name>

CASE THREE:Using ontology mapping service

xmlns:…ai.sri.com/ontologies/Researcher.daml -> xmlns:...ksl.stanford.edu/Staff.daml

Researcher -> StafflastName -> name

Page 9: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Search Engine Strategies (4)

xmlns :…ai.sri.com/ontologies/Researcher.daml

CASE FOUR:Using speciality repository

xmlns:…ai.sri.com/ontologies/Researcher.daml <Researcher:lastName>Hendler</…>

“more info about Hendler”

<Researcher> <lastName>Hendler</…><home> ”link” </…>

Local cache ofinformation about

researcher

Links to Home pagesand other relevant info

Page 10: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Architecture

DAML-basedSearch Service

Searches mapping sitesfor equivalent ontologiesSearches web pages for answers

OntologyMappingService

Maps/translates queriesTranslates KB

DAMLParser

QDAML Query InterpreterOptimizer

Webpages

Ontologymapping

sites

xmlns:SRI… -> xmlns:KSL..Researcher -> Staff

Speciality Repository

-offline crawling-cacheing or links

Data flow

Service accessWeb page access

Deal w/ filter/preferences

Use knowledge about query and web

Page 11: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Ontology Mapping Service

• DAML-recommended Mapping Ontology– API spec for mapping ontologies

• Mapping Service maps/translates between ontologies– for a given query it returns an equivalent query

using notations from other ontologies– it uses ontology mapping sites

Page 12: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Ontology Mapping Service (2)

• Can map entire KB where useful

• Can produces views of KB

• Necessary: Tools that support Map creation– Modes

• interactive (using input of ontology designer)

• automatic (using SNARK/Maude-like Tools to automatically draw inferences about ontology equivalences)

Page 13: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

A Slightly More Complex Query

• Find publications about SHOE co-authored by (Jim) Hendler

… xmlns: SRI=“http://www.ai.sri.com/daml/ontologies/Publication.daml

<FIND> <SRI:Publication-ref>

<RESTRICTEDBY> <SRI:author>

<LOOSE><SRI:Researcher:firstName>Jim</…> </LOOSE></SRI:author>

<SRI:Researcher:lastName>Hendler</...lastName>

<SRI:topic><SRI:Topic:name>SHOE</…></SRI:Topic> ...

Page 14: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

A More Complex Query

• Find most recent publications about SHOE co-authored by (Jim) Hendler

… xmlns: SRI=“http://www.ai.sri.com/daml/ontologies/Publication.daml

<FIND> <SRI:Publication-ref>

<RESTRICTEDBY> <SRI:author> …as before...

<PREFER><SRI:most-recent>

<TERMINATION><Timeout> ...

<NumMatches> ...

<Locality Constraints> …

<NumPagesVisited> … </TERMINATION>

Various possible realizations

Page 15: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Services for Preferences

• Services can be specified for – Site– Class– Ontology (set of classes and properties)

• Services can be used to define preferences, e.g.,

<Service ID=“more-recent”><owner> Publication-ref </owner>

<range> Bool </range> ...<domain> Publication-ref </domain>

Page 16: DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.

Site Services

• E.g., “Person-match” service in order to find information about person with name “Hendler”

• Issues: – Service has to be specified w/ required

input/output parameters– Protocol how to find appropriate services needs to

be defined– Software to support interface w/ services