在XSL中得到任意节点在DOM树中的深度

在XSL中得到任意节点在DOM树中的深度

孟子E章

要在XSL中得到任意节点的在XML DOM树中的深度,可以通过计算节点的祖先(ancestors)的数量得到。下面就是具体实现的例子。

TestNodeDeep.xml

<xmp> <root> <level-1> <level-1-1> <level-1-1-1> </level-1-1-1></level-1-1> <level-1-2> </level-1-2></level-1> <level-2> <level-2-1> </level-2-1> <level-2-2> <level-2-2-1> </level-2-2-1></level-2-2> </level-2> </root> </xmp>

TestNodeDeep.xsl

<xmp> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <xsl:for-each select="//*"> <xsl:value-of select="local-name()"> = </xsl:value-of><xsl:value-of select="count(ancestor::*)">
</xsl:value-of></xsl:for-each> </xsl:template> </xsl:stylesheet> </xmp>

你可能感兴趣的:(xml,XSL)