二.XSL的转换
1.将XML转换成HTML
XSL是如何将XML文档转换成HTML文件的呢?我们来看一个例子,下面是XML文档的一部分:
?xml version="1.0" encoding="ISO8859-1" ?
CATALOG
CD
TITLEEmpire Burlesque/TITLE
ARTISTBob Dylan/ARTIST
COUNTRYUSA/COUNTRY
COMPANYColumbia/COMPANY
PRICE10.90/PRICE
YEAR1985/YEAR
/CD
...
然后我们将下面的XSL文件作为HTML的模板将XML数据转换为HTML文件:
?xml version='1.0'?
xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"
xsl:template match="/"
html
body
table border="2" bgcolor="yellow"
tr
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)thTitle/th
thArtist/th
/tr
xsl:for-each select="CATALOG/CD"
tr
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)tdxsl:value-of select="TITLE"//td
tdxsl:value-of select="ARTIST"//td
/tr
/xsl:for-each
/table
/body
/html
/xsl:template
/xsl:stylesheet
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)
在上面的代码中, xsl:for-each元素的作用是定位XML文档中的哪些元素需要按以下模板显示。select属性用来定义源文件中的元素名。指定属性的这种语法又称为XML
Pattern(模式),类似文件子目录的表示形式。xsl:value-of元素用来在当前层次中插入子元素的内容模板。
因为XSL自身也是一个XML文档,因此,XSL文件的开头以一个XML声明开始。 xsl:stylesheet元素用来声明这是一个文件。xsl:template
match="/"语句表示XML的源文档在当前目录下。
如果为XML文档加上XSL,看下面代码第2行,你的浏览器就可以精确的将XML 文档转换为HTML文件。
?xml version="1.0" encoding="ISO8859-1" ?
?xml-stylesheet type="text/xsl" href="cd_catalog.xsl"?
CATALOG
CD
TITLEEmpire Burlesque/TITLE
ARTISTBob Dylan/ARTIST
COUNTRYUSA/COUNTRY
COMPANYColumbia/COMPANY
PRICE10.90/PRICE
YEAR1985/YEAR
/CD