Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > XML > disable-output-escaping

Reply
Thread Tools

disable-output-escaping

 
 
Troot
Guest
Posts: n/a
 
      03-01-2006
Hi All,

I was wondering if someone could clear this up for me. I have
constructed a sample for a bigger problem I'm having. So, given the xml
file:

<?xml-stylesheet href="test.xsl" type="text/xsl"?>
<test>
<p><![CDATA[<b>This is bolded</b>]]></p>
</test>

and the stylesheet:

<xsl:stylesheet version="1.0"
xmlnssl="http://www.w3.org/1999/XSL/Transform">
<xsl:template name="main" match="/">
<all_screens>
<xsl:value-of disable-output-escaping="yes" select="/test/p" />
</all_screens>
</xsl:template>
</xsl:stylesheet>

can some one twll me why the output is &lt;b&gt;This is
bolded&llt;/b&gt; instead of <b>This is bolded</b> (which is what I
thought disable-output-escaping is supposed to do)?

I've tried this with IE and Firefox and both make a mess of it.

Thanks
John

 
Reply With Quote
 
 
 
 
Troot
Guest
Posts: n/a
 
      03-01-2006
sorry, google seems to of interpreted the &-lt-; and &-gt-; sign at the
line "why the output is"

 
Reply With Quote
 
 
 
 
Martin Honnen
Guest
Posts: n/a
 
      03-01-2006


Troot wrote:


> <xsl:value-of disable-output-escaping="yes" select="/test/p" />


> can some one twll me why the output is &lt;b&gt;This is
> bolded&llt;/b&gt; instead of <b>This is bolded</b> (


> I've tried this with IE and Firefox and both make a mess of it.


disable-output-escaping as yes is an optional feature that does not have
to be supported and usually is not supported if the XSLT processor does
not serialize the result tree. Firefox does not support
disable-output-escaping at all.


--

Martin Honnen
http://JavaScript.FAQTs.com/
 
Reply With Quote
 
HoopsBhoy
Guest
Posts: n/a
 
      03-01-2006

Troot wrote:
> Hi All,
>
> I was wondering if someone could clear this up for me. I have
> constructed a sample for a bigger problem I'm having. So, given the xml
> file:
>
> <?xml-stylesheet href="test.xsl" type="text/xsl"?>
> <test>
> <p><![CDATA[<b>This is bolded</b>]]></p>
> </test>
>
> and the stylesheet:
>
> <xsl:stylesheet version="1.0"
> xmlnssl="http://www.w3.org/1999/XSL/Transform">
> <xsl:template name="main" match="/">
> <all_screens>
> <xsl:value-of disable-output-escaping="yes" select="/test/p" />


Dude I could kiss you. You've just helped me out in a major way!

 
Reply With Quote
 
Peter Flynn
Guest
Posts: n/a
 
      03-01-2006
Troot wrote:
> Hi All,
>
> I was wondering if someone could clear this up for me. I have
> constructed a sample for a bigger problem I'm having. So, given the xml
> file:
>
> <?xml-stylesheet href="test.xsl" type="text/xsl"?>
> <test>
> <p><![CDATA[<b>This is bolded</b>]]></p>
> </test>


Read what the FAQ has to say about CDATA first:
http://xml.silmaril.ie/authors/cdata/

> and the stylesheet:
>
> <xsl:stylesheet version="1.0"
> xmlnssl="http://www.w3.org/1999/XSL/Transform">
> <xsl:template name="main" match="/">
> <all_screens>
> <xsl:value-of disable-output-escaping="yes" select="/test/p" />
> </all_screens>
> </xsl:template>
> </xsl:stylesheet>
>
> can some one tell me why the output is &lt;b&gt;This is
> bolded&llt;/b&gt; instead of <b>This is bolded</b> (which is what I
> thought disable-output-escaping is supposed to do)?
>
> I've tried this with IE and Firefox and both make a mess of it.


Browsers don't support disable-output-escaping. I just ran the above
through Saxon and it produced:

<all_screens><b>This is bolded</b></all_screens>

But why go to all that bother? Why not just say

<xsl:template match="/">
<all_screens>
<xsl:apply-templates select="/test/p"/>
</all_screens>
</xsl:template>

<xsl:template match="b">
<b>
<xsl:apply-templates/>
</b>
</xsl:template>

and remove the CDATA section?

///Peter


///Peter
 
Reply With Quote
 
Troot
Guest
Posts: n/a
 
      03-02-2006

Peter Flynn wrote:
> Troot wrote:
> > Hi All,
> >
> > I was wondering if someone could clear this up for me. I have
> > constructed a sample for a bigger problem I'm having. So, given the xml
> > file:
> >
> > <?xml-stylesheet href="test.xsl" type="text/xsl"?>
> > <test>
> > <p><![CDATA[<b>This is bolded</b>]]></p>
> > </test>

>
> Read what the FAQ has to say about CDATA first:
> http://xml.silmaril.ie/authors/cdata/
>
> > and the stylesheet:
> >
> > <xsl:stylesheet version="1.0"
> > xmlnssl="http://www.w3.org/1999/XSL/Transform">
> > <xsl:template name="main" match="/">
> > <all_screens>
> > <xsl:value-of disable-output-escaping="yes" select="/test/p" />
> > </all_screens>
> > </xsl:template>
> > </xsl:stylesheet>
> >
> > can some one tell me why the output is &lt;b&gt;This is
> > bolded&llt;/b&gt; instead of <b>This is bolded</b> (which is what I
> > thought disable-output-escaping is supposed to do)?
> >
> > I've tried this with IE and Firefox and both make a mess of it.

>
> Browsers don't support disable-output-escaping. I just ran the above
> through Saxon and it produced:
>
> <all_screens><b>This is bolded</b></all_screens>
>
> But why go to all that bother? Why not just say
>
> <xsl:template match="/">
> <all_screens>
> <xsl:apply-templates select="/test/p"/>
> </all_screens>
> </xsl:template>
>
> <xsl:template match="b">
> <b>
> <xsl:apply-templates/>
> </b>
> </xsl:template>
>
> and remove the CDATA section?
>
> ///Peter
>
>
> ///Peter


Thanks Peter and Martin, thats very helpful ;o)

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off




Advertisments