[
Lists Home |
Date Index |
Thread Index
]
> > I'm not sure how many people read those messages directly, but I'd
> > certainly be unhappy if <bar /> got past the validator when I
> > was expecting
> > <foo /> as in Clark's point 7.
>
> Both the XmlValidatingReader in the .NET framework and MSXML will throw
> errors because no type definition exists for the <bar /> element.
One of the parsers I tried it with was the latest version of MSXML (which I
generally find to be excellent, BTW).
Here's example.xml:
<bar/>
Here's example.xsd:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
xmlns="http://www.example.com"
targetNamespace="http://www.example.com">
<xs:element name="foo">
<xs:complexType/>
</xs:element>
</xs:schema>
Here's the example.js I used to perform the validation:
var schemas = new ActiveXObject("MSXML2.XMLSchemaCache.4.0");
schemas.add("http://www.example.com", "example.xsd");
var x = new ActiveXObject("MSXML2.DOMDocument.4.0");
x.async = false;
x.schemas = schemas;
x.validateOnParse = true;
x.load("example.xml");
if (x.parseError.errorCode != 0)
WScript.Echo("invalid: " + x.parseError.reason);
else
WScript.Echo("valid");
When I run example.js, it says "valid". Note that if you add
xmlns="http://www.example.com" to <bar/>, then it does report it as invalid.
Is there something else I should have done to make it report the example as
invalid?
James
|