XSLT学习


XSL 指扩展样式表语言(EXtensible Stylesheet Language)。


万维网联盟开始发展 XSL 的起因是由于对基于 XML 的样式表语言的需求。

XSLT 指 XSL 转换。在此教程中,你将学习如何使用 XSLT 将 XML 文档转换为其他文档,比如 XHTML。

XSLT 是一种用于将 XML 文档转换为 XHTML 文档或其他 XML 文档的语言。


XPath 是一种用于在 XML 文档中进行导航的语言。[/b]
实例研究:如何使用 XSLT 将 XML 转换为 XHTML。
从一个原始的 XML 文档开始
我们现在要把下面这个 XML 文档("cdcatalog.xml")转换为 XHTML:

<?xml version="1.0" encoding="ISO8859-1" ?> 
 <!--  Edited with XML Spy v2007 (http://www.altova.com) 
  -->
 <catalog>
 <cd>
  <title>Empire Burlesque</title> 
  <artist>Bob Dylan</artist> 
  <country>USA</country> 
  <company>Columbia</company> 
  <price>10.90</price> 
  <year>1985</year> 
  </cd>
 <cd>
  <title>Hide your heart</title> 
  <artist>Bonnie Tyler</artist> 
  <country>UK</country> 
  <company>CBS Records</company> 
  <price>9.90</price> 
  <year>1988</year> 
  </cd>
 <cd>
  <title>Greatest Hits</title> 
  <artist>Dolly Parton</artist> 
  <country>USA</country> 
  <company>RCA</company> 
  <price>9.90</price> 
  <year>1982</year> 
  </cd>
 <cd>
  <title>Still got the blues</title> 
  <artist>Gary Moore</artist> 
  <country>UK</country> 
  <company>Virgin records</company> 
  <price>10.20</price> 
  <year>1990</year> 
  </cd>
 <cd>
  <title>Eros</title> 
  <artist>Eros Ramazzotti</artist> 
  <country>EU</country> 
  <company>BMG</company> 
  <price>9.90</price> 
  <year>1997</year> 
  </cd>
 <cd>
  <title>One night only</title> 
  <artist>Bee Gees</artist> 
  <country>UK</country> 
  <company>Polydor</company> 
  <price>10.90</price> 
  <year>1998</year> 
  </cd>
 <cd>
  <title>Sylvias Mother</title> 
  <artist>Dr.Hook</artist> 
  <country>UK</country> 
  <company>CBS</company> 
  <price>8.10</price> 
  <year>1973</year> 
  </cd>
 <cd>
  <title>Maggie May</title> 
  <artist>Rod Stewart</artist> 
  <country>UK</country> 
  <company>Pickwick</company> 
  <price>8.50</price> 
  <year>1990</year> 
  </cd>
  </catalog>


创建 XSL 样式表
然后创建一个带有转换模板的 XSL 样式表("cdcatalog.xsl"):

<?xml version="1.0" encoding="ISO-8859-1"?>

<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="left">Title</th>
      <th align="left">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>


把 XSL 样式表链接到 XML 文档
向 XML 文档("cdcatalog.xml")添加 XSL 样式表引用:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.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>



如果您使用的浏览器兼容 XSLT,它会很顺利地把您的 XML 转换为 XHTML。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

shibushi114

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值