Re: CONSTRUCT an RDF Datest

On 11/29/15 5:33 AM, Andy Seaborne wrote:
> On 29/11/15 01:45, Tara Athan wrote:
>> Update: In a private reply, someone mentioned that it is possible to
>> create and update named graphs in a Graph Store, e.g. with the SPARQL
>> Update language. However, in my usecase, I am only interested in
>> creating an immutable RDF Dataset, not a mutable Graph Store. This hint
>> was useful in letting me see what a CONSTRUCT for an RDF Dataset might
>> look like, though (patterned after INSERT).
>>
>> For example, suppose I want to filter an RDF Dataset to extract a new
>> dataset where only named graphs having a metadata triple in the default
>> graph matching a certain filter are retained. It might be expressed so:
>>
>> CONSTRUCT
>>   { ?name ex:observedAt ?date
>>    GRAPH ?name
>>     { ?s ?p ?o}
>> }
>> WHERE
>>   {
>>    { ?name ex:observedAt ?date }
>>    GRAPH ?name
>>        {?s ?p ?o}
>>    FILTER (?date > 2015-06-01)
>> }
>
> In this particular example, do the results need to exactly conform to 
> the structure of the dataset?  If the ex:observedAt is put in the 
> results in the same graph:
>
> CONSTRUCT
>   { ?name ex:observedAt ?date
>     ?s ?p ?o
> }
> WHERE ...
In this particular example, the aim is to reproduce the original 
structure of the dataset.
>
>>
>> Is there any theoretical or technical obstacle to this?
>
> There's no obstacle.  A Google Summer of Code project added this to 
> Apache Jena this year and it'll be in the next release.
>
> It follows the design you gave:
>
> https://jena.apache.org/documentation/query/construct-quad.html
Thanks - that is exactly what I was looking for!

Now with a Jena implementation in place, what is the likelihood that 
this extended CONSTRUCT syntax will get incorporated into the SPARQL 
Standard?

Tara
>
>     Andy
>
>>
>> Tara
>>
>
>
>

Received on Sunday, 29 November 2015 12:50:03 UTC