xslt - xslt 模板可以同时携带 name 和 match 属性吗?

标签 xslt

以下 (a) 是否允许 (b) 有用

<xsl:template match="foo" name="bar"> 
</xsl:template>

(这意味着模板可以通过递归模板处理或直接从 <xsl:call-template name="bar"/> 触发。

最佳答案

简单地说,是的。我经常命名身份模板并使用 <xsl:call-template name="identity" /> 直接调用它。 .

它是一种继承形式的有用工具;您可以定义一个模板来匹配一个节点,另一个处理该节点的派生,执行特定操作,然后调用更通用的模板。

例如:

<xsl:template match="animal" name="animal">
  <!-- handle any animal related stuff here -->
</xsl:template>

<xsl:template match="dog">
  <xsl:call-template name="animal" />
  <!-- handle any dog specific stuff here -->
</xsl:template>

关于xslt - xslt 模板可以同时携带 name 和 match 属性吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6478163/

相关文章:

xml - 如何使用xslt比较和合并两个xml

xslt - 如何在 XPath 中查找所有空子树

xslt - 将 XSL 模板应用于两个不同源文件之一时,如何在另一个源文件中引用 "matching"节点?

xml - xslt 2.0 运行时与编译时的可能性

xml - 在 XSLT 中,如何找到 XML 元素属性的 namespace ?

xml - 为什么这个 XML 文件不显示任何内容?

xml - 如何使用 XSL 从 XML 中删除属性并删除根元素

xml - 如何使用 xslt 或 xpath 将注释添加到 xml 文件

xml - XSLT 附录命名空间 CFDI

xslt 与 Saxon 合并函数