Ouch. Yes, that would be a bug.

The way patterns are handled has changed in 9.4: we now use the XPath parser to parse the pattern as if it were an expression, and then convert the expression tree to a pattern. I can see that there is the possibility of some simplification of the tree happening before the conversion. (In fact, some aspects of the pattern syntax are very hard to enforce with this approach, for example restrictions on the use of parentheses, or the use of "union" as a synonym for "|". We handle this by setting switches in the expression parser.)

Michael Kay

On 25/05/2012 09:50, Hans-Juergen Rennau wrote:
Hello Michael,

a small observation: it seems to me that in XSLT the determination of the default priority of templates sometimes occurs after rewrites, which is probably not quite correct. A silly example:
<xsl:template match="*"/>
<xsl:template match="*[true()]"/>

produces ambiguity messages (XTRE0540).

Kind regards,

Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/

saxon-help mailing list archived at http://saxon.markmail.org/