XSL基础总结
XSL全称为 eXtensible StyleSheet Language ,即可扩展样式语言,它是W3C专门为XML定制的。
XSL包含三个部分:
转换XML文档的方法
定义XML节点路径的方法
格式化XML文档的方法
总体概括XSL就是一种把XML转换为HTML的语言,一种可以同时筛选和排列数据的语言,一种可以以数值化为基础来格式化XML的语言。
本节着重介绍XSLT(XSL Transfermations)即把XML转换为HTML。
XSL利用XSLT把XML“源树”经过处理转换成HTML“结果树”,或者说把XML源文档转换成HTML结果文档,如下示意图:
s
通过XSL,我们可以把XML转换成HTML,但是XML并不能代替HTML, HTML和CSS注重于文档在浏览器中的样式,而XML注重于数据和结构,XSL因此也更注重于XML数据的提取转换及表达。
下面通过一个简单实例来介绍XSL的基本使用。首先建立一个XML纯文本,stock.xml

下面建立一个HTML模板stock.html,来显示这个xml。

红色框内即为XSL,for-each实现了循环读取节点上的属性值,填入相应的表格。
我们可以制作一个独立的XSL样式文件,并作为一个预制模板植入xml中,如下是stock.xsl样式模板:

XSL本身也是一个XML文件,<xsl:stylesheet>元素表示这是一个样式表文件。整个模板必须用“<xsl:template match=”/”>”包围,这表示模板对应XML源文件的根部(/),整个文件必须遵照XML规范,包括文件中的HTML标记。
指定XSL文件相对路径后,打开XML文件,就可以看到如下网页:

这就是最基本的XML工作方式。
访问和输出属性
XSL可以从源文档中逐个访问属性,然后在目标文档里生成属性,源文档里的属性由XSL Patterns访问,它预先读取属性名字里的@符号,然后访问。下面仍以stock.xml为例,样式文件为Stock.xsl,如下:

XSL以两种方式建立属性,一种直接在文件内定义,一种利用<xsl:attribute>元素动态产生,如上面设置<tr>的title属性。并且即使一个元素已经拥有了属性,利用XSL还可以为它添加新的属性,所以以上两种方法可以混合使用。

浙公网安备 33010602011771号