W3C home > Mailing lists > Public > www-html@w3.org > June 2002

Re: [xml-dev] Error in XHTML Modularisation Recommendation? (was: RE: [xml-dev] XHTML modularisation causes strange error with MSXML)

From: Rick Jelliffe <ricko@allette.com.au>
Date: Sat, 29 Jun 2002 22:20:22 +1000
Message-ID: <01a301c21f67$5781c490$4bc8a8c0@AlletteSystems.com>
To: <www-html@w3.org>, <xml-dev@lists.xml.org>

From: "MAISONNY Benoit" <Benoit.MAISONNY@eurocontrol.int>

> So: that post explains the situation for the entity "lt", which seems to be
> bogus indeed in the XHTML Modularisation Specification (I would like to know
> the HTML gurus' opinion on this one). My (very similar) problem was in fact
> with the "amp" entity, but of course the lt one popped up right after.

> Solution: I simply redeclared lt and amp in my "driver" file like this:
> <!ENTITY lt "&#38;#60;">
> <!ENTITY amp "&#38;#38;">
> That was enough for MSXML to accept my modularised DTD.

Those definitions are the ones recommended  in the XML spec.  

"If the entities gt, apos, or quot are declared, they must be declared as internal entities whose replacement text is the single character being escaped (or a character reference to that character; the double escaping here is unnecessary but harmless)."

> I did further tests with the "bogus" DTD and the other parsers. I think it
> can be interesting to report that here. I simply added "&lt;" somewhere in
> my sample XML instance and tried to validate it.

The XML spec in s .4.6 says
"All XML processors must recognize these entities whether they are declared or not. "
about lt, gt, amp, apos, and quot.  

So I believe it is an error for a parser to complain that there is no definition.

Rick Jelliffe
Received on Saturday, 29 June 2002 08:06:33 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:05:59 UTC