xsl-list
[Top] [All Lists]

AW: Sorting and re-ordering down a hierarchy

2003-07-22 01:45:10
Hi,

Does anybody else have a solution, and can anyone tell me why my solution 
does not work?

<xsl:template match="input">
      <xsl:apply-templates select="node">
              <xsl:sort select="node/rank" data-type="number"
order="ascending"/>
      </xsl:apply-templates>
</xsl:template>

The statement select="node" defines the set which is sorted.
You have different call to the template with different sets.
Each is sorted. Where is the problem?

Regards,

Juergen



XSL, input, output just keeping.

<xsl:template match="/">
        <output>
        <xsl:apply-templates select="input"/>
        </output>
</xsl:template>

<xsl:template match="input">
        <xsl:apply-templates select="node">
                <xsl:sort select="node/rank" data-type="number"
order="ascending"/>
        </xsl:apply-templates>
</xsl:template>

<xsl:template match="node">
        <node>
        <xsl:copy-of select="rank"/>
        <xsl:apply-templates select="node">
        <xsl:sort select="node/rank" data-type="number" order="ascending"/>
        </xsl:apply-templates>
        </node>
</xsl:template>


<input>
<node>
    <rank>2</rank>
    <node>
        <rank>88</rank>
    </node>
    <node>
        <rank>7</rank>
    </node>
    <node>
        <rank>66</rank>
    </node>
</node>
<node>
    <rank>1</rank>
    <node>
        <rank>3</rank>
    </node>
    <node>
        <rank>2</rank>
    </node>
    <node>
        <rank>1</rank>
    </node>
</node>
</input>

The output I get on this is:
<output>
  <node>
    <rank>1</rank>
    <node>
      <rank>3</rank>
    </node>
    <node>
      <rank>2</rank>
    </node>
    <node>
      <rank>1</rank>
    </node>
    </node>
    <node>
      <rank>2</rank>
    <node>
      <rank>88</rank>
    </node>
    <node>
      <rank>7</rank>
    </node>
    <node>
      <rank>66</rank>
    </node>
  </node>
</output>



*****************************************************************************
Diese E-Mail enthaelt vertrauliche und/oder rechtlich geschuetzte 
Informationen. Wenn Sie nicht der richtige Adressat sind oder diese 
eMail irrtuemlich erhalten haben, informieren Sie bitte sofort den 
Absender und vernichten Sie diese Mail. Das unerlaubte Kopieren 
sowie die unbefugte Weitergabe dieser Mail ist nicht gestattet.

This e-mail may contain confidential and/or privileged information. 
If you are not the intended recipient (or have received this e-mail 
in error) please notify the sender immediately and destroy this e-mail. 
Any unauthorized copying, disclosure or distribution of the material 
in this e-mail is strictly forbidden.
*****************************************************************************


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>