- From: Eric Prud'hommeaux <eric@w3.org>
- Date: Tue, 1 Jun 2004 23:23:51 +0900
- To: public-rdf-dawg@w3.org
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