RE: Encoding problem

Subject: RE: Encoding problem
From: sara.mitchell@xxxxxxxxx
Date: Mon, 31 Jan 2000 12:49:14 -0500
Well, I can at least supply some of the reasons why the Unicode character is
showing -- as I got caught by this myself. The reason is your line ending between
the <xsl:attribute> and </xsl:attribute> tags.
 
I don't remember the section in the standard, but simply put ANYTHING between
the start/end tags to create an attribute is interpreted as part of the value. So the
XSL processor is adding a Unicode character for the line feed.
 
To fix this (in the cases where the attribute value template doesn't work -- the curly braces),
just make sure you don't add any extra white space. For example:
 
<xsl:attritbue name="value"><xsl:value-of select="@name"/></xsl:attribute>
 
If you editor wraps it strangely, don't worry about it. It will still work correctly.
 
Sara
-----Original Message-----
From: David Halsted [mailto:halstedd@xxxxxxxxxx]
Sent: Saturday, January 29, 2000 2:57 PM
To: xsl-list@xxxxxxxxxxxxxxxx
Cc: SAXON XSL Discussion List
Subject: Encoding problem

If I do
    <xsl:element name="input">
     <xsl:attribute name="name">name</xsl:attribute>
     <xsl:attribute name="type">text</xsl:attribute>
     <xsl:attribute name="value">
      <xsl:value-of select="@name"  />
     </xsl:attribute>
    </xsl:element>
 
and @name contains a numeric Unicode entity, Saxon chokes.  On the other hand, if I do
 
    <input name="name" type="text" value="{@name}"/>
 
it works fine.  Thanks to Steve Tinney for the hint.  Mind you, I don't understand why this is so, but I'm content.
 
Dave Halsted
Current Thread