var xs, xd;
main();
function main()
{
try {
xs = new ActiveXObject("MSXML2.XMLSchemaCache.5.0");
xd = new ActiveXObject("MSXML2.DOMDocument.5.0");
}
catch (e) {
alert("Mirosoft XML Core Services (MSXML) 5.0 for Microsoft Office is not installed.\n"
+"Download and install MSXML 5.0 from http://msdn.microsoft.com/xml\n"
+"before continuing.");
return;
}
try {
xs.add("urn:books", "validateNode.xsd");
xd.schemas = xs;
xd.async = false;
xd.validateOnParse = false;
}
catch (e) {
alert("Failed to add to schema cache: "+e.description);
return;
}
try {
xd.load("validateNode.xml");
}
catch (e) {
alert("can't load validateNode.xml : " + e.description);
return;
}
var err = xd.validate();
if (err.errorCode != 0 )
alert("invalid dom: \n" + err.reason);
else
alert("dom is valid:\n" + xd.xml);
var nlist = xd.selectNodes("//book");
for (var node = nlist.nextNode(); node!=null; node=nlist.nextNode())
{
var err = xd.validateNode(node);
if (err.errorCode != 0)
alert("invalid node:\n" + err.reason);
else
alert(node.xml);
}
}
function alert(msg)
{
WScript.echo(msg);
}
Try It!
Note Under operating systems other than Windows 2000 or Windows XP, you might need to install Windows Scripting Host (wscript.exe), if it is not already installed.