我有以下 XSLT 片段:
<table border="1" id ="test">
<xsl:for-each select= "TestSuite/TestCase">
<tr>
<xsl:attribute name="id">
<xsl:value-of select="count(preceding-sibling::*)"/>
</xsl:attribute>
<b><xsl:value-of select="@name"/></b>
</tr>
<xsl:for-each select="Verification|Command">
<tr>
<xsl:attribute name="id">
<xsl:value-of select="count(preceding-sibling::*)"/>
</xsl:attribute>
<xsl:choose>
<xsl:when test="contains(name() , 'Verification')">
<td>Verification <xsl:value-of select="@type"/></td>
<td><xsl:value-of select="@status"/></td>
</xsl:when>
<xsl:when test="contains(name() , 'Command')">
<td>Command <xsl:value-of select="@type"/></td>
<td><xsl:value-of select="@status"/></td>
</xsl:when>
</xsl:choose>
</tr>
</xsl:for-each>
</xsl:for-each>
</table>
现在我只想给每个表行一个从 0、1 然后 2 等开始的 id。问题是每个内部循环都从 0 开始计算 id。我该如何解决这个问题?我的 HTML 页面只显示一个表,因此所有 tr 都应该是同级的。