xsl-list
[Top] [All Lists]

RE: AW: How to return values from sub-template?

2004-12-01 04:07:34

Hi,

You have got a lot of options to do that.

Another one is to define the variable globally and use it within the
templates.

Cheers.

Arun


I think it should be sufficient to use

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
        <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
        <xsl:template match="/">
                Age exists=
                <xsl:call-template name="subtemp">
                        <xsl:with-param name="parm" select="//myelement[(_at_)name = 
'karl']"/>
                </xsl:call-template>
        </xsl:template>
        <xsl:template name="subtemp">
                <xsl:param name="parm"/>
                <xsl:value-of select="exists(@age)"/>
        </xsl:template>
</xsl:stylesheet>

since the return value of a named template is inserted in the place,
where you call your named template.

Alternativly you can also put your named template call in a variable,
which then gets the returned value assignd.

BTW, exit() should be exists()...

wbr,
Roman

_______________________________________

Roman Huditsch
IT and Electronic Publishing
LexisNexis ARD Orac
Marxergasse 25
1030 Vienna
Austria
ph: +43-1-534 52-1514
f: +43-1-534 52-140
e-mail roman(_dot_)huditsch(_at_)lexisnexis(_dot_)at
www.lexisnexis.at


> -----Ursprüngliche Nachricht-----
> Von: Matt Adams [mailto:mattad(_at_)email(_dot_)com]
> Gesendet: Mittwoch, 1. Dezember 2004 11:45
> An: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
> Betreff: [xsl] How to return values from sub-template?
>
> Sorry for this newbie question but I didn't found a hint in
> tutorials on how to return back parameter values from
> sub-templates. Assume the following situation.
> I want to pass back the boolean (or other values in other
> scenarios) value if the attribute "age"
> exists in a node "myelement" with the attribute name="karl".
>
> Yes, I know, THIS sample could be coded easier within one
> template but my sample is only a simplified version for a
> complex scenario where two templates are required.
>
> Again, how can I access the value of the variable myval from
> the calling template?
>
> Thank you
> Matt
>
> <xsl:template match="/">
>    <xsl:call-template name="subtemp">
>      <xsl:with-param name="parm" select="//myelement[(_at_)name =
> 'karl']" />
>    </xsl:call-template>
>    Age exists=<xsl:value-of select="$myval" />  <!-- does not
> work --> </xsl:template>
>
> <xsl:template name="subtemp">
>   <xsl:param name="parm" />
>     Hello
>   <xsl:variable name="myval" select="exist(@age)" />
>   return $myval
> </xsl:template>
>
> --
> ___________________________________________________________
> Sign-up for Ads Free at Mail.com
> http://promo.mail.com/adsfreejump.htm
>
>
> --~------------------------------------------------------------------
> 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>
> --~--
>
>

--~------------------------------------------------------------------
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>
--~--


_________________________________________________________________
Steam up your desktop! Get the hottest wallpapers. http://www.msn.co.in/cinema/ Right here at MSN movies!


--~------------------------------------------------------------------
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>
--~--



<Prev in Thread] Current Thread [Next in Thread>