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

Re: DISTINCT()

From: Steve Harris <steve.harris@garlik.com>
Date: Wed, 14 Mar 2012 14:24:24 +0000
Cc: public-rdf-dawg@w3.org
Message-Id: <1F42928C-FED7-4EC3-A396-8C77F96E6526@garlik.com>
To: Olivier Corby <Olivier.Corby@sophia.inria.fr>
On 2012-03-14, at 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.

Based on absolutely no implementation experience, just gut reaction, I would prefer just the DISTINCT(path) syntax too. It's a little less like mysterious perl-style line noise.

- Steve

-- 
Steve Harris, CTO
Garlik, a part of Experian
1-3 Halford Road, Richmond, TW10 6AW, UK
+44 20 8439 8203  http://www.garlik.com/
Registered in England and Wales 0535 7233 VAT # 849 0517 11
Registered office: Landmark House, Experian Way, Nottingham, Notts, NG80 1ZZ
Received on Wednesday, 14 March 2012 14:25:02 GMT

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