[xsl] Evaluation of predicates (potential bug in MSXML .NET)

Subject: [xsl] Evaluation of predicates (potential bug in MSXML .NET)
From: "Buchcik, Kasimier" <k.buchcik@xxxxxxxxxxxx>
Date: Mon, 22 May 2006 13:37:52 +0200
Hi,

JFYI: In the following scenario, the result of MSXML .NET
differs from the results of Saxon, Xalan and Libxslt/Libxml2.

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

  <xsl:template match="/">
	  <xsl:value-of select="count(//foo[name() = 'foo'][1])"/>
  </xsl:template>

</xsl:stylesheet>

<?xml version="1.0"?>
<foo>
  <foo>
    <foo/>
    <foo/>
    <foo/>
  </foo>
</foo>

Result of MSXML .NET:
<?xml version='1.0' encoding='utf-8' ?>
1

All the other processors return "3".

However, MSXML .NET returns "3", if we change the expression to
"count(//foo[1][1])".

Regards,

Kasimier

Current Thread