xsl-list
[Top] [All Lists]

Re: [xsl] Problem with iterating through a sequence of integers

2008-04-28 14:05:44
On 28/04/2008, David Carlisle <davidc(_at_)nag(_dot_)co(_dot_)uk> wrote:

 various ways, you could forexample stick the body of the loop into a
 named template and just have the body being a xsl:call-template
 so that when it's compiled it's not known statically that it's an
 integer.


 It's possible to avoid putting the whole body in a separate template,
 for example this works, today:


            <xsl:when test=". instance of node()">

                <xsl:apply-templates select="(.,doc('grrr'))[1]" />
            </xsl:when>

 but if the xslt engine's rewrite engine gets smarter and simplifies
 (.,doc('grrr'))[1] to . then you'd be back to where you started.

Or perhaps:

<xsl:for-each select="(1, 2, 3, /)[position() ne last()]">

...might be enough to fool it.


-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--