读书人

XSLT学习小结

发布时间: 2012-12-19 14:13:14 作者: rapoo

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>

?显示结果:


XSLT学习小结
?

//----待续

读书人网 >编程

热点推荐