# Another thing on property paths...

From: Axel Polleres <axel.polleres@deri.org>
Date: Fri, 17 Dec 2010 09:53:03 +0000
Message-Id: <4F5FA194-92CB-46B2-A1E6-8B5A391B4513@deri.org>
To: SPARQL Working Group <public-rdf-dawg@w3.org>
```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

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?

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?

Example:

alice knows bob .
bob knows charly .

Pattern:
?X knows* ?Y

Result ALL:
?X ?Y
-----
a  a
a  b
a  c
a  k
b  b
b  a
b  c
b  k
c  c
c  a
c  b
c  k
k  k
k  a
k  b
b  c
a  b
b  c
a  c

Result REFLEXIVE:
?X ?Y
-----
a  a
b  b
c  c
k  k
a  b
b  c
a  c

(a = alice, b = bob, c = chalry, k = knows)

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 09:53:35 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:01:02 UTC