The text is correct, but the typography could be improved.
The cited text is (intended to be) within the scope of the clause "Otherwise
(the pattern is a selection pattern)...". Selection patterns only match nodes,
so if the condition "N is a node" is false, the pattern does not match.
Michael Kay
Saxonica
mike@xxxxxxxxxxxx
+44 (0) 118 946 5893
On 3 Dec 2014, at 19:56, Dimitre Novatchev dnovatchev@xxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> In the 2nd Last Call of the XSLT 3.0 specification, section 5.6.3
> "The Meaning of a Pattern":
>
> http://www.w3.org/TR/2014/WD-xslt-30-20141002/#pattern-semantics
>
> contains this text:
>
>
> "The meaning of the pattern is then defined in terms of the semantics
> of the equivalent expression, denoted below as EE.
>
> Specifically, an item N matches a pattern P if the following applies,
> where EE is the equivalent expression to P:
>
> 1. N is a node, and the result of evaluating the expression
> root(.)//(EE) with a singleton focus based on N is a sequence that
> includes the node N
>
> If a pattern appears in an attribute of an element that is processed
> with XSLT 1.0 behavior (see 3.10 Backwards Compatible Processing),
> then the semantics of the pattern are defined on the basis that the
> equivalent XPath expression is evaluated with XPath 1.0 compatibility
> mode set to true."
>
> Then there follows an example, a paragraph with explanations, and a
> note. This ends the section.
>
> It seems that an intended second case (2) for the case when N is not a
> node, is omitted.
>
> I would appreciate this to be confirmed or if this isn't so, to have
> an explanation why a list of one case was included and where in the
> spec to find the explanation of the meaning of the second, omitted
> case.
>
> --
> Cheers,
> Dimitre Novatchev
|