This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: whitespace as a parameter to a template (replace linefeed with li nefeed tab)
- To: "MacEwan, James (Information Services)" <James dot MacEwan at investorsgroup dot com>
- Subject: Re: [xsl] whitespace as a parameter to a template (replace linefeed with li nefeed tab)
- From: Jeni Tennison <mail at jenitennison dot com>
- Date: Thu, 31 May 2001 11:59:27 +0100
- CC: "'xsl-list at lists dot mulberrytech dot com'" <xsl-list at lists dot mulberrytech dot com>
- Organization: Jeni Tennison Consulting Ltd
- References: <DD3244BDF5B4D411BB9D0060948A3B630162BC3F@IGMAIL4>
- Reply-To: xsl-list at lists dot mulberrytech dot com
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"> </xsl:with-param>
> <xsl:with-param name="by"> 	</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="' '" />
<xsl:with-param name="by" select="' 	'" />
</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