[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Comparing and re-assigning variables.

Subject: Re: Comparing and re-assigning variables.
From: Mike Brown <mike@xxxxxxxx>
Date: Mon, 24 Feb 2003 11:04:24 -0700 (MST)
xsl assigning variables
G. Ken Holman wrote:
> At 2003-02-24 14:22 +0000, Ragulf Pickaxe wrote:
> >I have never tried putting a for-each inside a variable, but if that is 
> >possible in the specs, could you then not do something like:
> >
> ><xsl:variable name="SorterList">
> >  <xsl:for-each select="report-root/txns">
> >    <xsl:sort select="cpmBI"/>
> >    <xsl:sort select="date"/>
> ></xsl:variable>
> >
> ><xsl:variable name="SortList2" 
> >select="document('')/xsl:stylesheet/xsl:template/xsl:variable[@name='SortList']/cpmMemBI"/>
> 
> The above is addressing the xsl:variable node and its descendent 
> instructions in the stylesheet node tree and not any real-time evaluation 
> of the variable's value.
> 
> >Then loop trough SortList2 and get the values of the current and preceding 
> >cpmMemBI element?
> >
> >I don't know if this is at all possible (and if the syntax should differ), 
> >but I think this would be easier than a two-pass solution.
> 
> This is not possible in XSLT 1.0.
> 
> XSLT 2.0 proposes that result tree fragment variables are different and can 
> be addressed as nodes, so it will be possible to build the variable as a 
> set of nodes and then address those nodes later.

You knew someone would mention it...

All XSLT 1.0 processors offer an extension function, most commonly in the
EXSLT namespace, but sometimes in a vendor-specific namespace, that converts a
result tree fragment to a node-set.

<xsl:variable name="SortedList_RTF">
  <xsl:for-each select="report-root/txns">
    <xsl:sort select="cpmBI"/>
    <xsl:sort select="date"/>
    <xsl:copy-of select="."/>
  </xsl:for-each>
</xsl:variable>
<xsl:variable name="SortedList" select="exsl:node-set($SortedList_RTF)/cpmMemBI" 
xmlns:exsl="http://exslt.org/common"/>

Mike

-- 
  Mike J. Brown   |  http://skew.org/~mike/resume/
  Denver, CO, USA |  http://skew.org/xml/

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


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.