[xsl] Re : [xsl] XSL2 string result from XSL1 template

Subject: [xsl] Re : [xsl] XSL2 string result from XSL1 template
From: Florent Georges <lists@xxxxxxxxxxxx>
Date: Tue, 14 Apr 2009 11:47:34 +0000 (GMT)
Trevor Nicholls wrote:

>   <xsl:variable name="fulltarget"
> as="xs:string">
>     <xsl:call-template name="encode-url">
>       <xsl:with-param name="str"
> select="concat($urlprefix,'docs/',$book,'/',$subf,'#',$jid)"
> />
>     </xsl:call-template>
>   </xsl:variable>

> The error is XTTE0570: A sequence of more than one item is
> not allowed as the value of variable $fulltarget

  The template returns a sequence of text nodes.  You can concatenate all of
them by using:

    <xsl:value-of separator="">
       <xsl:call-template ...
          ...
    </xsl:value-of>

  That will produce a single text node, which in turn will be cast to a
string.  Or you can use an intermediate variable an use string-join().

  Regards,

--
Florent Georges
http://www.fgeorges.org/

Current Thread