Re: [xsl] apostrophe in paramter causing output problems

Subject: Re: [xsl] apostrophe in paramter causing output problems
From: Mike Brown <mike@xxxxxxxx>
Date: Wed, 15 Aug 2001 12:52:05 -0600 (MDT)
Uronis, Jeremy wrote:
> translate($Description,"&apos;","\&apos;")}

Instead of "&apos;", declare a variable like this:
  <xsl:variable name="q">'</xsl:variable>
and then use $q.

However you have a bigger problem in that you misunderstand how
translate() works. It works like the Unix 'tr' utility -- it only
replaces single characters.

You need a recursive template to do arbitrary string replacement.
See http://skew.org/xml/stylesheets/replace/ for one such example.
You'll do this:

<xsl:call-template name="SubstringReplace">
  <xsl:with-param name="stringIn" select="$Description" /> 
  <xsl:with-param name="substringIn">'</xsl:with-param> 
  <xsl:with-param name="substringOut">\'</xsl:with-param>
</xsl:call-template>

   - Mike
____________________________________________________________________________
  mike j. brown, fourthought.com  |  xml/xslt: http://skew.org/xml/
  denver/boulder, colorado, usa   |  personal: http://hyperreal.org/~mike/

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


Current Thread