<xsl:when test="(position()=last()-2='A')
I don't know what you intended this expression to mean, but what it
actually does is to test whether position() is equal to (last()-2),
which returns true or false; it then compares true or false to the
string "A", which is done by converting the string "A" to a boolean
(always true) and comparing the two booleans. This means the expression
is equivalent to
test="position() = last()-2"
Michael Kay
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list