IE has a habit of crashing randomly after certain XML operations fail. For example, it is not unusual for IE to crash when attempting to apply an invalid XSLT against a large XML file. The same appears to be true for invalid XSchema validations. The solution is to close all running instances of IE and try again. I have seen FrontPage exhibit 'weird' behaviour in these circumstances as well, but not crash (e.g. weird = unable to close a document).
I wrote a short WScript to perform XML validation:
if (WScript.Arguments.length != 1) {
WScript.Echo("Usage: cscript validator.js");
WScript.Quit();
}
var url = WScript.Arguments(0);
var document = new ActiveXObject("Msxml2.DOMDocument.5.0");
if (document.load(url)) {
WScript.Echo("The file is valid.\n" + url);
} else {
WScript.Echo(
"Unable to load the document.\n"
+ document.parseError.reason
+ "\n" + url);
}
When using it, I discovered that MSXML appears to ignore the XML Schema associated with a document when there is a DTD present.