RE: [xsl] Sorting a NodeSet Contained Within a Variable

Subject: RE: [xsl] Sorting a NodeSet Contained Within a Variable
From: Bryan Tulloch <b.tulloch@xxxxxxxxxxxxx>
Date: Thu, 12 Jul 2001 17:23:04 +0100
I am hopelessly confused! I can't use the apply-templates method because the
processor won't let me create a template that matches a variable.


-----Original Message-----
From: David Carlisle [mailto:davidc@xxxxxxxxx]
Sent: Thursday, July 12, 2001 12:05 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] Sorting a NodeSet Contained Within a Variable

   How can I build it so that it has more than one element?


   > <xsl:variable name="casenumber" select="msxml:node-set($"

   That set only has one element, a root node, so if you sort it into any
   orser, it won't change much.


(please don't take things off list)

You can't. xsl:variable always creates a root node if used with non
empty content.

A variable is just like a document, On your main input document you can
legally do

<xsl:template match="/">
<xsl:sort select="any_old_rubbish"/>

but the sort only sorts one node (/) so never has a visible effect.


<xsl:apply-templates select="$xxx">
<xsl:sort select="any_old_rubbish"/>

is exactly the same.

If you want to sort the top level elments of the tree, select them:

<xsl:apply-templates select="$xxx/*">
<xsl:sort select="some_sort_critrion"/>


This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit or alternatively call
Star Internet for details on the Virus Scanning Service.

 XSL-List info and archive:

 XSL-List info and archive:

Current Thread