RDQL functionality vs. DAWG requirements

Persuant to my action item to review RDQL with respect to the
requirements [1] from the 25-May 2004 teleconference [2], I evaluated
(and implemented) RDQL per the Jan 2004 W3C submission [3].

I was planning on getting this out later this week, but earlier is
probably better than better. Besides, Andy will fix it all up for me.

I copped Bryan's convention [4] for reporting requirement support:

     rdql+ : rdql supports this requirement today under a suitable
 	     protocol binding and/or query language.

     rdql- : the requirement appears to be explicitly outside of the
	     scope of rdql, which is not to say that it could NOT be
	     met by a suitable revision of rdql.

     rdql? : need more information to make the determination.

This somewhat contrived example query will serve as a syntactic
example of how RDQL meets the requirements:

  SELECT ?family , ?given
  FROM   <http://example.org/JohnzVcard.rdf>
  WHERE  (?vcard  vcard:FN "John Smith")
         (?vcard  vcard:N  ?name)
         (?name   vcard:Family  ?family)
         (?name   vcard:Given  ?given)
         (?name   vcard:age  ?age)
         (?name   vcard:shoeSize  ?shoeSize)
  AND    ?shoeSize > 5
  AND    ?age >= ?shoeSize
  USING  vcard FOR <http://www.w3.org/2001/vcard-rdf/3.0#>

Requirements:

rdql+ : 3.1 RDF Graph Pattern Matching
  WHERE  (?vcard  vcard:FN "John Smith")
         (?vcard  vcard:N  ?name)
         (?name   vcard:Family  ?family)
         (?name   vcard:Given  ?given)

rdql+ : 3.2 Variable Binding Results 
  SELECT ?family , ?given
  From the spec: [[
The variable "?x" will be bound to the label of the subject resource.
All such "x" are returned
]]

rdql- : 3.3 Extensible Value Testing
  Has support for equality and comparison operators for integers.

rdql- : 3.4 Subgraph Results

rdql+ : 3.5 Local Queries
  The specification does not describe the result format or mechanism,
  however, an API implementation of this protocol would be able to
  perform local queries.

rdql- : 3.6 Optional Match

rdql+ : 3.7 Limited Datatype Support
  AND    ?shoeSize > 5
  AND    ?age >= ?shoeSize

rdql- : 3.8 Bookmarkable Queries
  RDQL does not spcify a canonicalization into a local part of a URI.

rdql+.5 : 3.9 Bandwidth-efficient Protocol
  Query protocol is terse and easy on the eyes. No result protocol is
  defined.

rdql- : 3.10 Result Limits

Design Objectives:

rdql+ : 4.1 Human-friendly Syntax
  RDQL queries read like a sentence. They allow the use of
  qnames. Term-enclosing parens could be replaced by a single
  delimiter ala N3, but I it is, in my opinion, easy on the eyes.

rdql- : 4.2 Provenance

rdql- : 4.3 Non-existent Triples

rdql- : 4.4 User-specifiable Serialization
  RDQL does not specify results format/protocol nor provide syntax to
  select such.

rdql- : 4.6 Aggregate Query

rdql- : 4.6 Additional Semantic Information


[1] http://www.w3.org/2001/sw/DataAccess/UseCases
[2] http://www.w3.org/mid/--lost-my-copy-of-the-minutes
[3] http://www.w3.org/Submission/2004/SUBM-RDQL-20040109/
[4] http://www.w3.org/mid/D24D16A6707B0A4B9EF084299CE99B39053F8C01@mcl-its-exs02.mail.saic.com
-- 
-eric

office: +1.617.258.5741 NE43-344, MIT, Cambridge, MA 02144 USA
cell:   +1.857.222.5741

(eric@w3.org)
Feel free to forward this message to any list for any purpose other than
email address distribution.

Received on Tuesday, 1 June 2004 10:24:01 UTC