This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
In the test cases match-063 and match-064, both contain (the same) two templates with match patterns: <xsl:template match="foo except /*/*"> <xsl:template match="foo">... The tests are written on the assumption that the first pattern has a higher default priority than the second, presumably anticipating the 'catchall' of +0.5. However https://www.w3.org/TR/xslt-30/#default-priority states: "If the top-level pattern is an IntersectExceptExprP containing two or more PathExprP operands separated by intersect or except operators, then the priority of the pattern is that of the first PathExprP." so the first pattern should have the same priority as the second, and the 'select the last matching' behaviour will not produce the desired results.
Fixed by changing the order of the template rules.