Subject: RE: Problem with Output special char in HTML attribute
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Tue, 7 Dec 2004 18:25:39 -0000
|
The recommended way of doing this in XSLT 2.0 is to allocate two private use
characters to the symbols "<?" and "?>", and then use a character map to
generate these during the serialization phase.
<xsl:character-map name="cmap">
<xsl:output-character character="" string="<?"/>
<xsl:output-character character="" string="?>"/>
</xsl:character-map>
<a href="#" tabindex="=$tabindex++">
Michael Kay
> -----Original Message-----
> From: David Carlisle [mailto:davidc@xxxxxxxxx]
> Sent: 07 December 2004 17:38
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: Re: Problem with Output special char in HTML attribute
>
>
> This is a FAQ (and I'm sure the answer will be in the FAQ for
> this list)
>
>
> <a href="#" tabindex="<?=$tabindex++?>">
>
> is not well formed XML (or HTML) so you can not generate it
> directly in
> XSLT.
>
> If your processor supports disable output escaping and it
> wasn't in an
> attribute value you could go
>
> <xsl:text disable-output-escaping="yes"><?=$tabindex++?>
>
> but as you are in an attribute value there is no way to
> generate this in
> pure xslt 1.
>
> Saxon (and possibly other systems) has an extension attribute to allow
> d-o-e to be used with attribute values, or you could use
> XSLT2 (If you
> have saxon 8)
>
> David
>
> ______________________________________________________________
> __________
> This e-mail has been scanned for all viruses by Star. The
> service is powered by MessageLabs. For more information on a proactive
> anti-virus service working around the clock, around the globe, visit:
> http://www.star.net.uk
> ______________________________________________________________
> __________
|