Re: [xsl] streaming through a table, but don't stream the row level

Subject: Re: [xsl] streaming through a table, but don't stream the row level
From: "Geert Bormans geert@xxxxxxxxxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 9 Jan 2017 14:47:09 -0000
Thanks Michael,
That did the trick.
My apologies for confirming so late.
I had some issues getting this to work with xsl:stream on Saxon EE 9.6
Moving to EE 9.7 and using xsl:source-document with your suggestion works like a charm
Thanks a lot
Geert




At 18:48 7/01/2017, Michael Kay mike@xxxxxxxxxxxx wrote:
XSLT 3.0 allows you to do

<xsl:source-document href="input.xml" streamable="yes">
  <xsl:apply-templates select="/*/row/copy-of(.)"/>
</xsl:source-document>

or in earlier drafts

<xsl:stream href="input.xml">
  <xsl:apply-templates select="/*/row/copy-of(.)"/>
</xsl:stream>

which streams the file into a sequence of "row" elements, each of which can be internally processed in non-streaming mode using ordinary XSLT/XPath code, provided it only needs to look inside one row at a time.

Michael Kay
Saxonica

On 7 Jan 2017, at 17:08, Geert Bormans <mailto:geert@xxxxxxxxxxxxxxxxxxx>geert@xxxxxxxxxxxxxxxxxxx <<mailto:xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:

All,

I might be missing something

An XML serialisation of an excel sheet just exploded into 1.4 GByte
I have an XSLT that works on smaller subsets that I now want to apply on the big file
and if possible, I would prefer to not change all of my functions and templates (that work on the row level) in to streaming mode
Is there a way to process the table in streaming mode, but just process the rows without caring about streaming there?


Thanks

Geert


<http://www.mulberrytech.com/xsl/xsl-list>XSL-List info and archive <-list/293509.htm>EasyUnsubscribe (by email)

<http://www.mulberrytech.com/xsl/xsl-list>XSL-List info and archive
<-list/554170>EasyUnsubscribe (<>by email)

Current Thread