<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="你定义的"/>表示过滤,不做任何处理
分享到:
相关推荐
比较有用的关于xml的命令, xsl:import元素 xsl:import元素用于导入外部的样式单,也是一个顶级元素。...<xsl:template match=”node”> <xsl:apply-impotres/> </xsl:template> ……… </xsl:stylesheet>
<xsl:template name="writeCssFile"> <xsl:result- document href="{testng:absolutePath('style.css')}" format="text"> <xsl:choose> <xsl:when test="testng:isFilterSelected('CONF') = 'true'"> ....
针对于xml个人简历,附有xsl文档代码: <xsl:stylesheet version="1.0" xmlns:xsl=...<xsl:template match="/"> <html> <head> <title><xsl:value-of select="简历/个人简历/基本信息/姓名"/>XX的个人简历</title>
动易标签说明 信息概览 调用范例 参数细目 查询语句 转换模板 附加信息 图片一列式栏目上下循环 ...</XSL:TEMPLATE> 47.</XSL:TRANSFORM> 附加说明: - 注意事项: - 使用说明: - 更新日志: - 相关链接: -
PH7Xsl是运行XSLT(可扩展样式表语言转换)PHP的简单但有效且功能强大的模板引擎。 使用XSLT语法,您的模板代码几乎可以移植到任何编程语言。 它还允许将PHP代码和模板代码分开,以拥有更专业,更干净的软件和模板!...
调用栈:apply-template/call-template/apply-imports 调用栈 内部调用:模板的内部调用列表,无论出于何种原因都无法在文档中显示。 例如,为外部元素或输出文本内容生成属性的模板。 仅当存在此类调用时,该列表才...
Laravel开发-xsl-laravel-template-engine Laravel的XSLT模板引擎。基于Krowinski/Laravel XSLT。
豆腐 在 这里 给大家 提供一个 很简单的 例子 关于XML 和 XSL 限于篇幅和知识水平 豆腐就不在这里 献丑了 下面首先来 说说 几个需要用到的文件的 内容 testXsl.xsl: <?xml version=’1.0′?> ...
安装方法:首先将本包内的JS文件解压到论坛根目录,然后按以下步骤安装 1、后台风格:Page_index,template.html(13),找到以下代码: <xsl:if test="$i = 9 and $endpage > 9">....<b><a href=...
gulp-xslt gulp的XSL转换插件 用法 example.xml ... template.xsl <? xml version = " 1.0 " encoding = " utf-8 " ?> < xsl : stylesheet version = " 1.0 " xmlns : xsl = " http://www.w3.
有xml文档,有一个xsl文件,应用template模板进行应用
c.comments.template cpp.comments.template cpp.preprocessor.template c.statements.template c.cpp.template cpp.cpp.template cpp.statements.template Templates c.idioms.template cpp.idioms.template c....
laravel-xslt 用于Laravel的XSLT模板引擎 安装方式 在您的laravel项目中使用composer安装 composer require krowinski/laravel-xslt ... Krowinski \ LaravelXSLT \ XSLTServiceProvider ::class,... xsl:stylesheet vers
使用ASP处理XSLT转换XML比较简单,思路如下:创建一个XSLTemplate的对象,再创建一个XMLDOM对 象,然后在家Xml文件和XSLT文件,最后使用方法transform即可,包含到类里面,具体代码如下: 以下是引用片段:...
内有文件: model-plain-1-mm-template.prt model-plain-1-mm-template.prt (nx6)c.lnk model-plain-1-mm-template.prt (nx6)d.lnk ...ug6.xsl ug文件关联.reg ug自定义的快捷键.txt 修复ug文件关联及缩略图.bat
:)项目结构.enb ENB configurationbuild BTJSON template and build css, js files outputclient blocksclient/core chitalka.js blocksclient/islets islets blockslib library files and xsl建造只需在命令行上...
这本质上是一个围绕自定义 pandoc 编写器和模板的 bash 包装器、一个简单的正则表达式(使用sed )和一个 XSL 脚本。 它将 Markdown 文件转换为符合 TEI Lite 标准的 XML 文件。 问题/拉取请求,欢迎。 要求 为了...
利用反射实现ASP.NET控件和数据实体之间的双向绑定,并且在客户端自动验证输入的内容是否合法 asp.net报表解决方法 SQLDMO类的使用 SQL过程自动C#封装,支持从表到基本存储过程生成 使用SQLDMO控制 SQL Server 使用SQL...