- From: Leif Halvard Silli <xn--mlform-iua@xn--mlform-iua.no>
- Date: Mon, 1 Feb 2010 07:19:24 +0100
- To: www-validator@w3.org
The validator doesn't consider the following code as valid HTML4 (HTML
four):
<script type="text/javascript">//<![CDATA[
document.write("<aa><bb></bb></aa>");
//]]></script>
At the same time, this is considered valid HTML 4 (four) (but invalid
HTML5 (five)):
<p><![CDATA[
<aa><bb></bb></aa>
]]></p>
Both code examples should be considered valid HTML4 (four) syntax.
There are 3 reasons why this bug is important to fix:
(1) That the validator wrongly stamps the first example as invalid
creates the impression that it is very difficult to embed javascript in
a way that is valid both inside XHTML and inside HTML4.
(2) In addition, it is also useful within HTML4! Because: the HTML4
specification (as well as the validator) requires that end tags inside
the <script> element are escaped - in order to be valid SGML. The HTML4
spec gives the following example as example of _one_ way that one can
escape the code so that the code is valid SGML both before and after
script execution: "<\/b>". *However*, the <![CDATA[ ... ]]> syntax for
marking up a section where escaping is not necessary is documented in
the HTML4 specification as well. And is safe - and much simpler - to
the <![CDATA[ ... ]]> escape method than making sure that every "/" is
escaped.
(3) Of course, that user agents doesn't care, is another matter. But
that issue is only relevant w.r.t. embedding JavaScript. For other
scripts/languages that are embedded inside <script>, then the <![CDATA[
... ]]> syntax can be useful. And, in fact, such a language is in fact
the background for filing this bug. Thus, solving this bug matters for
the extensibility of HTML4 (four)!
A bug has been filed - where all the above is documented with links to
the HTML4 spec etc:
http://www.w3.org/Bugs/Public/show_bug.cgi?id=8852
I linked the bug to component "Parser" - I don't know if that was
correct. Please help me to make it correct.
And, of of course, when can the bug be expected to be fixed? ;-)
--
leif halvard silli
Received on Monday, 1 February 2010 06:19:57 UTC