W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > October to December 2010

Re: Another thing on property paths...

From: Axel Polleres <axel.polleres@deri.org>
Date: Fri, 17 Dec 2010 12:30:06 +0000
Cc: SPARQL Working Group <public-rdf-dawg@w3.org>
Message-Id: <F5BD0D11-BC4C-440C-95BC-FF14799451D2@deri.org>
To: Andy Seaborne <andy.seaborne@epimorphics.com>
p.s.: do you think that is sufficiently covered by testcase 
  tests/data-sparql11/property-path/pp02.rq already
or shall I add my example as well (probably can't harm, right?)?

cheers,
Axel

On 17 Dec 2010, at 12:14, Axel Polleres wrote:

> On 17 Dec 2010, at 10:54, Andy Seaborne wrote:
>> What changes to
>> 
>> http://www.w3.org/2009/sparql/docs/query-1.1/rq25.xml#defn_evalZeroPath
>> 
>> are you proposing?
> 
> Do I understand correctly, that the current definition does exactly what I propose? :-)
> 
> If so - phew :-) Probably, I was just mislead by:
> 
> "
> Definition: ZeroLengthPath
> 
> A zero length path matches all subjects and all objects in the graph, 
>            and also any IRIs explictly given as endpoints of the path pattern.
> "
> 
> in Section 18.1.6. Because this sounded to me like Cartesian product.
> 
> Can I suggest to reformulate this as:
> 
> "
> Definition: ZeroLengthPath
> 
> A zero length path matches all subjects, objects, and also any IRIs explictly given as endpoints of the path pattern,
> to themselves."
> 
> BTW, I am not clear why you include IRIs mentioned in SERVICE patterns, what about IRIs explicitly mentioned in GRAPH 
> patterns then? Shouldn't there at least be aremark about why those aren't matched
> 
> Thanks for the quick clarification & best, 
> Axel
> 
> 
> 
> 
> 
> 
>> On 17/12/10 09:53, Axel Polleres wrote:
>>> Independent from Jorge's remarks on the comments list, I have had another
>>> question on PropertyPaths, particulary about ZeroLengthPath:
>>> 
>>> 
>>> Admittedly, find the e.g. the zeroLengthPath operator quite unintiuitive at the moment,
>>> linking *ALL* nodes with each other...
>>> that means that e.g.
>>> 
>>> ?X knows* ?Y
>> 
>> In the real work probably meant
>> 
>> ?X knows+ ?Y
>> 
>>> for not only the transitively linked pairs of resources via the knows property,
>>> ALL pairs of nodes in the graph... Actually, I isn't a more standard way of treating 0-length paths just as
>>> reflexive, i.e. only linking each node reflexively with itself?
>> 
>> It's a possibility.
>> 
>> Do you have pointers to the "more standard way"? (noting that there
>> isn't an implied forward or backwards direction to arcs in an RDF
>> graph).  ^:p is related to the intuition of the (not currently legal)
>> :p{-1}.
>> 
>>> I would at least find this more intuitive and returning less noisy results, i.e. "what I can reach from one node
>>> in 0 steps is just the node itself" sounds intuitive to me. Am I mistaken here? If yes, why?
>>> At least, I don't understand why we *need* to return the pairs of all nodes here?
>> 
>> It does not *need* to - it's a choice point in the design provdiing it's
>> consistent with the cases of:
>> 
>> ?X knows* <Y> ==> ?X=<Y>
>> 
>> and
>> 
>> <X> knows* ?Y ==> ?Y=<X>
>> 
>>        Andy
>> ...
>> 
>>> 
>>> Can someony explain to me why the reflexive only version of ZeroLengthPath wouldn't work with the rest?
>>> 
>>> Axel
>> 
> 
Received on Friday, 17 December 2010 12:30:36 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:44 GMT