[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Re: avoiding disable-output-escaping, how to outpu

Subject: Re: Re: avoiding disable-output-escaping, how to output M$ wierd syntax
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Wed, 31 Aug 2005 14:56:54 -0400
css disable link
Hi,

At 01:59 PM 8/31/2005, you wrote:
> Even though it makes me quesy, it should be possible to write this
> just as a comment.
>
>> <xsl:text disable-output-escaping="yes"><!--[if IE]></xsl:text>
>> <link rel="stylesheet" type="text/css" href="/~rodney/times/css/ieonly.css" media="screen" />
>> <xsl:text disable-output-escaping="yes"><![endif]--></xsl:text>
>
> as the comment that it really desires to be should just be:
>
> <xsl:comment>[if IE]><link rel="stylesheet" type="text/css"
> href="/~rodney/times/css/ieonly.css" media="screen"
> /><![endif]</xsl:comment>



Well, the link element gets parsed as a node and the comment output does not have any link in it. It (xsltproc) also tries to parse "<![endif]" and pukes on the ! in the element name. It would also puke if it ever got to the missing >.

Yes. Details Jon missed. Actually the ">" would be fine; it's only the "<" that will be a problem.


Escape it as &lt; and you'll be fine there too.

  But a little modification give
this:

<xsl:comment><![CDATA[[if IE]><link rel="stylesheet" type="text/css" href="/~rodney/times/css/ieonly.css" media="screen" /><![endif]]]></xsl:comment>

which does produce the same output.

So would


<xsl:comment>[if IE]>&lt;link rel="stylesheet" type="text/css" href="/~rodney/times/css/ieonly.css" media="screen" />&lt;![endif]</xsl:comment>

  But I'm not sure this is better
markup than using "disable-output-escaping".

It is.


  Specifically, if I had
to use variables inside the CDATA section; I'd be up a creek.

You can include them if you don't escape the entire section from being parsed with the CDATA marked section (as shown above), but only escape the open markup delimiters (< and &).


It's actually *very* rare to need disable-output-escaping. Almost without exception it turns out there's an easier way; and when there isn't it's usually for reasons outside the XSLT.

Cheers,
Wendell


====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.