if (!xml) var xml = {};

xml.parseXMLString = function(str)
{
	try{ //Internet Explorer
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async="false";
		xmlDoc.loadXML(str);
	}
	catch(e){
		try{ //Firefox, Mozilla, Opera, etc.
			parser=new DOMParser();
			xmlDoc=parser.parseFromString(str,"text/xml");
		}
	  	catch(e) {alert(e.message)}
	}
	try {
		return(xmlDoc);
	}
	catch(e) {alert(e.message)}
}

xml.toString = function(doc){
	if(!doc) return (null);
	if (!doc.xml)
	{
		var serializer = new XMLSerializer();
		return(serializer.serializeToString(doc));
	}
	else return(doc.xml);	
}

xml.loadXML = function(filename){
	try{ //Internet Explorer
	  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
	}
	catch(e){
		try{ //Firefox, Mozilla, Opera, etc.
			xmlDoc=document.implementation.createDocument("","",null);
		}
	  	catch(e) {alert(e.message)}
	}
	try 
	{
		xmlDoc.async=false;
		xmlDoc.load(filename);
		return(xmlDoc);
	}
	catch(e) {alert(e.message)}
}
