New DQL Spec

From: Richard Fikes (fikes@ksl.stanford.edu)
Date: 06/24/02

  • Next message: Richard Fikes: "DQL Examples"
    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