RE: Error in XHTML Modularisation Recommendation? (was: RE: [x
From: Rick Jelliffe [mailto:ricko@a...] > From: "MAISONNY Benoit" <Benoit.MAISONNY@e...> > > > 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 "&#60;"> > > <!ENTITY amp "&#38;"> > > That was enough for MSXML to accept my modularised DTD. > > Those definitions are the ones recommended in the XML spec. Rick is right. Here is the link that he quotes below: http://www.w3.org/TR/2000/REC-xml-20001006#sec-predefined-ent So it is clear what XML 1.0 says. I understand that: <!ENTITY lt "<"> is correct (single escaping) <!ENTITY lt "&#60;"> is correct (double escaping) XHTML 1.0 defines these "special entities" correctly, as per XML 1.0. But XHTML Modularisation modifies them: http://www.w3.org/TR/xhtml-modularization/dtd_module_defs.html#a_module_XHTM L_Special_Characters In fact, <!ENTITY lt "&<"> is correct as well, but is not what is intended by < It is replaced by &< in a document. Am I wrong to say that this shouldn't generate a validation error? After all, it is the same as "&<" in a XHTML 1.0 document, for instance. I quote the comment from xhtml-special.ent: "Revisions: 2000-10-28: added ' and altered XML Predefined Entities for compatibility" Many parsers don't like this revision, as I reported earlier. Benoit > > "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 > "<" 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. > > Cheers > Rick Jelliffe > > > ----------------------------------------------------------------- > The xml-dev list is sponsored by XML.org <http://www.xml.org>, an > initiative of OASIS <http://www.oasis-open.org> > > The list archives are at http://lists.xml.org/archives/xml-dev/ > > To subscribe or unsubscribe from this list use the subscription > manager: <http://lists.xml.org/ob/adm.pl> >
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format