- From: Alberto Reggiori <areggiori@webweaving.org>
- Date: Mon, 3 Mar 2003 23:52:37 +0100
- To: Libby Miller <libby.miller@bristol.ac.uk>
- Cc: <www-rdf-rules@w3.org>, Alberto Reggiori <areggiori@webweaving.org>
- Message-Id: <D49EDD24-4DCA-11D7-99B8-000393A63C18@webweaving.org>
Libby,
here is another attempt to express your rdf query test manifest file
[1] in RDF/XML using a vocabulary which borrows some definitions from
the manifest file of the RDF Test Cases [2] from Jan and Dave. The
manifest example uses bArcs in triple-patterns as Jos, you and Andy
sketched in previous emails; an alternative to express the input query
patterns with bArcs might be to use predicate patterns as in the
RDF-QBE paper of Dave Reynolds [3].
the rdf query manifest file should:
- be as general as possible but at the same time simple enough to use
- be expressed in RDF/XML (then we can map it to any other syntax if
needed)
- allow to specify separated multiple sources, queries and output
documents as well as inline them
- sources, queries and output results might be expressed in different
syntaxes
- the query results might represent a sub-graph of the input graph as
well as a list of bindings (table)
- inference rules should be tested separately from simple basic
conjunctive rdf query patterns (entailment tests could eventually fit
into a higher/second level tests set)
- rdf:Seq ordering of tests is not so important at the moment
The manifest file could look like:
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns="http://www.w3.org/2003/03/rdf-query-tests/testSchema#" >
<!-- input source, query and output documents are external into files
-->
<test num="3">
<name>test3</name>
<description>two rss files</description>
<status>true</status>
<inputDocument>
<RDF-XML-Document rdf:about="file:rdf/jobs-rss.rdf" />
<RDF-XML-Document rdf:about="file:rdf/jobs.rss" />
</inputDocument>
<queryDocument>
<NT-Document rdf:about="file:queries/nt/q3.sq.nt" />
</queryDocument>
<outputDocument>
<RDF-XML-Document rdf:about="file:rdf/rs/q3.rdf" numberRows="5" />
</outputDocument>
</test>
</rdf:RDF>
A given test has a sequential number (num), a name, a description and
an exit status (true/false). Several input sources (inputDocument)
might be smushed and/or aggregated perhaps in different formats. The
list of simple basic conjunctive rdf query patterns might be expressed
as a graph with variables in place of URI refs and literals (and
predicate patterns perhaps) [3][4]. The output result can be another
RDF/XML document (graph) or a table (as well presented in some RDF
syntax) [5].
We could eventually add more input document types such as
constraintsDocument to express more meaty query languages extensions
e.g. in SquishQL/RDQL AND ?x =~ /matcHThis/i and so on. Native query
syntax documents might be also specified using rdf:resource directly on
the queryDocument property.
I attached an extended version of the above example using
rdf:parseType="Literal" to inline RDF/XML documents (sources, query and
output) - N3/N-Triples syntax is inline using a simple XML CDATA
construct.
any comment, correction or remark is welcome
If we could generally agree on some simple syntax like the above I
could start to integrate the rdf query tests manifest into the RDF
Query and Rules survey later on.
Alberto
[1]
http://swordfish.rdfweb.org/rdfquery/tests/query-results-manifest.rdf
[2] http://www.w3.org/TR/rdf-testcases/
[3] http://www.hpl.hp.com/semweb/publications/DaveR-www2003.pdf
[4] http://lists.w3.org/Archives/Public/www-archive/2002Apr/0040.html
[5] http://lists.w3.org/Archives/Public/public-esw/2003Jan/0046.html
Attachments
- application/octet-stream attachment: query-results-manifest-draft.rdf
Received on Monday, 3 March 2003 17:57:15 UTC