如同CSS可以让HTML变得更漂亮,更易于修改一样,XSL也能让XML的显示更方便.XSL能够让XML的内容以规定的形式嵌入到HTML语句中去,使得数据和表示形式分离.
下面的这个XML在XSL的规范下能出来图一所示的效果.
userinfo.xml内容如下:
<?
xml:stylesheet type="text/xsl" href="userinfo.xsl"
?>
< record >
< username > ewww </ username >
< password > 123 </ password >
</ record >
< record >
< username > ewww </ username >
< password > 123 </ password >
</ record >
userinfo.xsl内容如下:
<?
xml version="1.0" encoding="GB2312"
?>
< html xmlns:xsl ="http://www.w3.org/TR/WD-xsl" >
< head >< title > 用户信息 </ title ></ head >
< body > < xsl:for-each select ="record" >< P />
< TABLE border ="1" cellspacing ="0" >
< caption style ="font-size: 150%; font-weight: bold" > 用户信息 </ caption >
< tr >
< th > 姓名 </ th >< td >< xsl:value-of select ="username" /></ td >
< th > 密码 </ th >< td >< xsl:value-of select ="password" /></ td >
</ tr >
</ TABLE >
</ xsl:for-each >
</ body >
</ html >
< html xmlns:xsl ="http://www.w3.org/TR/WD-xsl" >
< head >< title > 用户信息 </ title ></ head >
< body > < xsl:for-each select ="record" >< P />
< TABLE border ="1" cellspacing ="0" >
< caption style ="font-size: 150%; font-weight: bold" > 用户信息 </ caption >
< tr >
< th > 姓名 </ th >< td >< xsl:value-of select ="username" /></ td >
< th > 密码 </ th >< td >< xsl:value-of select ="password" /></ td >
</ tr >
</ TABLE >
</ xsl:for-each >
</ body >
</ html >
效果截图:
看到直观的效果后再来分析XSL的作用.咋一看XSL觉得跟HTML非常相似,也是在描述一个网页的各个部分.仔细看,会发现里面有好多<XSL>的标签,正是这些标签起的作用.
<XSL:for-each select="record">是一个选择循环语句,select表示选择出名为record的节点,for-each表示对每个被选择出来的节点进行一次循环.
<XSL:value-of select="password/username">是一个取值操作.取出名为password/username的节点的值.
在知道两个标签的意义之后,再来看userinfo.xsl是不是觉得很简单了呢.