Xml 查找到祖先节点的相对位置的xsl
获取childsXml 查找到祖先节点的相对位置的xsl,xml,xslt,position,relative-path,ancestor,Xml,Xslt,Position,Relative Path,Ancestor,获取childsdivision相对于节节点的位置时遇到一些问题。这是我的XML文件: <document> <section> <division>text of division</division> <division>text of division</division> <division>text of division</division
division
相对于节
节点的位置时遇到一些问题。这是我的XML文件:
<document>
<section>
<division>text of division</division>
<division>text of division</division>
<division>text of division</division>
</section>
<section>
<division>text of division</division>
<division>text of division</division>
<division>text of division</division>
</section>
</document>
而不是这个:
section 1
division 1.2
division 1.4
division 1.6
section 2
division 2.2
division 2.4
division 2.6
它看起来像是。/section[position()]
或。/祖先/position()
但它错了……谢谢 请尝试使用xsl:number
代替position()
例如:
XML输入
<document>
<section>
<division>text of division</division>
<division>text of division</division>
<division>text of division</division>
</section>
<section>
<division>text of division</division>
<division>text of division</division>
<division>text of division</division>
</section>
</document>
section 1
division 1.1
division 1.2
division 1.3
section 2
division 2.1
division 2.2
division 2.3
<div class="section">
<p>section 1</p>
<div class="division">
<p>division 1.1</p>
</div>
<div class="division">
<p>division 1.2</p>
</div>
<div class="division">
<p>division 1.3</p>
</div>
</div>
<div class="section">
<p>section 2</p>
<div class="division">
<p>division 2.1</p>
</div>
<div class="division">
<p>division 2.2</p>
</div>
<div class="division">
<p>division 2.3</p>
</div>
</div>
编辑:下面是另一个更接近您在XSLT中所做工作的示例。(我添加了
元素来包装文本
XSLT1.0
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:strip-space elements="*"/>
<xsl:template match="text()"/>
<xsl:template match="section|division">
<xsl:value-of select="concat(name(),' ')"/>
<xsl:number level="multiple" count="section|division"/>
<xsl:text>
</xsl:text>
<xsl:apply-templates/>
</xsl:template>
</xsl:stylesheet>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="text()"/>
<xsl:template match="section|division">
<div class="{name()}">
<p>
<xsl:value-of select="concat(name(),' ')"/>
<xsl:number level="multiple" count="section|division"/>
</p>
<xsl:apply-templates/>
</div>
</xsl:template>
</xsl:stylesheet>
输出
<document>
<section>
<division>text of division</division>
<division>text of division</division>
<division>text of division</division>
</section>
<section>
<division>text of division</division>
<division>text of division</division>
<division>text of division</division>
</section>
</document>
section 1
division 1.1
division 1.2
division 1.3
section 2
division 2.1
division 2.2
division 2.3
<div class="section">
<p>section 1</p>
<div class="division">
<p>division 1.1</p>
</div>
<div class="division">
<p>division 1.2</p>
</div>
<div class="division">
<p>division 1.3</p>
</div>
</div>
<div class="section">
<p>section 2</p>
<div class="division">
<p>division 2.1</p>
</div>
<div class="division">
<p>division 2.2</p>
</div>
<div class="division">
<p>division 2.3</p>
</div>
</div>
第一节
第1.1分部
第1.2分部
第1.3分部
第二节
第2.1分部
第2.2分部
第2.3分部
噢,非常感谢,它起作用了!这是另一个与此相关的问题。如果我在xml节点中有许多,类似这样的内容:文本文本文本文本文本文本文本文本文本文本文本
如何对文档中而非部门中的所有进行编号?很抱歉,已找到
。再次感谢!