3.5 xsl:choose, xsl:when 和 xsl:otherwise
xsl:if语法没有else的属性。假如我们要进行多项选择,那么就要应用xsl:choose / xsl:when / xsl:otherwise系列流程把持语法了。具体的应用请看下面的XSL文件例子:
<xsl:template match='PEOPLE'>
<xsl:choose>
<xsl:when test='@name = 'ajie''>
<B><xsl:value-of select='@name'/></B>
</xsl:when>
<xsl:when test='@name'>
<I><xsl:value-of select='@name'/></I>
</xsl:when>
<xsl:otherwise>
No name available
</xsl:otherwise>
<xsl:choose>
</xsl:template>
阐明:首先在PEOPLE节点下寻找<name>属性值为ajie的元素,假如找到,将ajie用粗体输出;假如没有发明值为ajie的<name>元素,则将所有的<name>元素的值都用斜体输出;假如没有发明任何<name>元素,则显示'No
name available'。
3.6 xsl:sort
在XSLT中可以对XML源文档的元素进行重新排序,排序的语法就是xsl:sort。举例:下面的代码就是将文档元素按name排序。
<xsl:template match='PEOPLE'>
<xsl:apply-templates select='PERSON'>
<xsl:sort select='@name'/>
</xsl:apply-templates>
</xsl:template>
以上是XSLT的元素的重要语法,还有很多其他的语法,例如:import, include, element, attribute, number, param等等语法,在这里就不逐一说明。我们的目标是让您对XSLT的语法有基础的概念,懂得XSLT作为一种转换语言的强盛功效。