Re: [xsl] whitespace as a parameter to a template (replace linefeed with li nefeed tab)

Subject: Re: [xsl] whitespace as a parameter to a template (replace linefeed with li nefeed tab)
From: Jeni Tennison <mail@xxxxxxxxxxxxxxxx>
Date: Thu, 31 May 2001 11:59:27 +0100
Hi James,

> I am making the call to my "do-replace" template as follows:
> <xsl:call-template name="do-replace">
>   <xsl:with-param name="text" select="$x"/>
>   <xsl:with-param name="replace">&#10;</xsl:with-param>
>   <xsl:with-param name="by">&#10;&#09;</xsl:with-param>
> </xsl:call-template>
>
> I suspect that the XML parser is converting my the whitespace in the
> "replace" and "by" parameters to a single space or an empty string.
> What is the proper way to preserve the white space in parameters
> being passed into a template?

You'll probably find it easiest to just use the select attribute to
set the parameter values rather than the content of the
xsl:with-param:

   <xsl:call-template name="do-replace">
      <xsl:with-param name="text" select="$x" />
      <xsl:with-param name="replace" select="'&#10;'" />
      <xsl:with-param name="by" select="'&#10;&#09;'" />
   </xsl:call-template>

You could equally use xsl:text in the content of the xsl:with-param,
as others have shown, but it's longer.
   
I hope that helps,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread