Project

Profile

Help

Bug #1860

closed

Temporary output state

Added by Michael Kay over 10 years ago. Updated over 10 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
XSLT conformance
Sprint/Milestone:
-
Start date:
2013-08-09
Due date:
% Done:

0%

Estimated time:
Legacy ID:
Applies to branch:
Fix Committed on Branch:
Fixed in Maintenance Release:
Platforms:

Description

The rule in the spec is:

The instructions in the initial template are evaluated in final output state. An instruction is evaluated in the same output state as its calling instruction, except that xsl:variable,xsl:param, xsl:with-param, xsl:attribute, xsl:comment, xsl:processing-instruction, xsl:namespace, xsl:value-of, xsl:function, xsl:key, xsl:sort, and xsl:message always evaluate the instructions in their contained sequence constructor in temporary output state.

and in looking at the code in this area I notice that Saxon doesn't seem to be setting temporary output state in all these circumstances.

Note also that the diagnostics when this rule is violated are poor; they talk of executing xsl:result-document while writing a temporary tree.

Note also that in many cases (not all) the error is detectable statically, and could result in a static warning.

Please register to edit this issue

Also available in: Atom PDF