Parser od Microsoftu je součástí Internet Exploreru 5.0. Pokud tedy máme nainstalován Internet Explorer, máme k dispozici i parser. Ve standardní verzi IE 5.0 je k dispozici pouze parser, který kontroluje správnou strukturovanost dokumentu, ale ne jeho validitu. Nová verze parseru, která umí kontrolovat dokument podle DTD a schémat je k dispozici na adrese http://msdn.microsoft.com/downloads/webtechnology/xml/msxml.asp.
Parser Microsoftu je k dispozici ve formě COM objektu. Můžeme ho tedy využívat přímo v našich programech. K parseru však není standardně dodáván žádný nástroj, který by umožnil jeho ruční spuštění z příkazové řádky. Nic nám však nebrání v tom, abychom si takový program napsali.
Pro vytvoření instance komponenty a její spuštění je optimální prostředí Windows Scripting Host (WSH), které umožňuje tvorbu dávkových souborů. WSH je standradní součástí Windows 98 a Windows 2000. Do ostatních verzí Windows se dá instalovat dodatečně. My si vytvoříme jednoduchou dávku msxml.js pro spouštění parseru.
var xml = WScript.CreateObject("MSXML2.DOMDocument"); xml.async = false; if (WScript.Arguments.Count() == 0) { WScript.Echo("Mus■te zadat jm←no souboru ke kontrole!!!"); WScript.Quit(1); } xml.load(WScript.Arguments(0)); var err = xml.parseError; if (err.errorCode != 0) { WScript.Echo(err.srcText); var s = ""; for (i=1; i<err.linepos; i++) s += "-"; s += "^"; WScript.Echo(s); WScript.Echo(err.url + ":" + err.line + ":" + err.linepos + ":" + err.reason); }
Soubor bychom měli uložit někam, kam ukazuje proměnná PATH. Mají-li se chybová hlášení parseru vypisovat na příkazovou řádku, a ne do samostatného okna, je dobré zadat na příkazové řádce příkaz:
cscript //H:cscript
Parser pak spustíme pomocí příkazu:
msxml dokument