Subject: Re: Why Doesn't IE5 use the DTD to Validate?
From: "Jelks Cabaniss" <jelks@xxxxxxxx>
Date: Fri, 2 Apr 1999 14:20:39 -0500
|
James Clark wrote:
> > How can you apply the rule if you haven't read the DTD?
> Reading the DTD and validating aren't the same thing. Unless a document
> has standalone="yes", the browser should always read a provided DTD so
> that it can correctly
>
> - - default attributes
> - - normalize attribute values
> - - expand entity references
>
> None of these things involve validation.
"should always read a provided DTD" ... including the *external* subset??? If
you have
<?xml version="1.0"?>
<!DOCTYPE masterpiece SYSTEM "external.dtd" [
<!ENTITY ref "World">
]>
<masterpiece>Hello &ref;.</masterpiece>
and "external.dtd" contains only
<!ATTLIST masterpiece
author CDATA #FIXED "Dennis Ritchie"
>
what's going to happen in a non-validating processor? Section 5.1 of the
recommendation says
Non-validating processors are required to check only the
document entity, including the entire internal DTD subset,
for well-formedness. While they are not required to check the
document for validity, they are required to process all the
declarations they read in the internal DTD subset ...
That suggests a non-validating processor can ignore the external subset, and
thus not fully "read the DTD". So how does it pick up those default attributes?
/Jelks
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|