Project

Profile

Help

Should the use of the two <xsl:mode streamable="yes"/> plus <xsl:mode on-no-match="shallow-copy"/> cause streamed processing?

Added by Martin Honnen about 3 years ago

I have run into an issue with both Saxon EE 10.6 Java and SaxonCS 11 EE.

My initial thinking was that I can have several xsl:mode declarations for a certain mode (like the unnamed) and all their settings are taken together to define the declaration of the mode.

So I have first <xsl:mode streamable="yes"/> and later on <xsl:on-no-match="shallow-copy"/> and expect a streamed identity processing.

Saxon, however, builds a tree and does an identity transformation.

The spec says:

  • For the unnamed mode, the effective value of each attribute is taken from an xsl:mode declaration that has no name attribute, and that specifies an explicit value for the required attribute. If there is no such declaration, the default value of the attribute is used. If there is more than one such declaration, the one with highest import precedence is used.

Shouldn't that imply, that the first <xsl:mode streamable="yes"/> which has an explicit value for streamable, defines that the processing should be streamable?


Replies (2)

RE: Should the use of the two <xsl:mode streamable="yes"/> plus <xsl:mode on-no-match="shallow-copy"/> cause streamed processing? - Added by Michael Kay about 3 years ago

Yes, this is supposed to work, and there is logic in the product to implement it, but I dare say there are probably not many tests. Please submit a bug report with a repro.

    (1-2/2)

    Please register to reply