我正在尝试开发一个 XSLT 样式表,它将通过保持视图将 xml 转换为另一个:
- 默认情况下,样式表不应该为每个元素显示任何内容(甚至不显示文本)。
- 如果某个元素存在显式模板匹配,则复制该元素、它的属性及其所有子元素(及其属性)。
换句话说,恒等式只转换明确指定的元素。
好吧,对大多数人什么都不做,肯定是这样的:
<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 知识导航到已知内容的匹配项。