扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
XslDemo06.xml
<?xml version="1.0"?>
<!--File Name:XslDemo06.xml-->
<?xml-stylesheet type="text/xsl" href=http://www.ddvip.com/web/xml/index1/"XslDemo06.xsl"?>
<INVENTORY>
<BOOK InStock="yes">
<TITLE>The Adventures of Huckleberry Finn</TITLE>
<AUTHOR Born="1835">Mark Twain</AUTHOR>
<BINDING>mass market paperback</BINDING>
<PAGES>298</PAGES>
<PRICE>$5.49</PRICE>
</BOOK>
<BOOK InStock="no">
<TITLE>Leaves of Grass</TITLE>
<AUTHOR Born="1819">Walt Whitman</AUTHOR>
<BINDING>hardcover</BINDING>
<PAGES>462</PAGES>
<PRICE>$7.75</PRICE>
</BOOK>
<BOOK InStock="yes">
<TITLE>The Marble Faun</TITLE>
<AUTHOR Born="1804">Nathaniel Hawthorne</AUTHOR>
<BINDING>trade paperback</BINDING>
<PAGES>473</PAGES>
<PRICE>$10.95</PRICE>
</BOOK>
<BOOK InStock="yes">
<TITLE>Moby-Dick</TITLE>
<AUTHOR Born="1819">Herman Melville</AUTHOR>
<BINDING>hardcover</BINDING>
<PAGES>724</PAGES>
<PRICE>$9.95</PRICE>
</BOOK>
</INVENTORY>
在XML 文件中的每个BOOK 元素,皆包含InStock 属性,藉由设定属性值为「yes」或「no」 来指定此书籍是否有库存。每个AUTHOR 元素使用Born 属性来指出作者的出生年份。
样式表使用筛选运算子中的属性,来从样式表所显示的BOOK 元素集合中排除所有缺货的书籍,而不是显示属性InStock 的属性值:
<xsl:for-each select="INVENTORY/BOOK [@InStock=''yes'']">
<!--display each BOOK element-->
</xsl:for-each>
此样式表将BOOK 元素显示于HTML 的表格中,而不是在先前范例的SPAN 元素中。它利用XSL 元素value-of 将Born 属性的属性值显示于AUTHOR 元素的值之后。下列的元素会建立显示这些属性值的表格:
<TD>
<xsl:value-of select="AUTHOR"/><BR/>
(born <xsl:value-of select="AUTHOR/@Born"/>)
</TD>
下图为Internet Explorer 5 显示此文件的情形:
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者