Subject: Re: [xsl] disable-output-escaping for attributes From: Victor <xsl-list@xxxxxxxxx> Date: Tue, 31 May 2005 23:56:29 +0200 |
Do you remember which version supported the now removed feature. I would prefer to use the "deprecated" version instead of rewriting all over.Sorry, the documentation is out of date. disable-output-escaping was added to xsl:attribute in a draft of XSLT 2.0 but was subsequently removed. It's no longer supported in Saxon, and neither is the Saxon extension saxon:disable-output-escaping. In Saxon 8.x, use character maps.
-----Original Message-----
From: Victor [mailto:xsl-list@xxxxxxxxx] Sent: 31 May 2005 22:09
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] disable-output-escaping for attributes
I tried it with saxon 6.5.3 but it didn't seem to work.
After reading through the docs I found this in the docs for xsl:attribute:
The attribute |disable-output-escaping| is new in XSLT 2.0. If this is set to the value "yes", then the attribute value will be output as-is, without escaping of special characters. This affects both the normal XML escaping (e.g. of ampersand) and the special URL escaping that occurs with non-ASCII characters in HTML URL attributes (e.g. href) which normally causes a space to be output as %20. Saxon's extension attribute |saxon:disable-output-escaping|, which served the same purpose in previous Saxon releases, is no longer available.
But I can't get it to work either way.
Victor
Michael Kay wrote:
You can do this in XSLT 2.0 by using character maps. Assigntwo special
characters (for example, #xAB and #x BB) to the role of "<%"and "%>" and
then define a character map to replace them on serialization.related overhead
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: Victor [mailto:xsl-list@xxxxxxxxx] Sent: 30 April 2005 16:12
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: [xsl] disable-output-escaping for attributes
Some weeks ago I began converting some HTML pages which contain asp tags to xml to have only the structure without any layout
text nodes.(to easy conversion to new layouts via XSL).
Some of these asp tags are "text" or could be treated as
no one hasThese are the nodes I tested my xsl templates with.
However some of the HTML elements use the result of asp calls as values for attributes.
After many, many pages of really bad HTML have been manually converted I noticed to my horror that these attributes were actually escaped where I didn't want them to.
After reading a lot of other post I am lost. It seems that
thought about someone needing unescaped text as an attribute value and therefore "disable-output-escaping" does not work for attibutes.
Does a tool exist which supports a non-compliant mode to get the things done? Or is there a workaround?
Thanks, Victor
old HTML:
<select name="myValue">
<option valu="0" selected="<% is_sel("myValue","0","selected")%>"
0</option><option valu="1" selected="<% is_sel("myValue","1","selected")%>"
1</option></select>
XML:
<select name="myValue">
<option valu="0">
<attribute name="selected"><![CDATA[<% is_sel("myValue","0","selected")%>]]></attribute>
<text>0</text>
</option>
<option valu="1">
<attribute name="selected"><![CDATA[<% is_sel("myValue","1","selected")%>]]></attribute>
<text>1</text>
</option>
</select>
XSL:
<xsl:template match="attribute">
<xsl:attribute name="{@name}"><xsl:value-of select="." disable-output-escaping="yes"/></xsl:attribute>
</xsl:template>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] disable-output-escaping f, Michael Kay | Thread | RE: [xsl] disable-output-escaping f, Michael Kay |
RE: [xsl] xsl:number and conditiona, Michael Kay | Date | RE: [xsl] Navigating through the do, Michael Kay |
Month |