// Funcion para  leer un archivo XML de forma sincrona desde JavaScript.
// La funcion recive como parametro la url del archivo aXML a leer.
// y devuelve el objeto XML leido. el cual se podra manipular a traves de DOM XML.


function loadXML(xmlfile){
	var objeto = new Object();
	mixmlFile=xmlfile //+"?bustcache="+new Date().getTime(); // Para evitar cache.
	// Codigo para IE
	if (window.ActiveXObject){
		var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.3.0");
		xmlDoc.async = false;
		xmlDoc.load(mixmlFile);
		if (xmlDoc.parseError.errorCode != 0) {
			var myErr = xmlDoc.parseError;
			alert("Error: " + myErr.reason);
		} 
		return(xmlDoc);
	}
	// codigo para Mozilla, etc.
	else if (document.implementation && document.implementation.createDocument){
		var req = new XMLHttpRequest();
		req.open('GET', mixmlFile, false); 
		//req.send(null);
		req.send("");
		if (req.readyState == 4) {
			// Solo si todo OK.
			// OJO.
			// Comprobamos si el servidor nos envia la informacion con la cabecera text/xml
			// porque si no es asi, el objeto xml de la respuesta req.responseXML será NULO.
			if (req.getResponseHeader("Content-Type")!="text/xml"){
				// Si la cabecera no es text/xml, tomamos el valor responseText que tendra como una cadena de texto el objeto XML y lo parseamos a un objeto XML.
				var parser=new DOMParser();
				var doc=parser.parseFromString(req.responseText,"text/xml");
				return(doc);
			}
			else return(req.responseXML);
		}
		else {
			alert('Transación interrumpida');
			return(false);
		}
	}
	else {
		alert('Su navegador no soporta esta funcion loadXML()');
		return(false);
	}
}

