Вот полный пример, как это сделать :
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:template match="/*">
<xsl:for-each select="*">
<xsl:value-of select="concat('
', position(), '. ', name())"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
когда это преобразование применяется к следующему документу XML:
<t>
<a/>
<b/>
<c/>
<d/>
<e/>
</t>
желаемый результат получен :
1. a
2. b
3. c
4. d
5. e
Измените свой код так:
<xsl:for-each select="Player">
<xsl:sort select="Points" order="descending" data-type="number"/>
<xsl:sort select="G" order="descending" data-type="number"/>
<xsl:sort select="A" order="descending" data-type="number"/>
<xsl:sort select="GP" order="ascending" data-type="number"/>
<tr bgcolor="#E2EFED" border="0">
<td align="center">
<xsl:value-of select="position()"/>
</td>
<td align="center">
<xsl:value-of select="Name"/>
</td>
<td align="center">
<xsl:value-of select="Team"/>
</td>
</tr>
</xsl:for-each>