Subject: Re: [xsl] Nicer way to change context-node than xsl:for-each ? From: Mukul Gandhi <gandhi.mukul@xxxxxxxxx> Date: Sat, 5 Dec 2009 20:35:57 +0530 |
Thanks, Dimitre for comments. I was also thinking to propose a simpler syntax, for passing context to call-template (as follows, please): <xsl:call-template name="xx" context="nodeReference"> <!-- template contents --> </xsl:call-template> i.e, we can have an attribute on call-template, instead of wrapping it within something like xsl:context (which looks much verbose). On Sat, Dec 5, 2009 at 8:06 PM, Dimitre Novatchev <dnovatchev@xxxxxxxxx> wrote: > Such a feature is not needed, especially in XSLT 2, where the use of > <xsl:call-template> shouldn't be recommended -- why would anyone > prefer it to the use of <xsl:function> ? I think, xsl:function can be only called within XPath 2 expressions, whereas, call-template can be part of a sequence constructor. IMHO, both are useful. > Even in XSLT 1.0 <xsl:call-template> is not necessary -- one can > always accomplish the same with <xsl:apply-templates> I largely agree. But I think, xsl:apply-templates is kind of push processing (and tries to find nodes in the input document, and applies the match template on them). But xsl:call-template looks to me, truly a subroutine (but it being able to inherit the context of caller, makes it different than a true black box subroutine). It can take certain arguments, and can return a RTF (in XSLT 1) or a sequence (in 2.0). btw, I think having following enhancement to 2.0 language: <xsl:call-template name="xx" inherit-context="no"> <!-- template contents --> </xsl:call-template> (default value of, inherit-context can be "yes") can make call-template instructions truly black box subroutine calls. I think, this will be useful to users. But I agree, that xsl:call-template and xsl:apply-templates can archive similar objectives, in many cases. -- Regards, Mukul Gandhi
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Nicer way to change conte, Dimitre Novatchev | Thread | Re: [xsl] Nicer way to change conte, Dimitre Novatchev |
Re: [xsl] Nicer way to change conte, Dimitre Novatchev | Date | Re: [xsl] Nicer way to change conte, Dimitre Novatchev |
Month |