datatype-xml-parse.js revision f6b714ae8d0f263cd5e682a1a80801c259b55c30
1185N/AYUI.add('datatype-xml-parse', function(Y) {
1185N/A
1185N/A/**
1185N/A * Parse XML submodule.
1185N/A *
1185N/A * @module datatype
1185N/A * @submodule datatype-xml-parse
1185N/A * @for DataType.XML
1185N/A */
1185N/A
1185N/Avar LANG = Y.Lang;
1185N/A
1185N/AY.mix(Y.namespace("DataType.XML"), {
1185N/A /**
1185N/A * Converts data to type XMLDocument.
1185N/A *
1185N/A * @method parse
1185N/A * @param data {String} Data to convert.
1220N/A * @return {XMLDoc} XML Document.
1185N/A */
1185N/A parse: function(data) {
1185N/A var xmlDoc = null;
1185N/A if(LANG.isString(data)) {
1185N/A try {
1185N/A if(!LANG.isUndefined(ActiveXObject)) {
1185N/A xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
1185N/A xmlDoc.async = false;
1185N/A xmlDoc.loadXML(data);
1185N/A }
1185N/A }
1190N/A catch(ee) {
1185N/A try {
1185N/A if(!LANG.isUndefined(DOMParser)) {
1185N/A xmlDoc = new DOMParser().parseFromString(data, "text/xml");
1185N/A }
1185N/A }
1185N/A catch(e) {
1185N/A }
1185N/A }
1185N/A }
1185N/A
1185N/A if( (LANG.isNull(xmlDoc)) || (LANG.isNull(xmlDoc.documentElement)) || (xmlDoc.documentElement.nodeName === "parsererror") ) {
1185N/A }
1185N/A
1185N/A return xmlDoc;
1190N/A }
1185N/A});
1185N/A
1185N/A// Add Parsers shortcut
1185N/AY.namespace("Parsers").xml = Y.DataType.XML.parse;
1190N/A
1185N/A
1185N/A
1185N/A
1185N/A}, '@VERSION@' );
1185N/A