This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Multiple Sorting


| <xsl:for-each select="addressbook/contact" order-by="+lastname">

I'm guessing this is the Microsoft IE5 "WD-XSL" dialect of XSL...

| My question is, is it possible to order the data by <lastname> and then by
| <firstname> from the same XSL stylesheet?

Using XSLT 1.0 you would do:

  <xsl:for-each select="select="addressbook/contact">
    <xsl:sort select="lastname"/>
    <xsl:sort select="firstname"/>

    <!-- template to repeat here -->

  </xsl:for-each>

The <xsl:sort> defaults to sorting ascending by string value
but you can change this with additional attributes.

For example, to sort descending by numerical value, you would do:

  <xsl:sort select="salary" data-type="number" order="descending"/>

_____________________________________________________________________
Steve Muench - Developer, Product Manager, XML Evangelist, Author
"Building Oracle XML Applications" - www.oreilly.com/catalog/orxmlapp



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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]