Re: [xsl] •

Subject: Re: [xsl] •
From: Mike Brown <mike@xxxxxxxx>
Date: Sat, 8 Jun 2002 12:43:57 -0600 (MDT)
Greg Martel wrote:
> which displays like this "⤢".

This is a FAQ.

Those are probably the correct 3 bytes for the character you wanted, in the
utf-8 encoding. utf-8 uses 1 to 4 bytes to represent the 1.1 million
characters in Unicode. If your editor or terminal or whatever viewing
environment you're using to look at the source is showing you 3 characters for
those 3 bytes, instead of the 1 character you wanted, then the problem is that
your viewing environment is expecting a single-byte encoding, not utf-8.  

Fixing this is a matter of using a smarter editor, or if you're looking at it
in a browser, making sure that your HTML contains (or is served with) the
correct encoding declaration and that your browser is configured to honor this
declaration. Typically, it should look like
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
in the document's <head>.

Your other option, to get the output you were hoping for, is to use
<xsl:output method="html" encoding="us-ascii"/> to force your XSLT processor
to write character references (since that character is not available in
us-ascii).

As Julian has been saying, how you write the character on the input side
(source XML or stylesheet) is essentially an arbitrary lexical decision that
is completely obscured once the document is parsed. You must understand that
XSLT is not an exercise in serially pasting together strings that are copied 
from raw XML files.

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

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


Current Thread