XSLT按特定顺序对元素组进行排序

时间:2017-04-21 08:10:11

标签: xslt

我有一个项目列表,我根据他们的类别分组,但现在我想按特定顺序对组进行排序。例如,代替Group GH,Group XT,Group ABC我想要:Group XT,Group ABC,Group GH。

以这种方式对元素进行分组:

  <xsl:template match="/udt:UserDefinedTable">
    <xsl:for-each select="udt:Data[count(. | key('data-by-Category', udt:Category)[1]) = 1]">
      <xsl:sort select="udt:Zap" />
      <span class="NameofFunction">
        <h3>
          <xsl:value-of select="udt:Category" disable-output-escaping="yes" />&#160;</h3>
      </span>
      <xsl:variable name="currentData" select="key('data-by-Category', udt:Category)" />
      <xsl:if test="$currentData">
        <div class="row">
          <xsl:apply-templates select="$currentData" mode="list">
          </xsl:apply-templates>
        </div>
      </xsl:if>
    </xsl:for-each>
  </xsl:template>

我想我必须在每个项目上添加一个字段以指定组顺序,因此组XT的所有项目都具有&#39; groupsort&#39; = 1.所以选择第一个孩子的群体,然后相应地对群体进行排序,对吗?任何帮助表示赞赏。 (同样:我想对组本身进行排序而不是组内的元素)。

0 个答案:

没有答案