You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by "Andy Seaborne (Commented) (JIRA)" <ji...@apache.org> on 2012/01/30 23:19:10 UTC

[jira] [Commented] (JENA-205) Streaming results for CONSTRUCT queries

    [ https://issues.apache.org/jira/browse/JENA-205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13196477#comment-13196477 ] 

Andy Seaborne commented on JENA-205:
------------------------------------

Personally, I'd go for Iterator<Triple>.  Statements are tied to model; instead, provide a stream of things that are not tied to models AKA triples (and quads if we extend CONSTRUCT to have GRAPH like SPARQL Updates).

I also thing that making it distinct should be left out or at most optional.  This is a low level interface. 

N-triples is easy to stream out, as is Turtle.  RDF/XML is hard enough to warrant not bothering with for now.  I think that Turtle will quickly displace RDF/XML.

For Fuseki, a trick would be to stream back triples with duplicates - it's still legal RDF in all serializations to have duplicates.  Then the server is not burdened.



                
> Streaming results for CONSTRUCT queries
> ---------------------------------------
>
>                 Key: JENA-205
>                 URL: https://issues.apache.org/jira/browse/JENA-205
>             Project: Jena
>          Issue Type: Improvement
>          Components: ARQ, Fuseki
>            Reporter: Stephen Allen
>            Assignee: Stephen Allen
>            Priority: Minor
>
> It would be useful to have CONSTRUCT queries that streamed results.  An additional method on QueryExecution that returned an Iterator<Statement> (or something similar to that [1]) would provide the necessary access.
> Implementationwise, the application of Bindings to the CONSTRUCT template is already streaming, we would simply need to perform a distinct operation on the Triples that are created.  We could use a DistinctDataNet to get semi-streaming with spill-to-disk functionality.
> Additionally, for this to be useful for Fuseki, we also need an RDF/XML serializer that can operate on an Iterator<Statement> instead of a Model.
> [1] Prefix mappings would probably be nice for serializers that consume this iterator.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira