【发布时间】:2013-11-08 14:00:39
【问题描述】:
我正在尝试了解身份模板的功能。
<xsl:template match='@* | node()'>
<xsl:apply-templates select='@* | node()'/>
</xsl:template>
如果上面的模板出现在我们的 XSL 文档的开头,我们称之为身份模板,它的功能是调用所有模板,即通过匹配 @* 和匹配中的 node() 下的所有内容。然后它转到第二行 apply-templates,它递归地选择所有模板/节点。如果我在这里错了,请纠正我。
我的问题是,如果我们把这个模板放在 XSLT 的中间,而不是在开始,我们不想要所有匹配的动作,而只想要存储在变量中的某个消息,比如
<xsl:template match='$variable holding entire soap envelope'>
<xsl:apply-templates select='@* | node()'/>
</xsl:template>
我们是否仍将其称为身份模板,并且在第一次操作时它仍会像身份模板一样处理吗?
对不起,如果我的问题不清楚。
感谢您的帮助。
【问题讨论】: