简单地说,我有xml包含120个节点。如何创建每个包含50个节点的3个xml文件?我已将输出标记为动态。然后我尝试应用auto-number
函数,但是当它触发时我无法获取它以及如何在其上创建条件。我需要的是像触发器那样会导致创建新文件。我的策略:
P.S。我是MapForce的诺布。
答案 0 :(得分:0)
假设您的输入是
<root>
<elt>...</elt>
...
</root>
然后简单地说,你可以做类似的事情:
<xsl:template match="/">
<xsl:document href="1-50.xml">
<root>
<xsl:for-each select="root/elt[pos() <= 50]">
<xsl:copy-of select="."/>
</xsl:for-each>
</root>
</xsl:document>
<xsl:document href="51-100.xml">
<root>
<xsl:for-each select="root/elt[pos() >= 51 and pos() <= 100]">
<xsl:copy-of select="."/>
</xsl:for-each>
</root>
</xsl:document>
<!-- repeat for other portions of input -->
</xsl:template>
在实践中,您希望在输入中处理任意数量的节点时更聪明一些。