Re: [xsl] "re-calling" a template from <a> anchor

Subject: Re: [xsl] "re-calling" a template from <a> anchor
From: Abel Braaksma <abel.online@xxxxxxxxx>
Date: Thu, 10 May 2007 11:24:14 +0200
Vaduvoiu Tiberiu wrote:
Hi all. Can anyone tell me if it's possible to "re-call" a template from an anchor? something like:

<xsl:template name="test">
    <xsl:param name="howmany" select="5">
        <xsl:value-of select="parent/child[position()>$howmany]/>
                <a><xsl:attribute name="href"><xsl:call-template name="test"><xsl:with-parameter name=howmany select=10></....</a>

I tried it but I get an Http error 500. So I'm trying to display a fixed number(e.g. 5) of elements and have a link wich when clicked displays the next 5 elements let's say. The only way I figured to do it was to call the same template but I can't make it work. Anyone have any solution? 10x

Not sure what you are trying here. MK already pointed out that you may not understand the processing model. You recursively call a template to create an attribute, which is fine, but unlikely to create what you want (an attribute can't contain an element, which is what your code seems to imply...), since your snippet is not well-formed XML, or even XSLT, so I can't tell for sure without seeing more.


Error 500 means: internal error. If you use Cocoon, you should be able to find the XSLT error in the logs. My guess is, since you are recursively calling a template inside xsl:attribute, that the error is something like "can't create element inside an attribute" or similar. Or is just says "syntax error"... Or... since this recursive loop won't end, it just runs out of stack space.

Cheers,
-- Abel

Current Thread