Streamed processing of input documents
Many more constructs are now acceptable in streaming templates. For full details see Streaming Templates.
Explicit support for streaming is available for the functions data()
, avg()
, count()
,
distinct-values()
, empty()
, exists()
, min()
, max()
, string()
,
string-join()
, sum()
; for the operators "," and the (= | != | <= | < | >= | >)
family,
and for the instructions xsl:attribute
, xsl:apply-imports
, xsl:apply-templates
,
xsl:choose
, xsl:comment
, xsl:copy
, xsl:copy-of
, xsl:document
,
xsl:element
, xsl:for-each
, xsl:iterate
, xsl:result-document
. Implicit support
is available for all functions and operators that process singleton items, and for many functions and instructions that operate on sequences
- such as subsequence()
and xsl:for-each-group
- with the caveat that their input is buffered in memory.