xsl sorting
Processor-version.xsl,v 1.3 2000-05-01 18:52:42-04
Vendor: Microsoft
Processor version: Original IE5 (or old version of other processor)
following is my output for below xml and xsl code. In the following output, NaN is coming. i don't know why.
Thanks in advance. i appreciate your great help.
$0 - $49,999.00 4.000
$49,999.00 - $99,999.00 3.000
$99,999.00 - $249,999.00 2.250
$249,999.00 - $499,999.00 1.250
$499,999.00 - $999,999.00 0.800
NaN - $2,000,000.00 0.800
$2,000,000.00 - $3,000,000.00 0.640
$3,000,000.00 - $50,000,000.00 0.400
$50,000,000.00 - $100,000,000.00 0.200
$100,000,000.00+ 0.120
XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<DATAEXPRESS>
<DealerCommissions>
<DealerCommission Seq="5">
<Investment DocID="764548" StartOffset="90690">2000000</Investment>
<Percentage DocID="764548" StartOffset="90643">0.80</Percentage>
</DealerCommission>
<DealerCommission Seq="6">
<Investment DocID="764548" StartOffset="90717">3000000</Investment>
<Percentage DocID="764548" StartOffset="90701">0.64</Percentage>
</DealerCommission>
<DealerCommission Seq="7">
<Investment DocID="764548" StartOffset="90744">50000000</Investment>
<Percentage DocID="764548" StartOffset="90728">0.40</Percentage>
</DealerCommission>
<DealerCommission Seq="8">
<Investment DocID="764548" StartOffset="90773">100000000</Investment>
<Percentage DocID="764548" StartOffset="90756">0.20</Percentage>
</DealerCommission>
<DealerCommission Seq="9">
<Investment DocID="764548" StartOffset="90795">999999999</Investment>
<Percentage DocID="764548" StartOffset="90789">0.12</Percentage>
</DealerCommission>
<DealerCommission Seq="0">
<Investment DocID="766378" StartOffset="242761">49999</Investment>
<Percentage DocID="766378" StartOffset="243057">4.00</Percentage>
</DealerCommission>
<DealerCommission Seq="1">
<Investment DocID="766378" StartOffset="243157">99999</Investment>
<Percentage DocID="766378" StartOffset="243400">3.00</Percentage>
</DealerCommission>
<DealerCommission Seq="2">
<Investment DocID="766378" StartOffset="243519">249999</Investment>
<Percentage DocID="766378" StartOffset="243816">2.25</Percentage>
</DealerCommission>
<DealerCommission Seq="3">
<Investment DocID="766378" StartOffset="243917">499999</Investment>
<Percentage DocID="766378" StartOffset="244160">1.25</Percentage>
</DealerCommission>
<DealerCommission Seq="4">
<Investment DocID="766378" StartOffset="244279">999999</Investment>
<Percentage DocID="766378" StartOffset="244578">0.80</Percentage>
</DealerCommission>
</DealerCommissions>
</DATAEXPRESS>
XSL:
<xsl:for-each select="DATAEXPRESS/DealerCommissions/DealerCommission">
<xsl:sort select="@Seq" data-type="number"/>
<xsl:if test="Investment!=999999999 or (position()>1 and preceding-sibling::node()[position()=1]/Investment/@StartOffset!=Investment/@StartOffset) or (@Seq=0 and Percentage>0) or (@Seq=0 and Percentage=0)">
<tr>
<td>
<xsl:choose>
<xsl:when test="position()>1">
<xsl:value-of select="format-number(preceding-sibling::node()[position()=1]/Investment,'$#,##0.00')"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$0"/>
</xsl:otherwise>
</xsl:choose>
<xsl:choose>
<xsl:when test="Investment=999999999">+
</xsl:when>
<xsl:otherwise> -
<xsl:value-of select="format-number(Investment,'$#,##0.00')"/>
</xsl:otherwise>
</xsl:choose>
</td>
<td>#160;#160;#160;#160;</td>
<td>
<xsl:value-of select="format-number(Percentage,'0.000')/>
</td>
</tr>
</xsl:if>
</xsl:for-each>
__________________
Rams
|