1

我想使用身份转换转换一个 XML 文件,以及一堆其他模板来调整东西。但我只想将所有这些应用到特定的子树,而忽略 XML 文档的其余部分。我应该使用特定的模式来执行此操作吗?我的第一个猜测是使用模式,但如果可以的话,我宁愿避免这种情况。

4

1 回答 1

1

因此,如果我理解正确,您想在输入的子树上执行 XSLT(基于身份转换)并从结果中省略该子树之外的所有内容?如果是这样,你可以这样做:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="xml" indent="yes"/>

  <xsl:template match="@* | node()">
    <xsl:copy>
      <xsl:apply-templates select="@* | node()"/>
    </xsl:copy>
  </xsl:template>

  <xsl:template match="/">
    <xsl:apply-templates select="/path/to/subtree" />
  </xsl:template>

  <!-- Other templates -->
</xsl:stylesheet>
于 2013-04-16T20:03:22.760 回答