正确的样式表声明
把文档声明为XSL样式表的根元素是<xsl:stylesheet>或<xsl:transform>。
注释:<xsl:stylesheet>和<xsl:transform>是完全同义的,均可被使用!
根据W3C的XSLT标准,声明XSL样式表的正确方法是:
<xsl:stylesheetversion="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
或者:
<xsl:transformversion="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
如需访问XSLT的元素、属性以及特性,我们必须在文档顶端声明XSLT命名空间。
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"指向了官方的W3CXSLT命名空间。如果您使用此命名空间,就必须包含属性version="1.0"。
下面就如何声明xsl给出一个具体的示例:
cd_catalog.xml:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="cd_catlog.xsl"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
</catalog>
<?xml-stylesheettype="text/xsl"href="cd_catlog.xsl"?>用于引用xml样式转化文件;
cd_catalog.xsl:
<?xml version='1.0'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th align="center">Title</th>
<th align="center">Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<td><xsl:value-of select="artist"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
浏览器效果: