`

xsl:template内容

    博客分类:
  • XML
xsl 
阅读更多
<xsl:template> 元素

<xsl:template> 元素定义了用于匹配节点的规则(match,其中"/"匹配整个文档),在apply-template使用

语法规则为:

<xsl:template
name="name"
match="pattern"
mode="mode"
priority="number">
<!-- Content:(<xsl:param>*,template) -->
</xsl:template>

  其中:
  name 模板名称
  match Xpath语句,指定条件
  mode模式,例如红,蓝等样式
  priority 指定模板的优先级,为数字。

如果每个模板都赋予了优先级,则处理器可以使用这个值来确定哪个模板具有最高优先级。如果没有显式指定优先级,则处理器会为模板计算一个默认值。由处理器指定的默认优先级范围是从 -0.5 到 +0.5。基本上,模式越特殊,其默认优先级就越高。由于范围是从 -0.5 到 +0.5,因此如果显式指定一个模板的优先级为 1,就总会超过默认优先级。

当一个节点匹配在 XSLT 模板中建立的多个模式(也称为规则)时,处理器就会按照 XSLT 规范中描述的冲突解决指导原则来确定使用哪一个模式。这些指导原则表明,当发生冲突时,会调用优先级最高的模板。然而,确定模板实际优先级的算法还需要附带解释一下。

要确定哪个模板具有最高优先级,处理器首先会消除导入的所有模板(使用 xsl:import 元素);自动导入的模板比经过导入转换的模板优先级低。然后处理器确定其余模板的优先级值。

当出现冲突时,XSLT 需要经过大量处理才能确定调用哪个模板。

<xsl:apply-templates>元素

<xsl:apply-templates>元素用于告诉处理器处理当前节点的所有子节点。在匹配的节点模板中还可以再包含<xsl:apply-templates>元素,从而通知处理器处理该节点的所有子节点,这样依次调用,就可以完成对文档树中所有节点处理。


note:
<xsl:template match="node()|@*">
      <xsl:copy>
         <xsl:apply-templates select="node()|@*"/>
      </xsl:copy>
    </xsl:template>表示处理所有结点

<xsl:template match="你定义的"/>表示过滤,不做任何处理
分享到:
评论

相关推荐

    Xsl参考(pdf)

    每个 `&lt;xsl:template&gt;` 都有一个 `match` 属性,用于指定模板应应用于哪种节点。 **语法:** ```xml &lt;xsl:template match="pattern" mode="name"&gt; template content &lt;/xsl:template&gt; ``` `pattern` 指定模板应匹配...

    Xslt语法参考手册.pdf

    &lt;xsl:template match="message"&gt; &lt;xsl:apply-imports/&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt; ``` 2. **`&lt;xsl:apply-templates&gt;` 元素** - **定义与用法**:此元素用于选择并应用一组匹配的模板到当前节点...

    xslt元素使用说明

    - `&lt;xsl:choose&gt;` 元素用于基于条件执行不同的模板或内容。 - **语法**: - `&lt;xsl:choose&gt; &lt;xsl:when test="..."&gt; &lt;xsl:otherwise&gt;...&lt;/xsl:otherwise&gt; &lt;/xsl:choose&gt;` - **属性**:无 - **示例**: - 根据...

    xml常用命令

    比较有用的关于xml的命令, xsl:import元素 xsl:import元素用于导入外部的样式单,也是一个顶级元素。...&lt;xsl:template match=”node”&gt; &lt;xsl:apply-impotres/&gt; &lt;/xsl:template&gt; ……… &lt;/xsl:stylesheet&gt;

    用 xsl essage 调试样式表

    &lt;xsl:template match="/"&gt; &lt;xsl:message&gt;Matched root node&lt;/xsl:message&gt; &lt;xsl:apply-templates select="*"/&gt; &lt;/xsl:template&gt; &lt;xsl:template match="html" xmlns:html="http://www.w3.org/1999/xhtml"&gt; &lt;xsl:...

    XSLT元素使用说明

    &lt;xsl:template match="message"&gt; &lt;xsl:apply-imports/&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt; ``` ### &lt;xsl:apply-templates&gt; 元素 #### 定义与用法 `&lt;xsl:apply-templates&gt;`元素用于在当前上下文中选择并...

    xsl使用示例代码

    &lt;xsl:template match="paragraph"&gt; &lt;xsl:apply-templates/&gt; &lt;/xsl:template&gt; ``` 这里的`match="paragraph"`表示当遇到XML中的`&lt;paragraph&gt;`元素时,使用该模板进行处理。`&lt;xsl:apply-templates/&gt;`则会递归...

    xml+xsl中分割字符

    &lt;xsl:template match="/data_info"&gt; &lt;xsl:element name="{name()}"&gt; &lt;xsl:call-template name="splitStr"&gt; &lt;xsl:with-param name="str" select="@CC_ID"/&gt; &lt;xsl:with-param name="ctrlname" select="'CC_ID'"/&gt;...

    xml基础电子稿 第五张的知识体系和结构

    模板使用`&lt;xsl:template&gt;`标记,包含一个`match`属性,该属性定义了模板所匹配的XML元素模式。样式表的根元素必须是`&lt;xsl:stylesheet&gt;`,并可能包含名称空间声明,例如: ```xml &lt;xsl:stylesheet xmlns:xsl=...

    xslt介绍

    &lt;xsl:template name="PNHeader"&gt;...&lt;/xsl:template&gt; &lt;xsl:call-template name="PNHeader"/&gt; ``` - `match`示例: ```xml &lt;xsl:template match="/ME/DATA"&gt;...&lt;/xsl:template&gt; &lt;xsl:apply-template select="/...

    XSLT 元素使用说明

    ### XSLT 元素使用说明 ...接下来的章节将详细介绍更多XSLT元素,包括但不限于`&lt;xsl:attribute&gt;`、`&lt;xsl:template&gt;`等。这些元素共同构成了XSLT语言的核心,使得开发者能够在处理XML数据时具有更大的灵活性和效率。

    XSLT参考手册(根据w3schools的XSLT教程翻译改编而成)

    &lt;xsl:template match="message"&gt; &lt;xsl:apply-templates/&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt; ``` 然后,在另一个需要使用该模板的样式表中,可以通过以下方式引入并使用: ```xml &lt;xsl:stylesheet ...

    xsl学习笔记,入门知识

    这个例子中的`match="name"`表示模板匹配XML中的`&lt;name&gt;`元素,`&lt;xsl:value-of select="."/&gt;`则用于输出匹配元素的文本内容。 接下来是XPath,它是XSLT中的导航工具,用于在XML文档中查找节点。XPath表达式可以返回...

    eclipse-testng 离线包下载

    &lt;xsl:template name="writeCssFile"&gt; &lt;xsl:result- document href="{testng:absolutePath('style.css')}" format="text"&gt; &lt;xsl:choose&gt; &lt;xsl:when test="testng:isFilterSelected('CONF') = 'true'"&gt; ....

    XSL学习 XSL学习.pdf

    XSL 文档的核心是模板(Template),模板定义了如何处理 XML 文档中的各个节点。一个基本的模板示例如下: ```xml &lt;xsl:template match="/"&gt; &lt;!-- 模板内容 --&gt; &lt;/xsl:template&gt; ``` - **Match 属性**:指定了该...

    XSL中进行字符串替换

    &lt;xsl:template name="StringReplace"&gt; &lt;xsl:param name="SrcString"/&gt; &lt;xsl:param name="FromString"/&gt; &lt;xsl:param name="ToString"/&gt; &lt;xsl:choose&gt; &lt;xsl:when test="contains($SrcString, $FromString)"&gt; ...

    XSLT 简单语法说明

    - **`&lt;xsl:template&gt;`**:模板元素是XSLT中最基本的构建块。它用于匹配输入文档中的特定模式,并指定如何转换这些模式。 - `match`属性定义了模板所匹配的节点类型或模式。 - 示例: ```xml &lt;xsl:template match...

    个人简历xml+xsl.zip

    针对于xml个人简历,附有xsl文档代码: &lt;xsl:stylesheet version="1.0" xmlns:xsl=...&lt;xsl:template match="/"&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;&lt;xsl:value-of select="简历/个人简历/基本信息/姓名"/&gt;XX的个人简历&lt;/title&gt;

    XML应用开发(软件品牌)-1期 5.2课堂实践 -使用XSL输出指令转换XML.doc

    &lt;xsl:template match="学号 | 姓名 | 性别 | 班级 | 出生年月"&gt; &lt;xsl:copy&gt; &lt;xsl:apply-templates select="@*|node()"/&gt; &lt;/xsl:copy&gt; &lt;/xsl:template&gt; ``` 4. 结束XSLT文件: ```xml &lt;/xsl:stylesheet&gt; ``...

    一个利用xml和xsl解释生成无限级的树形菜单的源程序

    在上述代码中,`&lt;xsl:template&gt;`定义了处理XML元素的规则,`&lt;xsl:apply-templates&gt;`则递归地处理子元素,从而实现无限级别的树形展开。 当浏览器加载XML文档和相应的XSLT样式表时,它会执行转换并将结果呈现为HTML...

Global site tag (gtag.js) - Google Analytics