XSLT学习总结
从一组定义开始:
XSL:指扩展样式表语言(EXtensible Stylesheet Language)。XSL 可描述如何来显示 XML 文档,当然万维网联盟 (W3C) 发展XSL 的原因就是存在着对于基于 XML 的样式表语言的需求。
XSLT:指 XSL 转换(XSL Transformations)。
XSLT 用于将一种 XML 文档转换为另外一种 XML 文档,或者可被浏览器识别的其他类型的文档,比如 HTML 和 XHTML。通常,XSLT 是通过把每个 XML 元素转换为 (X)HTML 元素来完成这项工作的。
一个简单XSLT转换实例
原始XML(lakers.xml):
<?xml version="1.0" encoding="UTF-8"?><laker><cd><name>Kobe Bryant</name><age>32</age><number>24</number></cd><cd><name>Pau Gasol</name><age>31</age><number>16</number></cd><cd><name>Lama Odom</name><age>31</age><number>7</number></cd></laker>
?下面我们可以用XMLT将上面XML以表格的形式显示:
然后创建一个带有转换模板的 XSL 样式表("lakers.xsl"):
<?xml version="1.0" encoding="UTF-8"?><xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:template match="/"><html> <body><h2>Lakers</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">name</th> <th align="left">age</th> <th align="left">number</th> </tr> <xsl:for-each select="laker/cd"> <tr> <td><xsl:value-of select="name"/></td> <td><xsl:value-of select="age"/></td> <td><xsl:value-of select="number"/></td> </tr> </xsl:for-each> </table> </body> </html></xsl:template></xsl:transform>
向 XML 文档("lakers.xml")添加 XSL 样式表引用:
如下:
<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="lakers.xsl"?><laker><cd><name>Kobe Bryant</name><age>32</age><number>24</number></cd><cd><name>Pau Gasol</name><age>31</age><number>16</number></cd><cd><name>Lama Odom</name><age>31</age><number>7</number></cd></laker>
?显示结果:

?
//----待续