1. MSXML
Nella versione 5.0 di Internet Explorer è supportata una istanziazione diretta nello script degli oggetti ActiveX tramite la seguente sintassi (che utilizza codici mnemonici anziché numerici):
var file_XML = new ActiveXObject("Microsoft.XMLDOM");
Questa sintassi è equivalente (ed alternativa in IE5) a quella delle versioni precedenti, che richiedeva due passaggi:
nel documento HTML
OBJECT
ClassID = "clsid: CFC399AF-D876-11D0-9C10-00C04FC99C8E"
ID = "MSXML"
Name="xmlDoc">
/OBJECT>
nello script:
variabile = MSXML
L'ActiveX richiamato una volta era già presente in Windows, ma andava installato a mano, oggi è compreso in MSXML.dll (assieme all'elaboratore XSL), che si installa automaticamente con IE5. tramite MSXML.dll sono resi disponibili in Windows:
API del DOM per scripting (Javascript e Vbscript) e programmazione (C++ e Java)
invio e ricezione, in connessione HTTP, di file XML
tipo MIME "text/xml", tipo file XML
Con il comando new viene richiamato l'API, il cui primo utilizzo è il metodo per l'esecuzione della parserizzazione del sorgente XML:
file_XML.async = false;
file_XML.load (URL)
La proprietà async permette il download sincrono. Segue poi la dichiarazione della radice dell'albero:
var root = file_XML.documentElement;
Sia new (o meglio questo suo uso specifico per XML) che load sono comandi
specifici Microsoft. D'altra parte DOM non definisce un metodo standard per creare un nuovo oggetto Document e caricarne il contenuto. Microsoft aggiunge anche altre interfacce proprietarie che estendono il DOM standard:
XMLDOMParseError: interfaccia dell'oggetto ActiveX per segnalazione di errori nella parserizzazione. Attributi:
- validateOnParse: può essere dichiarata come booleano per attivare o meno la validazione durante la parserizzazione. L'attivazione influisce sui risultati segnalati dagli attributi seguenti.
- parseError.errorCode: indice numerico del tipo di errore, 0 indica assenza di errore
- parseError.reason: motivo dell'errore, classi standard inserite da Microsoft con testo esplicativo
- parseError.line: linea di ubicazione dell'errore nel file XML
- parseError.srcText: porzione di ubicazione dell'errore nel file XML
Homepage Microsoft Developer's Network
2. Altri parserizzatori
Esistono parecchi parserizzatori gratuiti, di solito scritti in Java o C++. Fra i creatori si possono annoverare molti istituti di ricerca, IBM e Sun (in loro pacchetti di sviluppo scaricabili).