Re: Every CONSTRUCT is DISTINCT?

On 15 Oct 2007, at 15:49, Lee Feigenbaum wrote:

> Bijan Parsia wrote:
>> [I preface this with a "I don't want to delay anything even a  
>> little bit!" comment. I don't!]
>> <http://chatlogs.planetrdf.com/swig/2007-10-15#T14-35-05>
>> It seems to me that CONSTRUCT implicitly DISTINCTs. Is this true?  
>> It seems to me that there is room for a CONSTRUCT that had  
>> duplicate triples in it (for the usual reasons of streamability).
>> If there was I discussion about this point, and it's easy for  
>> someone to dig out, I would appreciate a pointer.
>
> CONSTRUCT returns a graph. Whether the representation/serialization  
> of the graph contains duplicate triples is irrelevant to the spec's  
> concern, as far as I know. That is, my implementation can return:
> :s :p :o .
>
> or it can return:
> :s :p :o .
> :s :p :o .
> :s :p :o .
> :s :p :o .
>
> ...and it's returning the same graph, and therefore it's returning  
> the same results. (Both are representations of the same set of  
> triples.)
>
> I'm sure someone else will correct me if I'm wrong.

We discussed this on IRC and this is a clever bit of spec reading. It  
does then highlight the need for a CONSTRUCT DISTINCT.

Be that as it may, I as an implementor and a user would find it  
helpful if there were a note pointing out this aspect. I confess that  
I would never in this lifetime have come up with that reading. So, if  
it would be possible to add a bit of text somewhere that clarified  
this point, I think that'd be swell.

Cheers,
Bijan.

Received on Monday, 15 October 2007 15:45:13 UTC