function convertirXMLADom(xml){var dom;if(window.ActiveXObject){dom=new ActiveXObject("Microsoft.XMLDOM");dom.async="false";dom.loadXML(xml);}else{try{parser=new DOMParser();dom=parser.parseFromString(xml,"text/xml");}catch(e){alert("Error al convertir el XML: "+e.message);}}return dom;}function convertirDomAXml(dom){if(window.ActiveXObject){return dom.xml;}else{return(new XMLSerializer()).serializeToString(dom);}}function vaciarElemento(elemento){var hijos=elemento.childNodes;while(hijos.length>0){elemento.removeChild(hijos[0]);}}function crearCData(contenido){return convertirXMLADom("<temporal><![CDATA["+contenido+"]]></temporal>").childNodes[0].childNodes[0];}function getElementosHijoDeTipo(padre,tipo,recursivo){var encontrados=new Array();tipo=tipo.toLowerCase();var hijos=padre.childNodes;for(var i=0;i<hijos.length;i++){if(hijos[i].nodeType==1){if(hijos[i].nodeName.toLowerCase()==tipo){encontrados.push(hijos[i]);}if(recursivo){encontrados=encontrados.concat(getElementosHijoDeTipo(hijos[i],tipo,true));}}}return encontrados;}function getPrimerElementoHijoDeTipo(padre,tipo,recursivo){var descendiente=null;tipo=tipo.toLowerCase();var hijos=padre.childNodes;for(var i=0;i<hijos.length&&descendiente==null;i++){if(hijos[i].nodeType==1){if(hijos[i].nodeName.toLowerCase()==tipo){descendiente=hijos[i];}if(descendiente==null&&recursivo){descendiente=getPrimerElementoHijoDeTipo(hijos[i],tipo,true);}}}return descendiente;}function getElementosHijoConAtributo(padre,atributo,valor,recursivo){var encontrados=new Array();var hijos=padre.childNodes;for(var i=0;i<hijos.length;i++){if(hijos[i].nodeType==1){if(hijos[i].getAttribute(atributo)==valor){encontrados.push(hijos[i]);}if(recursivo){encontrados=encontrados.concat(getElementosHijoConAtributo(hijos[i],atributo,valor,true));}}}return encontrados;}