On 27 March 2014 13:57, Christian Grün wrote:

  Hi,

> * HTTP Module (our favorite): add additional functions (e.g.
> http:get(), http:post(), etc.) with xs:base64 as return type.

  I am wondering...  The current API already supports xs:base64Binary,
in the case of a binary type (technically, for all non-text, non-HTML,
non-XML types).  Which will be the case for a ZIP file (as long as the
server returns a correct Content-Type, but you can always overrides it
anyway).

  Is there any intrinsic difference, from an implementation point of
view, in the context of streamability of the returned content, between
a function returning always an xs:base64Binary item, and another one
returning sometimes an xs:base64Binary item, sometimes a string, and
sometimes a document node?

  From what I understand of the implementation strategies, a kind of
naive implementation would be to create an alternative implementation
of xs:base64Binary, which does not contain the actual bits (e.g. as an
array in memory), but rather a handle to a binary stream (e.g. in Java
it would contain an InputStream, consumed only when needed).

  And whether a function will always return such a "binary item
delegating to a stream under the scene", or instead will sometimes
return such an item and sometimes strings or nodes, it does not seem
relevant in this approach, is it?

  Of course, BaseX might want to provide the user the ability to
enable such streaming or not, as it can be a restriction on how to use
the binary items (you can read them only once, or pass them only to
streaming-enabled functions).

  I am just trying to see if there is anything that intrinsically
prevents streaming in the HTTP Client, or if it is just that some
possible implementation strategies have not been investigated.

  I am pretty sure Adam implemented streaming for the HTTP Client in
eXist, so it might be interesting to have a look there as well.  That
is indeed a very interesting feedback, thank you!

  Regards,

-- 
Florent Georges
http://fgeorges.org/
http://h2oconsulting.be/
_______________________________________________
BaseX-Talk mailing list
BaseX-Talk@mailman.uni-konstanz.de
https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk

Reply via email to