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 ) 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.
 Prefix mappings would probably be nice for serializers that consume this iterator.