[xsl] How can I sort this?

Subject: [xsl] How can I sort this?
From: knocte <knocte@xxxxxxxxx>
Date: Tue, 24 May 2005 10:05:41 +0200
Hello list!

I have a problem of sorting when forming a SELECT INPUT BOX.


The XML:

<BigList>
  <BigElement>
    <Code>XXP</Code>
    <SmallList>
      <SmallElement>
        <Code>001</Code1>
        <Name>A</Name>
      </SmallElement>
      <SmallElement>
        <Code>002</Code1>
        <Name>X</Name>
      </SmallElement>
    </SmallList>
  </BigElement>
  <BigElement>
    <Code>YYJ</Code>
    <SmallList>
      <SmallElement>
        <Code>01</Code1>
        <Name>B</Name>
      </SmallElement>
      <SmallElement>
        <Code>02</Code1>
        <Name>Z</Name>
      </SmallElement>
    </SmallList>
  </Element>
</BigList>


The XSLT:

<select id="SmallElements">
  <xsl:for-each select="BigList/BigElement">
    <xsl:for-each select="SmallList/SmallElement">
      <option value="Code">
        <xsl:value-of select="Name" />
      </option>
    </xsl:for-each>
  </xsl:for-each>
</select>

Results:

<select id="SmallElements">
  <option value="001">A</option>
  <option value="002">X</option>
  <option value="01">B</option>
  <option value="02">Z</option>
</select>


How can I sort by the name? I mean, my expected results are:

<select id="SmallElements">
  <option value="001">A</option>
  <option value="01">B</option>
  <option value="002">X</option>
  <option value="02">Z</option>
</select>


Thanks in advance!

  Andrew

Current Thread