- From: Jan Wielemaker <J.Wielemaker@uva.nl>
- Date: Sat, 13 Oct 2012 10:54:58 +0200
- To: Andy Seaborne <andy.seaborne@epimorphics.com>
- CC: public-rdf-dawg-comments@w3.org
Hi Andy,
I see. If enumerating all nodes is what the test it about, it is fine.
If the test is about whether property paths combine with GRAPH, I'd
prefer if the node-test is a single test and this test uses :p1+.
Cheers --- Jan
On 10/13/2012 10:46 AM, Andy Seaborne wrote:
> Jan,
>
> (explanatory answer - not a formal WG response)
>
> The spec deals with this by defining the node set of a graph as all
> subjects and objects (not properties). This is closest to a
> mathematical graph, which is a set of vertexes and set of edges; an RDF
> graph is defined only as a set of edges.
>
> http://www.w3.org/2009/sparql/docs/query-1.1/rq25.xml#defn_nodeSet
>
> ZeroOrMorePath is then defined using nodes(G) for when the path is
> unbounded at each end. The node set in question is the "active graph"
> hence it's GRAPH <ng-01.ttl>.
>
> When you start working with graph algorithms, the need for the set of
> vertexes arises. The Node set of a graph is the minimal set to have all
> the vertexes taking the triples as labelled edges of a graph. The
> properties could be included, but property paths connect vertexes to
> vertexes, treating the properties as edge labels, when viewed as a
> mathematical graph.
>
> Andy
>
> On 11/10/12 16:29, Jan Wielemaker wrote:
>> Hi,
>>
>> It is not really clear to me whether comments on test cases should be
>> sent to this list. Maybe it is also a comment on the document though.
>> I'm updating the ClioPatria SPARQL endpoint to 1.1.
>>
>> One issue that causes me trouble are test cases such as '(pp34) Named
>> Graph 1'. The query is
>>
>> prefix : <http://www.example.org/>
>> select ?t
>> where {
>> GRAPH <ng-01.ttl> {
>> ?s :p1* ?t }
>> }
>>
>> Given that the * operator matches zero steps and both end-points
>> are variables, all resources are an answer. But, what are all
>> resources? It seems the test cases assume all resources that
>> appear as subject or object in the destination graph. But,
>> why not all predicates too? ClioPatria can generate resources,
>> but it has no clue to what graph these belong :-(
>>
>> Although I can write an implementation that will answer this
>> question as the test-cases suggest it should be answered, I
>> wonder whether it makes much sense to define the behaviour of
>> this query exactly. ?x :p* ?y queries can never be answered on
>> any sensible sized RDF graph anyway.
>>
>> I'd propose to either use :p1+ for these queries or specify either
>> the subject or the object. That avoids these ambiguities.
>>
>> Cheers --- Jan
>>
>> P.s. Is there a better way to get the test cases than mirroring
>> http://www.w3.org/2009/sparql/docs/tests/? I found a mirror
>> git repository on GitHUB, but it was rather outdated when
>> I checked.
>>
>
Received on Saturday, 13 October 2012 08:55:29 UTC