xsl-list
[Top] [All Lists]

sort + current() - bug in Microsoft MSXML 4?

2002-10-23 07:46:29
Hi all!

I have been struggling to use sort with current() under MSXML 4 (Product
Version: 4.10.9404.0).  Xalan 2.3.1, Saxon 6.5.2, jd.xslt 1.2.9, MSXML 3
(Product Version: 8.30.9926.0) all produce the result I expect.

I've included the details below.  Could somebody confirm the correct
behaviour?

Many thanks,
Adam



****** XML:

<list>
    <item>
        <name>name2</name>
        <order>2</order>
    </item>
    <item>
        <name>name3</name>
        <order>3</order>
    </item>
    <item>
        <name>name1</name>
        <order>1</order>
    </item>
</list>



****** XSL:

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

    <xsl:output method="xml" encoding="utf-8" indent="yes"/>

    <xsl:template match="/">
        <list>
            <xsl:for-each select="list/item/name">
                <xsl:sort select="/list/item[name=current()]/order"
                        order="descending" data-type="number"/>
                    <name>
                        <xsl:value-of select="."/>
                    </name>
            </xsl:for-each>
        </list>
    </xsl:template>

</xsl:stylesheet>


****** Expected output:

<list>
<name>name3</name>
<name>name2</name>
<name>name1</name>
</list>


****** MSXML 4 output:

<list>
<name>name2</name>
<name>name3</name>
<name>name1</name>
</list>




 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>