xml - 仅变换指定的元素,丢弃其余元素

标签 xml xslt copy identity

我正在尝试开发一个 XSLT 样式表,它将通过保持 View 将一个 xml 转换为另一个:

  1. 默认情况下,样式表不应为每个元素显示任何内容(甚至文本也不应显示)。
  2. 如果某个元素有明确的模板匹配,则复制该元素、它的属性及其所有子元素(及其属性)。

换句话说,恒等式仅转换明确指定的元素。

最佳答案

好吧,对于大多数人来说什么都不做,肯定是这样的:

<xsl:template match="/*">
  <xsl:copy>
    <xsl:apply-templates select="*"/>
  </xsl:copy>
</xsl:template>
<xsl:template match="*">
    <xsl:apply-templates select="*"/>
</xsl:template>

然后为您想要的添加匹配项:

<xsl:template match="Foo | Bar">
    <xsl:copy-of select="."/>
</xsl:template>

但是,这似乎是一个非常不寻常的要求。通常,您只需使用通过 xml 知识导航到已知内容的匹配项。

关于xml - 仅变换指定的元素,丢弃其余元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/815587/

相关文章:

xml - 在互联网离线模式下找不到元素 'beans' 的声明

java - 直接使用java修改XML文件

XSLT 在与根元素具有相同命名空间声明的内部标记中缺少命名空间

XSLT:条件属性值处理

azure - 如何将文件夹从测试应用服务复制到 Azure 上的实时应用服务

java - 在 libgdx 中复制纹理

c# - 需要比 XML 更简单的数据源

asp.net - 无法选择网页中的文本

java - Spring xslt 处理适用于字符串,但不适用于 dom

linux - 使用linux命令行将文件从多个目录复制到另一个目录