Subject: RE: [xsl] outputting an ampersand in an attribute From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Thu, 6 Aug 2009 00:41:31 +0100 |
You can do it with character maps but you don't need to do anything as messy as that. You want an attribute containing the Unicode character with code point xE003 (= decimal 57347), so write <xsl:attribute name="unicode" select="codepoints-to-string(57347)"/> and let the serializer do its job of serializing it: that's what it's good at. Regards, Michael Kay http://www.saxonica.com/ http://twitter.com/michaelhkay > -----Original Message----- > From: tom a [mailto:tasmito@xxxxxxxxx] > Sent: 05 August 2009 22:00 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] outputting an ampersand in an attribute > > I am generating svg documents and would like to output an > element like: > > <glyph unicode="" horiz-adv-x="833" > d="M124,348L124,249L709,249L709,348L124,348 Z"/> > > I need to generate the value of @unicode programmatically. > The difficulty, of course, is outputting the ampersand in @unicode. > > I started off by trying to disable output escaping: > > <xsl:variable name="char" as="xs:string"> > <xsl:value-of disable-output-escaping="yes" > select="concat(codepoints-to-string(38), position(), ';')"/> > </xsl:variable> > <xsl:attribute name="unicode" select="$char"/> > > But this came out as & > (followed by an integer and ; per the concat()) > > I then tried to use character maps: > > <xsl:character-map name="charmap"> > <xsl:output-character string="&" character="&"/> > </xsl:character-map> > > But the processor refuses to accept the lone ampersand in > @character. It generates the following message: > > "The entity name must immediately follow the '&' in the > entity reference." > > But since the entity name is generated at runtime, I have a problem. > > Any thoughts are greatly appreciated... > > Tom
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] outputting an ampersand i, Michael Sokolov | Thread | RE: [xsl] outputting an ampersand i, Michael Sokolov |
RE: [xsl] outputting an ampersand i, Michael Sokolov | Date | [no subject], Unknown |
Month |