0

我有一个这样的 XML 文件 -

<item>
    <item>
        <tag>value</tag>
        <tag2>value</tag2>
    </item>
</item>

我想提取内部标签,所以它看起来像这样 -

<item>
    <tag>value</tag>
    <tag2>value</tag2>
</item>

这可以通过 XSLT 实现吗?

如果有帮助,外部的<item>and</item>保证是 XML 文档的第一行和最后一行。

4

2 回答 2

2

如果您只想提取叶元素(那些没有自己的子元素),那么简单的事情就是

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:template match="/*">
    <xsl:copy>
      <xsl:copy-of select="descendant::*[not(*)]" />
    </xsl:copy>
  </xsl:template>
</xsl:stylesheet>

将完成这项工作。

于 2013-06-20T16:24:37.477 回答
1
<xsl:template match="/">
  <xsl:copy-of select="//item[not(item)]"/>
</xsl:template>

提取那些item不包含其他item元素的元素。

于 2013-06-20T16:27:33.573 回答