Re: Error (?) in xhtml-arch-1.mod

Gary Bentley <gb@opengroup.org> wrote:

> When trying to access the XHTML DTD:
> 
> 	http://www.w3c.org/TR/xhtml-basic/xhtml-basic10.dtd

A side issue: please use "www.w3.org" to refer to the W3C Web site.

> the XML parser I am using eventually spits back an error saying that the 
> Processing Instruction cannot contain the character ":".  The error cropped 
> up in:
> 
> 	http://www.w3c.org/TR/xhtml-basic/xhtml-arch-1.mod	
			<snip/>

Jesse McCarthy <mccarthy36@earthlink.net> wrote:

> Gary, I would tend to think that your parsers are in error as according to 
> the XML 1.0 specification the colon ":" is unambiguously allowed in 
> processing instruction targets, among other things. 

Actually the issue is not that simple.  As Jesse said, ":" is allowed
in XML 1.0 [1], but not allowed in "Namespaces in XML" [2], and
architectural forms support requires the PI to appear in the form
"<?IS10744:arch".  This is one of many places where DTD and namespaces
don't work well together.

A workaround would be to disable the namespace support of your parser
when you process the XHTML Basic DTD (Xerces has that option), or
you could ignore the XHTML Base Architecture Module if you don't
need it (as it should have been ignored by default).

[1] http://www.w3.org/TR/REC-xml#NT-PITarget
[2] http://www.w3.org/TR/REC-xml-names/#Conformance

Regards,
-- 
Masayasu Ishikawa / mimasa@w3.org
W3C - World Wide Web Consortium

Received on Wednesday, 5 December 2001 07:19:28 UTC