Sorry for sending so many posts on this subject..
I seem to have finally found the real bug..
Please consider this simple example..
XML file
--------
<?xml version="1.0"?>
<Parent>
<node>a</node>
<node>s</node>
<node>d</node>
<node>f</node>
<node>g</node>
<node>h</node>
<node>j</node>
<node>k</node>
<node>l</node>
</Parent>
XSL file
--------
<?xml version="1.0"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="text" />
<xsl:template match="/Parent">
<xsl:for-each select="node[1] | child::node">
<xsl:if test="position() != last()">
<xsl:text>,</xsl:text>
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
After applying the transformation, the outputs
received are :
1) With Xalan-J 2.6.0
,
2) With Saxon 8
,,,,,,,,
3) With MSXSL 4
, , , , , , , ,
It therefore seems to me, *that the test, position()
!= last() does'nt work correctly with Xalan-J 2.6,
when context is a union operator (|) *..
Regards,
Mukul
__________________________________
Do you Yahoo!?
Take Yahoo! Mail with you! Get it on your mobile phone.
http://mobile.yahoo.com/maildemo
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--