<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html"/> <xsl:template match="/">
- <HTML>
- <HEAD>
- <TITLE>导游</TITLE>
- <STYLE TYPE="text/css">
- H2 {TEXT-ALIGN:CENTER;}
- .greenBackground {BACKGROUND-COLOR:LIGHTGREEN; TEXT-ALIGN:CENTER;}
- .yellowBackground {BACKGROUND-COLOR:YELLOW; TEXT-ALIGN:CENTER; FONT-WEIGHT:BOLD; FONT-SIZE:14pt;}
- .salmonBackground {BACKGROUND-COLOR:LIGHTSALMON; TEXT-ALIGN:CENTER; FONT-SIZE:12pt;}
- </STYLE>
- </HEAD>
- <BODY>
- <H2>顶级旅游目的地</H2>
- <xsl:apply-templates select="tourGuide"/>
- </BODY>
- </HTML>
</xsl:template> <xsl:template match="tourGuide">
- <TABLE BORDER="1" WIDTH="100%">
- <xsl:for-each select="city/country">
- <xsl:sort select="countryName"/>
- <xsl:if test="population > 10000">
- <TR>
- <TD CLASS="greenBackground"><BR/>
- <xsl:text>国家: </xsl:text><xsl:value-of select="countryName"/></TD><BR/>
- <TD CLASS="greenBackground"><BR/>
- <xsl:text>人口: </xsl:text><xsl:value-of select="population"/>
- </TD>
- <xsl:for-each select="topDestination">
- <TD CLASS="yellowBackground"><BR/>
- <xsl:text>顶级目的地: </xsl:text><xsl:value-of select="destinationName"/>
- </TD>
- </xsl:for-each>
- <xsl:for-each select="destination">
- <TD CLASS="yellowBackground"><BR/>
- <xsl:text>目的地: </xsl:text><xsl:value-of select="destinationName"/>
- </TD>
- </xsl:for-each>
- </TR>
- </xsl:if>
- </xsl:for-each>
- </TABLE>
- </xsl:template>
</xsl:stylesheet>
|
表 4-3: 一对一关系的 XML 样式表 - country_dest.xsl
表 4-3 中的 XML 样式表介绍了 if 语句以及排序元素的能力。
if 语句根据 "test" 属性中给定的条件的评估执行代码,例如:
<xsl:if test="population >= 10000">
- 大城镇
</xsl:if>
<xsl:if test="population < 10000">
- 小镇
</xsl:if>
条件可能的表达式为
操作符 |
含义 |
= | == |
!= | 两个值的相等 |
!= | 两个值的不想等 |
< | 小于 |
> | 大于 |
<= | 小于或等于 |
>= | 大于或等于 |
and | 逻辑与连接 |
or