W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > January to March 2012

Re: DISTINCT()

From: Andy Seaborne <andy.seaborne@epimorphics.com>
Date: Wed, 14 Mar 2012 14:20:56 +0000
Message-ID: <4F60A948.3020303@epimorphics.com>
To: public-rdf-dawg@w3.org


On 14/03/12 13:44, Olivier Corby wrote:
> I fear that the design is becoming over complex.
>
> We used to have two kinds of repetitions:
>
> + * without loop in the path (except first step of + ...)
> {n,m} with loop in the path
>
> Now we would have three kinds of repetitions:
>
> + * without loop, without duplicate
> {+} {*} without loop, with duplicate
> {n,m} with loop with duplicate
>
> In addition, {} notation is (in general) used for set but {+} enables
> duplicates so it is misleading
> In addition {n,m} and {+} do not behave the same with loops, so it is
> not uniform
>
>
> (By the way, our experience in my team is that loops in {n,m} are not
> welcome because very often {1,n} is used to limit the length of paths
> wrt +, but unfortunately paths are then trapped into loops (use case
> with symmetric relation, e.g. foaf:knows{1,5}))
>
>
> Concerning distinct, I am able to prototype distinct as a global
> operator on path expression:
> ?x distinct(path) ?y
>
> I would support this design.
>
> Olivier

Olivier,

Good points, thank you.

Where do you stand with regard to leaving open the future possibility of 
length handling in paths?

To pick one part of that design space, if a path is suppose to be 
matched with between N and M path steps, does it matter if the path also 
matches with less path steps, or more path steps, and so is outside that 
range as well as being in it?

	Andy
Received on Wednesday, 14 March 2012 14:21:37 GMT

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