<?xml-stylesheet type="text/xsl" href="..."?>: the disable-output-escaping attribute is not supported in their implementation of <xsl:value-of>.
Immediately an angry ball burned in my belly, especially after seeing the script workaround, but then I read the excellent Comment #93 by Grant Vergottini and found I had nothing more to add:
Today I had a bug filed against my website relating to this. I spent countless hours trying to understand why disable-output-escaping wasn't working in my application.Reason number four is my particular issue, since I'm working heavily with RSS. And I mean the true number four, not the extra "fourth" which is meant to be "fifth"; obviously he had trouble containing his temper as well.
Then I found this thread and was very disappointed by what I found.
First of all, it strikes me that the reasons for Firefox not implementing this are too esoteric. The common implementation - as generally implemented throughout the industry - are to implement this feature. That, in my mind makes it a general part of the standard, It should be implemented even if there is an obscure argument - that 99% of developers (myself included) won't understand for not implementing it.
Second, this feature is silently not implemented so that I, and countless others, end up wasting many many hours trying to track down the issue.
Third, much of the arguments against implementing this seem be based around a holier-than-thou attitude that the input documents shouldn't have been written that way to begin with. Except I am dealing with an external feed (that I can't change) and it is correctly implementing the RSS standard (and the Atom standard calls for this too). Its seems invalid to argue against this.
Fourth, the reason that RSS and Atom feeds call for HTML elements to be escaped in content is that HTML, unlike XML, is not as rigorous in its structure. A perfectly good HTML fragment need not be perfectly good XML - and not all HTML tools output XML-valid HTML. While this looseness is frustrating to developers, that looseness is something that browsers must work with - it is a very big part of the success of HTML for the masses.
Fourth, the JavaScript workarounds results in a mess in my code. I don't know how many times I have seen Firefox zealots criticize the extremes one must go to to get CSS in IE6 to work correctly. Don't throw stones... comes to mind.
Sixth, it seems that everyone over the years have dug their heals in so much on this issue that it has gone beyond a rational argument - people are arguing for the sake of preserving their opinion rather than is doing what is the right thing to do. That is irresponsible on many levels and it tarnishes the image of Firefox.
Please correct this bug - it would be the right thing to do - even if it can be argued that it isn't the correct thing to do.
References:
- Digg - Mozilla refuses to fully implement XSLT in Firefox
- Firefox doesn't support disable-output-escaping feature
- XSLT, CDATA and FireFox
- XSLT <xsl:value-of> Element @ W3Schools.com
3 comments:
Try the Firefox JS workaround/fix I posted on Bugzilla:
https://bugzilla.mozilla.org/show_bug.cgi?id=98168
Be interested to hear how it does with all your RSS Feeds.
Mark @ AjaMyAjax.com
There's a pretty simple workaround for this - change value-of to copy-of when copying across the xml content using xslt. If that's too brief, there's full instructions at Glass News that should help. Yes it's my website but I'm posting this to help, I promise!
Thanks Bobble, good work!
Post a Comment