Re: func:function and func:result

Tamer Demirel <[email protected]> Sun, 22 Nov 2009 13:46:45 +0100
Newsgroups gmane.text.xml.xslt.extensions
Message-ID <[email protected]>
Can you plz antwer me again? I delete your email :-(

Tamer Demirel schrieb:
> Hallo,
>
> i am using Xalan 2.7.1 and exslt.
> I habe Problems with func:result.
>
> I want to have as result a part of xslt code.
>
> My Example:
>
> Function:
>    <func:function name="my:getElement">
>        <xsl:param name="variableName"/>
>        <xsl:param name="variableName_final"/>
>        <xsl:param name="elementName"/>
>        <xsl:element name="{$elementName}">
>            <xsl:element name="xsl:if">
>                <xsl:attribute 
> name="test"><xsl:text>string-length($</xsl:text><xsl:value-of 
> select="$variableName"/><xsl:text>)>0</xsl:text></xsl:attribute>
>                <xsl:element name="xsl:value-of">
>                    <xsl:attribute 
> name="select"><xsl:text>$</xsl:text><xsl:value-of 
> select="$variableName_final"/></xsl:attribute>
>                </xsl:element>
>            </xsl:element>
>        </xsl:element>
>        <func:result/>
>    </func:function>
>
> Call of the Function:
> <xsl:value-of 
> select="my:getElement('invoic_type','invoic_type_final','INVOIC_TYPE')"/>
>
> I get the failure:
> misplaced literal result in a func:function container.
>
> But it works for me.
>
> This doesnt work:
>
>    <func:function name="my:getElement">
>        <xsl:param name="variableName"/>
>        <xsl:param name="variableName_final"/>
>        <xsl:param name="elementName"/>
>        <func:result>
>        <xsl:element name="{$elementName}">
>            <xsl:element name="xsl:if">
>                <xsl:attribute 
> name="test"><xsl:text>string-length($</xsl:text><xsl:value-of 
> select="$variableName"/><xsl:text>)>0</xsl:text></xsl:attribute>
>                <xsl:element name="xsl:value-of">
>                    <xsl:attribute 
> name="select"><xsl:text>$</xsl:text><xsl:value-of 
> select="$variableName_final"/></xsl:attribute>
>                </xsl:element>
>            </xsl:element>
>        </xsl:element>
>        </func:result>
>    </func:function>
>
> Do somebody know, what i can do to fix the problem? Maybe older 
> version helps?
> Thx,
> Tamer
>
>