XSLT 元素参考手册


XSLT 元素参考手册

本文档将详细介绍XSLT中的各种元素,供您参考。

xsl:template

xsl:template 元素定义模板匹配模式,每个模板可匹配某个节点,并为该节点应用相应的模板规则。

语法:

<xsl:template match="pattern" [name="TemplateName"] [priority="number"] [mode="TemplateName"]>
    <!-- 子元素 -->
</xsl:template>

属性:

  • match:指定要匹配的模式。可以用XPath表示式。
  • name:定义模板的名称。
  • priority:指定模板的优先级。值越高,优先级越高。
  • mode: 模板的工作模式。

xsl:value-of

xsl:value-of 元素将XPath表达式的结果输出到指定位置。

语法:

<xsl:value-of select="expression" [disable-output-escaping="yes" | "no"] />

属性:

  • select:XPath表达式
  • disable-output-escaping:是否更改输出内容的转义字符,可选值包括 “yes”、“no”。

xsl:for-each

xsl:for-each 元素对某个节点集合进行遍历,生成序列。

语法:

<xsl:for-each select="expression">
    <!-- 子元素 -->
</xsl:for-each>

属性:

  • select:XPath表达式。

xsl:if

xsl:if 元素当条件为真时输出特定的节点或文本。

语法:

<xsl:if test="expression">
    <!-- 子元素 -->
</xsl:if>

属性:

  • test:XPath表达式。

xsl:choose/xsl:when/xsl:otherwise

xsl:choose 元素用于指定一个多重分支结构。

语法:

<xsl:choose>
    <xsl:when test="test1">
        <!-- 子元素1 -->
    </xsl:when>
    <xsl:when test="test2">
        <!-- 子元素2 -->
    </xsl:when>
    <xsl:otherwise>
        <!-- 子元素3 -->
    </xsl:otherwise>
</xsl:choose>

属性:

  • test:XPath表达式。

xsl:call-template

xsl:call-template 元素用于调用一个已经定义好的模板。

语法:

<xsl:call-template name="name-of-template">
    <!-- 参数列表(可选) -->
</xsl:call-template>

属性:

  • name:定义好的模板名称。

xsl:apply-templates

xsl:apply-templates 元素用于将模板匹配节点应用到当前节点或者某个指定节点的子树。

语法:

<xsl:apply-templates select="expression" [mode="TemplateName"] />

属性:

  • select:XPath表达式。
  • mode:工作模式。

xsl:sort

xsl:sort 元素用于指定按照什么顺序对节点进行排序。(xsl:apply-templates中使用)

语法:

<xsl:sort select="expression" order="ascending|descending" />

属性:

  • select:XPath表达式。
  • order:指定排序的方式,包括“ascending(升序)”和“descending(降序)”。

xsl:attribute

xsl:attribute 元素用于添加一个属性到标记的元素。

语法:

<xsl:attribute name="AttributeName">
    <!-- 子元素 -->
</xsl:attribute>

属性:

  • name:属性名称。

xsl:comment

xsl:comment 元素用于添加注释。

语法:

<xsl:comment>
    <!-- 子元素 -->
</xsl:comment>

xsl:processing-instruction

xsl:processing-instruction 元素用于定义一个处理指令。

语法:

<xsl:processing-instruction name="PIName">
    <!-- 子元素 -->
</xsl:processing-instruction>

属性:

  • name:处理指令名称。

xsl:text

xsl:text 元素用于在输出中添加文本。

语法:

<xsl:text>文本</xsl:text>

属性:无

xsl:element

xsl:element 元素用于添加一个元素到输出文档。

语法:

<xsl:element name="ElementName" [namespace="NamespaceURI"] [use-attribute-sets="AttributeSetName"]>
    <!-- 子元素 -->
</xsl:element>

属性:

  • name:元素名称。
  • namespace:定义元素的名称空间的URI字符串。
  • use-attribute-sets:引用已定义好的命名属性组。

以上是XSLT的常见元素,您可以根据不同的场景和需求选用适当的元素,在开发和维护过程中为您提供便捷操作和高效率处理数据的方法。