<xsl:apply-templates> 元素

指示 XSLT 处理器根据每个选定节点的类型和上下文找到适合应用的模板。

<xsl:apply-templates
  select = Expression
  mode = QName
</xsl:apply-templates>

特性

  • select
    可以用于处理通过表达式选择的节点,而不是处理所有子级。 select 属性的值是表达式,该表达式必须计算为节点集。 除非指定了不同的排序顺序,否则,选定的节点集按文档顺序进行处理。
  • mode
    mode 属性允许多次处理其限定名 指定的某个元素,每次产生不同的结果。 如果 <xsl:template> 没有 match 属性,它就不可能有 mode 属性。 如果 <xsl:apply-templates> 元素有 mode 属性,该元素只适用于来自 <xsl:template> 元素的模板规则,这后一种元素具有带相同值的 mode 属性。 如果 <xsl:apply-templates> 元素没有 mode 属性,该元素只适用于来自 <xsl:template> 元素的模板规则,这后一种元素没有 mode 属性。

元素信息

出现次数

无限制

父元素

xsl:attributexsl:commentxsl:copyxsl:elementxsl:fallbackxsl:for-eachxsl:ifxsl:messagexsl:otherwisexsl:paramxsl:processing-instructionxsl:templatexsl:variablexsl:whenxsl:with-param、输出元素

子元素

xsl:sortxsl:with-param

备注

<xsl:apply-templates> 元素首先使用在 select 属性中指定的表达式选择一组节点。 如果未指定此属性,将选择当前节点的所有子级。 对于每个选定的节点,<xsl:apply-templates> 指示 XSLT 处理器找到一个适当的 <xsl:template> 加以应用。 通过将节点与模板的 match 属性中指定的 XPath 表达式进行比较,测试模板是否适用。 如果多个模板满足匹配模式,将选择其中优先级最高的模板。 如果多个模板的优先级相同,将选择样式表中的最后一个模板。

以下主题提供 <xsl:apply-templates> 元素的示例。