Re: property paths three more test cases pp13, pp14, pp15

Steve,

I added a new use case pp16 along the lines you suggest, see details below.

On 20 Dec 2010, at 16:46, Steve Harris wrote:

> I think pp14 would be more enlightening if the pp14.ttl included a disconnected foaf:knows graph, and some triples using another predicate. Something like:
> 
> @prefix : <http://example.org/> .
> @prefix foaf: <http://xmlns.com/foaf/0.1/> .
> 
> :a foaf:knows :b .
> :b foaf:knows :c .
> :d foaf:knows :e .
> :f foaf:name "test" .
> :a foaf:homepage :h .
> 
> Even after Axel's proposed changes I find the wording a bit impenetrable, though admittedly I haven't had time to study the algebra.
> 
> Axel, can you tell mw what results you'd expect from pp14.rq with that data?
> 

your data returns, according to my understanding of the algebra:

-------------------
| X      | Y      |
===================
| :a     | :a     |
| :a     | :b     |
| :a     | :c     |
| :b     | :b     |
| :b     | :c     |
| :c     | :c     |
| :d     | :d     |
| :d     | :e     |
| :e     | :e     |
| :f     | :f     |
| :h     | :h     |
| "test" | "test" |
-------------------

I would, BTW, rather keep the simple use case pp14 "as is", and added a more complex one having your extension, as well as
duplicate paths and cycles as a  separate new use case:

@prefix : <http://example.org/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .

:a foaf:knows :b .
:b foaf:knows :c .
:a foaf:knows :c .    <-- duplicate path
:d foaf:knows :e .
:e foaf:knows :f .
:f foaf:knows :e .    <-- cycle
:f foaf:name "test" .
:a foaf:homepage :h .

I am not sure about the cycle handling ATM, so I can only give the result from ARQ (which is what I checked in under pp16.srx for now):

-------------------
| X      | Y      |
===================
| :a     | :a     |
| :a     | :b     |
| :a     | :c     |
| :a     | :c     |
| :b     | :b     |
| :b     | :c     |
| :c     | :c     |
| :d     | :d     |
| :d     | :e     | 
| :d     | :e     |
| :d     | :f     |
| :e     | :e     |
| :e     | :e     |
| :e     | :f     |
| :f     | :e     |
| :f     | :f     |
| :f     | :f     |
| :h     | :h     |
| "test" | "test" |
-------------------

What I don't really understand about the cycle handling, is why :d :e is returned twice, ie. whether that's intended?
I added that one as pp16 for now.

best,
Axel 




Axel


> - Steve
> 
> On 2010-12-20, at 16:12, Andy Seaborne wrote:
> 
> > I have added pp15 to the manifest entries list.
> >
> > ARQ passes these tests.
> >
> >       Andy
> >
> > On 20/12/10 00:55, Axel Polleres wrote:
> >> based on the previous mails' discussion I exctracted three test cases, and added them under:
> >>
> >> http://www.w3.org/2009/sparql/docs/tests/data-sparql11/property-path/
> >>
> >> pp13
> >> ... Zero Length Paths with Literals
> >>
> >> pp14
> >> ... foaf:knows*
> >>
> >>
> >> pp15
> >> ... Zero Length Paths on an empty graph (returning endpoints of patterns)
> >>
> >>
> >> Axel
> >>
> >>
> >>
> >
> 
> --
> Steve Harris, CTO, Garlik Limited
> 1-3 Halford Road, Richmond, TW10 6AW, UK
> +44 20 8439 8203  http://www.garlik.com/
> Registered in England and Wales 535 7233 VAT # 849 0517 11
> Registered office: Thames House, Portsmouth Road, Esher, Surrey, KT10 9AD
> 
> 

Received on Monday, 20 December 2010 17:24:16 UTC