XSL学习笔记6 XSLT内置模板规则
定义正确的模板规则来匹配XML树中的节点是XSLT应用的关键。为了让源文档树的节点在没有明确匹配规则的情况下,能够被递归处理,XSLT定义了几个内置的模板规则,可以将其看作是XSL式样表文档的默认模板规则。
内置模板规则就好像是在式样表之前被隐含地导入的一样,与所有其他的模板规则相比,内置模板规则具有较低的导入优先级。因此,可以通过在样式表文档中包含一个显式的模板规则来覆盖内置模板规则。
内置模板有如下几个:
1、应用所有的元素节点和根节点
<xsl:template match="*|/">
<xsl:apply-templates/>
<xsl:tempalte>
注意:如果不想应用内置的模板规则,只要显式的为某个元素定义模板规则即可,这样就覆盖了内置的模板规则。不过要注意的是,除非在匹配模板规则的模板中调用了<xsl:apply-templates/>,否则对于该元素的所有子元素,默认模板规则不再起作用。
2、应用所有的元素节点和根节点,针对的是具有mode属性的<xsl:apply-template/>元素
<xsl:template match="*|/" mode="m">
<xsl:apply-templates mode="m"/>
<xsl:tempalte>
当在式样表文档中,使用了具有mode属性的<xsl:apply-templates>元素,那么XSLT处理器就会自动加入这样一条模板规则:将<xsl:tempalte>元素的mode属性值设置为<xsl:apply-templates>元素的mode属性的值。
3、应用雨文本和属性节点,在结果树中输出文本和属性节点的值,如下所示:
<xsl:template match="text()|@*">
<xsl:apply-templates select = "."/>
<xsl:tempalte>
因为有了第一条和第三条内置模板规则,所以即使在样式表中没有编写任何的模板规则,仍然会有元素文本内容(作为文本节点)输出。不过要注意的是,如果没有对属性节点应用<xsl:apply-templates>元素,那么这条模板规则对属性是不会起作用的。
4、应用于处理指令和注释,如下所示:
<xsl:template mach="processing-instruction()|comment()"/>
这表规则对处理指令和注释节点没有做任何处理,意味着在结果树中不会输出源文档树中的处理指令和注释的任何信息。
另外,在XSLT中,应用于名称空间节点的内置模板规则也是什么都不做,也没有任何的模板可以匹配名称空间节点。
分享到:
相关推荐
### 学习笔记 学习XSL不仅需要理论知识,还需要实践。通过创建简单的转换开始,然后逐步尝试更复杂的功能,比如条件判断、循环和模板调用。编写并调试XSLT时,理解XPath的表达式是至关重要的。同时,了解如何使用...
XSLT模板的匹配规则和表达式都依赖于XPath。此外,XQuery和XPointer也是基于XPath表达式的,它们分别用于查询XML数据和引用XML文档的部分。 2. XPath节点类型 在XPath中,存在七种基本的节点类型: 1. 元素...
UI框架对canvas进行分层 1.base为基础层,放基础界面,主游戏菜单、操作杆、小地图等; 2.main为主业务层,放全部业务界面,背包、榜单等 3.toast层,放吐司 4.loading层,放loading界面 使用方式: 1.在场景中挂上UIManager脚本,并在游戏启动时进行初始化,传入资源加载器 2.显示界面直接UIManager.ShowPanel<T>(),不需要其他操作 3.隐藏界面UIManager.ClosePanel()
IMG_1399.PNG
【毕业设计】java-springboot-vue教师工作量管理系统实现源码(完整前后端+mysql+说明文档+LunW).zip
python教程学习
【深圳来觅数据信息科技-2025研报】减产提价!多重因素影响,国内存储芯片逐步崛起.pdf
python学习资源
本协力服装厂服装生产管理系统设计目标是实现协力服装厂服装生产的信息化管理,提高管理效率,使得协力服装厂服装生产管理作规范化、科学化、高效化。 本文重点阐述了协力服装厂服装生产管理系统的开发过程,以实际运用为开发背景,基于Springboot框架,运用了Java编程语言和MYSQL数据库进行开发,充分保证系统的安全性和稳定性。本系统界面良好,操作简单方便,通过系统概述、系统分析、系统设计、数据库设计、系统测试这几个部分,详细的说明了系统的开发过程,最后并对整个开发过程进行了总结,实现了服装生产相关信息管理的重要功能。 本协力服装厂服装生产管理系统运行效果稳定,操作方便、快捷,界面友好,是一个功能全面、实用性好、安全性高,并具有良好的可扩展性、可维护性的服装生产管理平台。 关键词:服装生产管理,Java编程语言,Springboot框架,MYSQL数据库
网络编程,资源和大家上学的时候的差不多,tcp
vmware虚拟机安装教程
【毕业设计】java-springboot-vue教师人事档案管理系统实现源码(完整前后端+mysql+说明文档+LunW).zip
【毕业设计-java】springboot-vue会员制医疗预约服务管理系统实现源码(完整前后端+mysql+说明文档+LunW).zip
比赛前开源题目
UniApp开发一个简单的记事本应用文字教程
内容概要:本文档详细介绍了C#编程语言的基础知识和高级特性的相关内容。首先阐述了C#语言的特点和应用场景,涵盖其简单、安全及面向对象三大优点。接着讲述了准备工作的关键步骤,重点提及了开发工具Visual Studio的安装以及推荐的经典书籍和学习资源。文档深入解析了C#基础语法的各个要素,包括数据类型、变量与常量、运算符、控制结构,并结合代码实例强化理解。面向对象编程部分,文档讲解了类与对象的概念,以及继承、多态和封装的原则,并附带具体示例说明,以便读者更容易理解面向对象的理念。此外,文档对比了.NET Framework和.NET Core两大框架的区别和优势,并介绍了一些常用的类库,使开发者在不同平台环境下都可以顺利开发高质量的软件。最后一章提供了一些建议和资源推荐,如参与开源项目、加入技术社区等,为学习者的成长之路指明方向。 适合人群:希望初次接触C#编程的人士、希望通过系统学习达到掌握C#的初级开发者,亦适用于有一定C#经验,想巩固和提升面向对象思想及相关技术的专业技术人员。 使用场景及目标:该文章可以帮助初学者建立完整的C#编程基础框架,快速上手机编程,并引导他们深入了解面向
仅供资料参考,YeeCOM移讯通DTU连接OneNet平台MQTT说明使用手册。
python学习一些项目和资源
python学习资源
【毕业设计-java】springboot-vue家具销售电商平台实现源码(完整前后端+mysql+说明文档+LunW).zip