用xsl分类的方法

来源:互联网 发布:淘宝提高动态评分 编辑:程序博客网 时间:2024/05/14 18:29
XSL  2.0可以用for-each-group
原理:
  1。找到分类的接口
  2。对与分类的集合做一遍
方法:
一。
<xsl:for-each select="address[not(@class = preceding-sibling::address/@class)]">
<section>
<title> <xsl:value-of select="./@class" /> </title>
<xsl:apply-templates select="/addresses/address[@class = current()/@class]" />
</section>
</xsl:for-each>

二。Muenchian Method
<xsl:key name="address-by-class" match="address" use="@class" />
<xsl:for-each select="address[count(. | key('address-by-class' ,@class)[1]) = 1]">
<section>
<title> <xsl:value-of select="./@class" /> </title>
<xsl:apply-templates select="key('address-by-class', @class)" />
</section>
</xsl:for-each>