Viewing It With IE5, Take 2
April 12, 1999
So, if we add a reference to the public DTD to our original XML
document, the result is
Examples/collection1pubdtd.xml.
What does the so-called validating XML parser in IE5 do
when it reads our new document? First it interprets the DTD and
then it processes the XML document.
XSL spec co-editor
James Clark wrote:
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.
However, as you'll read in the next section,
IE5 does not validate the document
in the way you might expect
(IE5b2 users will note this is a change in behavior).
We can prove this to ourselves by using an XML document that doesn't follow the rules of the
DTD it references. For this test we'll need three files from your download.
Examples/collection1bugsdtd.xml -
references a DTD containing a DTD syntax error
Examples/collection1bugs.dtd -
DTD with a syntax error
Examples/collection1pubbugs.xml -
invalid document with respect to public DTD
IE5 correctly detects the syntax error in the DTD (file 2 above)
which is referenced from file 1. However, my plan to show
you the wonderful job it did reporting very specific
validity errors (as it did in IE5b2)
failed.
Please refer to
list of bugs and their solutions
after you spend a little time trying to determine the three
errors in file 3,
Examples/collection1pubbugs.xml.
Adding the DTD to Our ML
Doing It With XML, Part 1
To Validate or Not To Validate
|