Re: Formalising DESCRIBEs; the result graph

All,

We discussed a bit internally, and decided that the important thing is to 
standardise an optional default, and we realise that it this point this is 
best achieved by some surface syntax.


On Friday 17 April 2009 18:10:31 Seaborne, Andy wrote:
> > On Friday 17 April 2009 15:01:25 Seaborne, Andy wrote:
> > > SteveH wrote:
> > > > If you really want
> > > >     CONSTRUCT { <uri> ?p ?o } WHERE { <uri> ?p ?o }
> > > > or
> > > >     CONSTRUCT { <uri> ?a ?b . ?c ?d <uri> } WHERE { { <uri> ?a ?b }
> > > > UNION { ?c ?d <uri> } }
> > > > I'd have thought it would be better to write that explicitly?
> >
> > We don't feel that way, simply by looking at the query, it is harder to
> > write,
> > and harder to understand. With DESCRIBE, you simply say "give me
> > something
> > about these resources", you don't need to write out the triples.
>
> The quoted text on CONSTRUCT is Steve, not me.

True, sorry about that. The > > was supposed to clarify that, but the byline 
was lost.

> > I think it is important for SPARQL to be accepted on the web scale, that
> > we
> > have a lot of shorthands that make queries easier to write and results
> > easier
> > to use, and this is one particularly nice way to do that, I feel.
>
> I suggest putting all abbreviations etc under Feature:SurfaceSyntax and
> keeping Feature:ControlOfDescribeQueries / Feature:DefaultDescribeResult
> for mechanisms that can't be written another way.

Yes, this is probably the best way to proceed.

> Isn't CBD in the of bNodes the same as
> "CONSTRUCT { <s> ?p ?o } WHERE { <s> ?p ?o }" + reifications?  There are
> also the alternative forms as well.

I didn't quite understand the sentence, but if you mean what I think you mean, 
then yes.

> To see if I can make this concrete:
> Something like:
>
> CONSTRUCT
> { <s> ?p ?o . ?p rdfs:label ?label }
> WHERE
> { <s> ?p ?o OPTIONAL { ?p rdfs:label ? label } }

Yes, something like that. 

If we are able to define the "default DESCRIBE" in terms of a relatively 
simple CONSTRUCT like above, would people be willing to go along with it?

> Also, web-architecture point, isn't it better to GET on the property URI to
> find the details of the property from the vocabulary, not the data using
> it? 

Not always. In many cases, the vocabulary itself may not have labels in the 
language you require, and even if it does, you may want to have a different 
label. 

So, I think that a privileged should be free to import the data, or even let 
the SPARQL Endpoint import the vocabulary at runtime (Joseki can do that, 
right?). The vocabulary could be held in a graph of its own if desired, there 
are many ways to separate the data from the vocabulary other than insist on 
GETting the property URI.

There are certainly a few problems with details like these, but the general 
idea that a default DESCRIBE is defined as surface syntax in terms of a 
CONSTRUCT, can people go along with that?

Kind regards 

Kjetil Kjernsmo
-- 
Senior Knowledge Engineer
Mobile: +47 986 48 234
Email: kjetil.kjernsmo@computas.com   
Web: http://www.computas.com/

|  SHARE YOUR KNOWLEDGE  |

Computas AS  PO Box 482, N-1327 Lysaker | Phone:+47 6783 1000 | Fax:+47 6783 
1001

Received on Wednesday, 22 April 2009 13:55:07 UTC