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

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

孟子E章

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

TestNodeDeep.xml

<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="TestDeep.xsl"?><root> <level-1> <level-1-1> <level-1-1-1/> </level-1-1> <level-1-2/> </level-1> <level-2> <level-2-1> </level-2-1> <level-2-2> <level-2-2-1/> </level-2-2> </level-2></root>

TestNodeDeep.xsl

<?xml version="1.0" encoding="UTF-8"?><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 select="count(ancestor::*)"/> <br/> </xsl:for-each> </xsl:template></xsl:stylesheet>


你可能感兴趣的:(在XSL中得到任意节点在DOM树中的深度)