| DQL | |
| A Query-Answering Language for DAML+OIL |
Roles For Reasoning In The Semantic Web
| Ontology developers | |||
| Classification | |||
| Inconsistency detection | |||
| Evolution | |||
| Debugging and refinement | |||
| Maintenance | |||
| Integration | |||
| Web site developers | |||
| Recognition | |||
| Inconsistency detection | |||
| Evolution | |||
| Debugging and refinement | |||
| For users seeking services | |||
| Service composition | |||
| Planning | |||
| Execution monitoring | |||
| For users seeking information | |||
| Query-answering | |||
A DAML+OIL Reasoning Working Group
| Promote interaction and collaboration among DAML contractors working on reasoning | ||
| E-mail distribution list | ||
| Web site | ||
| Design consensus DAML query language? | ||
| Design a consensus language for querying DAML+OIL knowledge bases | ||
| Design consensus DAML justification language? | ||
| Do this in conjunction with and after design of DAML rule language. | ||
| Standard for querying DAML+OIL KBs | |||
| Language for: | |||
| Queries | |||
| Answers to queries | |||
| Justifications for answers | |||
| Protocol for: | |||
| Agent-agent interaction during query-answering | |||
| Support development of: | |||
| DAML+OIL query-answering reasoning methods | |||
| Interoperating DAML+OIL query-answering agents | |||
| Provide basis for Semantic Web standard | |||
| For full DAML and OWL languages | |||
| The formal properties of queries and answers | ||
| What is a query? | ||
| What is an answer and what does it mean? | ||
| Inferring answers may be expensive | ||
| Impractical to always try to compute all answers | ||
| Answers may only be known to exist | ||
| Equivalence of multiple answers | ||
| There may be an infinite number of answers | ||
| Is a query to a specific knowledge base? | ||
| Justifications for answers | ||
| What are they and when should they be computed? | ||
| Are queries and answers represented in DAML+OIL? | ||
| A DML query necessarily includes: | ||||
| Pattern – collection of DAML+OIL sentences in which literals and/or resources have been replaced by variables | ||||
| E.g. (owns ?p ?c) (type ?c Car) (color ?c Red) | ||||
| “Who owns a red car?” | ||||
| Distinguished Variables in the pattern whose bindings are sought | ||||
| E.g., {?p} | ||||
| A DML query necessarily includes: | |||
| Pattern | |||
| Distinguished Variables | |||
| A DML query optionally includes: | |||
| DAML+OIL knowledge base with respect to which the query is posed | |||
| All queries are answered with respect to a knowledge base | |||
| The answering agent may select the knowledge base | |||
| … | |||
| A DML query necessarily includes: | |||
| Pattern | |||
| Distinguished Variables | |||
| A DML query optionally includes: | |||
| DAML+OIL knowledge base | |||
| Premise – additional DAML+OIL sentences to facilitate if-then queries | |||
| E.g., “If C1 is a Seafood Course and W1 is a drink of C1, what color is W1?” | |||
| Premise: (type C1 Seafood-Course) (drink C1 W1) | |||
| Pattern: (color W1 ?x) | |||
| Justification request | |||
| A DQL answer necessarily contains: | ||||
| Bindings for some or all of the distinguished variables | ||||
| E.g., “Who is a parent of who?” | ||||
| Pattern: (parent-Of ?p ?c) | ||||
| Distinguished variables: {?p ?c} | ||||
| Bindings: {(?p Earl) (?c Richard)} | ||||
| or if the child is not known: {(?p Earl)} | ||||
| The sentences produced by applying the bindings to the pattern and treating the remaining variables as existentially quantified are entailed by the KB | ||||
| E.g., (exists ?c (parent-Of Earl ?c)) | ||||
| The bindings include all the bindings for distinguished variables that the answering agent has | ||||
| A conformance requirement | ||||
| A DQL answer necessarily contains: | |||||
| Bindings for some or all of the distinguished variables | |||||
| The sentences produced by applying the bindings to the pattern and treating the remaining variables as existentially quantified are entailed by the KB | |||||
| The bindings include all the bindings for distinguished variables that the answering agent has | |||||
| Each binding is to a literal or URI in the vocabulary of the KB | |||||
| Not allowed: | |||||
| Arbitrary term expressions (descriptions) | |||||
| E.g., { … (?c “A Person all of whose uncles are lawyers”)} | |||||
| Skolem constants | |||||
| A DQL answer necessarily contains: | ||
| Bindings for some or all of the query pattern’s distinguished variables | ||
| Query to which this is an answer | ||
| Answering Agent that produced the answer | ||
| Knowledge base used to answer the query | ||
| A DQL answer optionally contains: | ||
| Justification if requested | ||
| DQL is for answering queries of two forms | ||||
| When there are distinguished variables: | ||||
| “What resources or literals from the KB’s vocabulary denote objects that make the query pattern true?” | ||||
| E.g., “Who are the parents of Richard?” | ||||
| When where are no distinguished variables | ||||
| “Is the query pattern true in the query KB?” | ||||
| E.g., “Does Earl have any children?” | ||||
| Answers are generated one at a time | |||
| Response to a query is one of the following: | |||
| Answer and Continuation – The continuation can be used to request a next answer from the answering agent | |||
| “no” – no further answers are entailed by the KB | |||
| “unknown” – no further answers can be produced by the answering agent (but more may be entailed) | |||
| Every answer contains a distinct set of bindings | |||
| But two sets of bindings may denote the same objects | |||
| More capabilities can be built using continuations | |||
| E.g., 4Find all answers | |||
| 4Each answer denotes a distinct set of objects | |||
Example Query-Answering Dialogue
| “child” is an inverse of “parent” | |
| Every “Person” has 2 “parent”s | |
| Every “parent” of every “Person” is a “Person” |
| The formal properties of queries and answers | ||
| What is a query? | ||
| What is an answer and what does it mean? | ||
| Inferring answers may be expensive | ||
| Answers may only be known to exist | ||
| Equivalence of multiple answers | ||
| There may be an infinite number of answers | ||
| Is a query to a specific knowledge base? | ||
| Justifications for answers | ||
| E.g., proofs, premises, sources, certifications, etc. | ||
| Not yet designed | ||
| Are queries and answers represented in DAML+OIL? | ||
| Yes, using a DAML-Q ontology(?) | ||
| Birds of a feather session on Thursday | ||
| 11:00 to noon | ||
| During this meeting, talk with Pat & myself | ||
| Ongoing, send e-mail to the joint committee | ||