From: Richard Fikes ([email protected])
Date: 06/24/02
Attached is an updated version of the informal DQL specification that incorporates the proposals from last week's telecon. I reproduce in text form below the paragraphs from the spec that contain the new proposals. I will send out some examples before tomorrow's telecon if I have time. All comments welcome. Richard ------------------- Overview DQL is a formal language and protocol for posing queries from a querying agent (which we refer to as the "client") to an answering agent (which we refer to as the "server"). A DQL query contains a "query pattern" that is a collection of DAML+OIL sentences in which literals and/or resources have been replaced by variables. A query includes a specification of which of the variables in the query pattern are "must bind" variables, which are "may bind" variables, and which are "don't bind" variables. We consider query-answering using DQL to mean determining answers each of which includes a binding for all of the "must bind" variables and zero or more of the "may bind" variables such that the sentences produced by applying the bindings to the query pattern and considering the remaining variables in the query pattern to be existentially quantified produces sentences that are entailed by the knowledge base with respect to which the query was answered. ... Each binding in a query answer is a uri-ref or a literal that either explicitly occurs as a term in the answer KB or is a term in DAML+OIL. That is, DQL is designed for answering queries of the form "What uri-refs and literals from the answer KB and DAML+OIL denote objects that make the query pattern true?" Or, in the case that all the variables in the query pattern are "don't bind" variables, the query is of the form "Is the query pattern true in the answer KB?". ... DQL Query A client initiates a query-answering dialogue with a server by sending the server a "DQL query" that is specified as follows: * Query Pattern - A DQL query necessarily includes a "query pattern" that specifies relationships among unknown sets of objects in a domain of discourse. Each unknown object is represented in the query pattern by a variable. A query pattern is a collection of DAML+OIL sentences in which some of the literals and resources have been replaced by variables. * "Must Bind" Variables - A DQL query necessarily includes a specification of which of the variables that occur in the query pattern are "must bind" variables. Each query answer necessarily includes a binding for each of the "must bind" variables. * "May Bind" Variables - A DQL query necessarily includes a specification of which of the variables that occur in the query pattern are "may bind" variables. Each query answer includes a binding for zero or more of the "may bind" variables. * "Don't Bind" Variables - A DQL query necessarily includes a specification of which of the variables that occur in the query pattern are "don't bind" variables. Query answers do not include bindings for "don't bind" variables. ... DQL Answer Bundle ... When multiple answers for a query are produced by the server, the binding set for each answer is required to be distinct from and not a subset of any of the binding sets of answers previously produced by the server for the query. Two binding sets are distinct if there is a variable that has distinct bindings in the two sets. ... Notes and Commentary The Complete Answer Set of a Query The answers to a query are in one-to-one correspondence to the following binding sets: * All sets consisting of bindings for all the "must bind" variables and for all the "may bind" variables such that the sentences produced by applying the bindings to the query pattern and considering the remaining variables in the query pattern to be existentially quantified produces sentences that are entailed by the answer KB; and * All sets consisting of bindings that (1) correspond to answers to the query when one or more of the "may bind" variables is designated as a "don't bind" variable and (2) are not subsets of the binding set corresponding to any other answer to the original query. ...
This archive was generated by hypermail 2.1.4 : 06/24/02 EDT