上票县国土资源局电话:可扩展样式表语言转换XSLT技巧
来源:百度文库 编辑:中财网 时间:2024/04/25 22:41:44
可扩展样式表语言转换XSLT技巧:轻松控制HTML样式表
2003年04月01日15:50:26赛迪网 Nicholas Chase
同城约会
南昌/征友北京上海
广州深圳
成都杭州
重庆沈阳
武汉南京
全国城市上传我的照片
',1)">最近一小时热门文章
熊猫股价下跌 投资者不看好熊猫收购阿尔卡特
10日IT:微软放松硬件许可 韩国推行移动银行
直接有效成本低 互联网将成为消费维权新手段
幕后投资人首次对外开口:我们投资3721赚了5倍
手机彩屏无标准投诉难 专家呼吁出台划分标准
网易拍卖
有货要卖
频道精选
网易公司财报将实现净盈利2700万元
网易公司收入增长脚踏实地迈向盈利
网易公司第三季度财务表盈利2530万
网易公司可望率先摆脱"垃圾股"概念
可扩展样式表语言转换(Extensible Stylesheet Language Transformations,XSLT)提供了两种不同的方法来实现在转换单个源文档时组合几个样式表。在这一过程中,几乎必然有不止一个模板可以应用于单个节点。实际应用哪个模板取决于主样式表中是否包含该模板以及是如何包含的。本技巧文章说明了如何使用这些冲突解决规则向用户提供对样式问题的控制(但不是过多的控制)。
注:对于本篇技巧文章,可以使用任何XSLT处理器(如Xalan或Saxon)或基于浏览器的解决方案(如 Microsoft Internet Explorer 或 Mozilla)。
基本文档
本技巧文章描述了将XML公告转换成HTML的样式表。总体目标是提供缺省模板,但允许用户有足够的自由度来按照自己的期望更改样式表的某些方面。而其它方面则不能更改。样式表使用以下源文档:
清单 1. 源文档
Contest Announcement Do you love Pop's Homemade Mashed Potato Mix ? Are you artistic? Well, here's your big big chance! Loopy Foods, the company that brings you Pop's Homemade Mashed Potato Mix and Aunt Susie's Squash in a Box is hosting a Mashed Potato Sculpting Contest. Send your entry today. Contest rules are on the back of every box of Pop's Homemade Mashed Potato Mix .
目标是要用象下面这样的样式表创建一个 HTML 页:
清单 2. 基本样式表
结果是产生一个文档,它为每一个公告创建一个段落,并以粗体表示产品名:
清单 3. 基本转换结果
Contest Announcement
创建模板样式表
利用这些模板,管理员可以构建一个基本样式表,这个表使用户能够使用缺省样式,但允许他们根据需要使用定制样式。要这样做,需要将基本模板包含在第二个样式表(在本例中是 import.xsl)中:
清单 4. 导入的样式表(import.xsl)
从那里,事情是创建一个导入主样式的样式表。正确导入后,只包含主模板的样式表仍按期望的那样工作,但如果添加了其它模板,那个模板就在导入时覆盖了相应的模板:
清单 5. 覆盖导入的模板
导入的样式表的优先级比主样式表的低,所以使用主样式表中的产品模板,而不是导入的产品模板:
清单 6. 覆盖后的模板结果
Contest Announcement
即使覆盖了模板,您仍有机会使用导入的模板,不过要使用 apply-imports 选项:
清单 7. 应用导入
...
2003年04月01日15:50:26赛迪网 Nicholas Chase
同城约会
南昌/征友北京上海
广州深圳
成都杭州
重庆沈阳
武汉南京
全国城市上传我的照片
',1)">最近一小时热门文章
熊猫股价下跌 投资者不看好熊猫收购阿尔卡特
10日IT:微软放松硬件许可 韩国推行移动银行
直接有效成本低 互联网将成为消费维权新手段
幕后投资人首次对外开口:我们投资3721赚了5倍
手机彩屏无标准投诉难 专家呼吁出台划分标准
网易拍卖
有货要卖
频道精选
网易公司财报将实现净盈利2700万元
网易公司收入增长脚踏实地迈向盈利
网易公司第三季度财务表盈利2530万
网易公司可望率先摆脱"垃圾股"概念
可扩展样式表语言转换(Extensible Stylesheet Language Transformations,XSLT)提供了两种不同的方法来实现在转换单个源文档时组合几个样式表。在这一过程中,几乎必然有不止一个模板可以应用于单个节点。实际应用哪个模板取决于主样式表中是否包含该模板以及是如何包含的。本技巧文章说明了如何使用这些冲突解决规则向用户提供对样式问题的控制(但不是过多的控制)。
注:对于本篇技巧文章,可以使用任何XSLT处理器(如Xalan或Saxon)或基于浏览器的解决方案(如 Microsoft Internet Explorer 或 Mozilla)。
基本文档
本技巧文章描述了将XML公告转换成HTML的样式表。总体目标是提供缺省模板,但允许用户有足够的自由度来按照自己的期望更改样式表的某些方面。而其它方面则不能更改。样式表使用以下源文档:
清单 1. 源文档
目标是要用象下面这样的样式表创建一个 HTML 页:
清单 2. 基本样式表
结果是产生一个文档,它为每一个公告创建一个段落,并以粗体表示产品名:
清单 3. 基本转换结果
Contest Announcement
Do you love Pop's Homade Mashed Potato Mix? Are you artistic? Well, here's your big big chance! Loopy Foods, the company that brings you Pop's Homemade Mashed Potato Mix and Aunt Susie's Squash in a Box is hosting a Mashed Potato Sculpting Contest. Send your entry today. Contest rules are on the back of every box of Pop's Homemade Mashed Potato Mix.
创建模板样式表
利用这些模板,管理员可以构建一个基本样式表,这个表使用户能够使用缺省样式,但允许他们根据需要使用定制样式。要这样做,需要将基本模板包含在第二个样式表(在本例中是 import.xsl)中:
清单 4. 导入的样式表(import.xsl)
从那里,事情是创建一个导入主样式的样式表。正确导入后,只包含主模板的样式表仍按期望的那样工作,但如果添加了其它模板,那个模板就在导入时覆盖了相应的模板:
清单 5. 覆盖导入的模板
导入的样式表的优先级比主样式表的低,所以使用主样式表中的产品模板,而不是导入的产品模板:
清单 6. 覆盖后的模板结果
Contest Announcement
Do you love Pop's Homade Mashed Potato Mix? Are you artistic? Well, here's your big big chance! Loopy Foods, the company that brings you Pop's Homemade Mashed Potato Mix and Aunt Susie's Squash in a Box is hosting a Mashed Potato Sculpting Contest. Send your entry today. Contest rules are on the back of every box of Pop's Homemade Mashed Potato Mix.
即使覆盖了模板,您仍有机会使用导入的模板,不过要使用 apply-imports 选项:
清单 7. 应用导入
...