[Bug 23179] [XSLT 3.0] Motionless expression to get the value of a text node

https://www.w3.org/Bugs/Public/show_bug.cgi?id=23179

--- Comment #1 from Michael Kay <mike@saxonica.com> ---
I think the refinement of the rules could take the form sketched out below:

* A construct that is analysed using the normal rules as consuming becomes
motionless if the inferred type of the context item is a node that cannot have
children, that is, a text, comment, processing-instruction, attribute, or
namespace node.

* The inferred type of the context item for a construct C is determined as
follows.

Certain constructs are context-changing; such constructs have a context-setting
subconstruct P which determines the context item used by other subconstructs.
Specifically:

- path expressions P/Q
- simple mapping expressions P!Q
- filter expressions and steps P[Q]
- xsl:for-each select="P" body <Q>
- xsl:template match="P" body <Q>
- ... 

For any construct C if there is an enclosing context-changing construct CCC
such that C is not in the context-setting part of CCC then let S be the
context-setting part of the innermost such enclosing construct; if S is one of
the following:

- a stepexpr using a kindtest selecting kind K as its nodetest
- a relativePathExpr with such a stepExpr as its last step
- a pattern in the form of such a StepExpr
- ...

then the context item type for C is K.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Friday, 6 September 2013 22:15:32 UTC