~jonas-drange/ubuntu-webcatalog/tos-redirect

« back to all changes in this revision

Viewing changes to src/webcatalog/static/yui/3.10.3/build/dataschema-xml/dataschema-xml-coverage.js

  • Committer: Tarmac
  • Author(s): Stephen Stewart
  • Date: 2013-06-26 09:19:32 UTC
  • mfrom: (184.1.4 ubuntu-global-nav)
  • Revision ID: tarmac-20130626091932-8urtuli368k8p7ds
[r=beuno,jonas-drange] add ubuntu global nav to apps.ubuntu.com

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
YUI 3.10.3 (build 2fb5187)
 
3
Copyright 2013 Yahoo! Inc. All rights reserved.
 
4
Licensed under the BSD License.
 
5
http://yuilibrary.com/license/
 
6
*/
 
7
 
 
8
if (typeof __coverage__ === 'undefined') { __coverage__ = {}; }
 
9
if (!__coverage__['build/dataschema-xml/dataschema-xml.js']) {
 
10
   __coverage__['build/dataschema-xml/dataschema-xml.js'] = {"path":"build/dataschema-xml/dataschema-xml.js","s":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0,"74":0,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0},"b":{"1":[0,0],"2":[0,0,0],"3":[0,0,0],"4":[0,0],"5":[0,0,0,0,0,0],"6":[0,0],"7":[0,0],"8":[0,0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[0,0],"13":[0,0],"14":[0,0],"15":[0,0],"16":[0,0],"17":[0,0],"18":[0,0],"19":[0,0],"20":[0,0],"21":[0,0],"22":[0,0],"23":[0,0],"24":[0,0],"25":[0,0],"26":[0,0],"27":[0,0],"28":[0,0],"29":[0,0],"30":[0,0]},"f":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0},"fnMap":{"1":{"name":"(anonymous_1)","line":1,"loc":{"start":{"line":1,"column":26},"end":{"line":1,"column":45}}},"2":{"name":"(anonymous_2)","line":116,"loc":{"start":{"line":116,"column":11},"end":{"line":116,"column":34}}},"3":{"name":"(anonymous_3)","line":143,"loc":{"start":{"line":143,"column":23},"end":{"line":143,"column":48}}},"4":{"name":"(anonymous_4)","line":180,"loc":{"start":{"line":180,"column":21},"end":{"line":180,"column":56}}},"5":{"name":"(anonymous_5)","line":254,"loc":{"start":{"line":254,"column":29},"end":{"line":254,"column":40}}},"6":{"name":"(anonymous_6)","line":276,"loc":{"start":{"line":276,"column":17},"end":{"line":276,"column":50}}},"7":{"name":"(anonymous_7)","line":300,"loc":{"start":{"line":300,"column":16},"end":{"line":300,"column":58}}},"8":{"name":"(anonymous_8)","line":324,"loc":{"start":{"line":324,"column":18},"end":{"line":324,"column":44}}},"9":{"name":"(anonymous_9)","line":346,"loc":{"start":{"line":346,"column":19},"end":{"line":346,"column":55}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":383,"column":48}},"2":{"start":{"line":19,"column":0},"end":{"line":27,"column":14}},"3":{"start":{"line":29,"column":0},"end":{"line":378,"column":2}},"4":{"start":{"line":117,"column":8},"end":{"line":118,"column":49}},"5":{"start":{"line":120,"column":8},"end":{"line":128,"column":9}},"6":{"start":{"line":122,"column":12},"end":{"line":122,"column":73}},"7":{"start":{"line":125,"column":12},"end":{"line":125,"column":81}},"8":{"start":{"line":127,"column":12},"end":{"line":127,"column":67}},"9":{"start":{"line":130,"column":8},"end":{"line":130,"column":24}},"10":{"start":{"line":144,"column":8},"end":{"line":146,"column":38}},"11":{"start":{"line":148,"column":8},"end":{"line":163,"column":9}},"12":{"start":{"line":149,"column":12},"end":{"line":149,"column":73}},"13":{"start":{"line":150,"column":12},"end":{"line":152,"column":13}},"14":{"start":{"line":151,"column":16},"end":{"line":151,"column":107}},"15":{"start":{"line":161,"column":12},"end":{"line":161,"column":68}},"16":{"start":{"line":165,"column":8},"end":{"line":165,"column":20}},"17":{"start":{"line":182,"column":8},"end":{"line":263,"column":9}},"18":{"start":{"line":183,"column":12},"end":{"line":183,"column":176}},"19":{"start":{"line":188,"column":12},"end":{"line":188,"column":122}},"20":{"start":{"line":191,"column":12},"end":{"line":248,"column":13}},"21":{"start":{"line":193,"column":16},"end":{"line":195,"column":30}},"22":{"start":{"line":194,"column":19},"end":{"line":194,"column":68}},"23":{"start":{"line":197,"column":16},"end":{"line":197,"column":54}},"24":{"start":{"line":202,"column":16},"end":{"line":232,"column":17}},"25":{"start":{"line":203,"column":20},"end":{"line":203,"column":47}},"26":{"start":{"line":206,"column":20},"end":{"line":231,"column":21}},"27":{"start":{"line":207,"column":24},"end":{"line":207,"column":96}},"28":{"start":{"line":209,"column":24},"end":{"line":209,"column":33}},"29":{"start":{"line":210,"column":24},"end":{"line":210,"column":59}},"30":{"start":{"line":211,"column":24},"end":{"line":211,"column":37}},"31":{"start":{"line":214,"column":25},"end":{"line":231,"column":21}},"32":{"start":{"line":215,"column":24},"end":{"line":215,"column":72}},"33":{"start":{"line":216,"column":24},"end":{"line":216,"column":99}},"34":{"start":{"line":219,"column":25},"end":{"line":231,"column":21}},"35":{"start":{"line":220,"column":24},"end":{"line":220,"column":82}},"36":{"start":{"line":221,"column":24},"end":{"line":221,"column":83}},"37":{"start":{"line":224,"column":25},"end":{"line":231,"column":21}},"38":{"start":{"line":225,"column":24},"end":{"line":230,"column":25}},"39":{"start":{"line":226,"column":28},"end":{"line":229,"column":29}},"40":{"start":{"line":227,"column":32},"end":{"line":227,"column":64}},"41":{"start":{"line":228,"column":32},"end":{"line":228,"column":39}},"42":{"start":{"line":234,"column":16},"end":{"line":247,"column":17}},"43":{"start":{"line":236,"column":20},"end":{"line":246,"column":21}},"44":{"start":{"line":237,"column":24},"end":{"line":237,"column":53}},"45":{"start":{"line":240,"column":25},"end":{"line":246,"column":21}},"46":{"start":{"line":241,"column":24},"end":{"line":241,"column":63}},"47":{"start":{"line":245,"column":24},"end":{"line":245,"column":70}},"48":{"start":{"line":251,"column":12},"end":{"line":262,"column":14}},"49":{"start":{"line":255,"column":20},"end":{"line":255,"column":77}},"50":{"start":{"line":255,"column":59},"end":{"line":255,"column":76}},"51":{"start":{"line":256,"column":20},"end":{"line":256,"column":57}},"52":{"start":{"line":257,"column":20},"end":{"line":257,"column":36}},"53":{"start":{"line":258,"column":20},"end":{"line":258,"column":34}},"54":{"start":{"line":277,"column":8},"end":{"line":278,"column":19}},"55":{"start":{"line":280,"column":8},"end":{"line":287,"column":9}},"56":{"start":{"line":281,"column":12},"end":{"line":281,"column":47}},"57":{"start":{"line":282,"column":12},"end":{"line":282,"column":76}},"58":{"start":{"line":284,"column":12},"end":{"line":284,"column":41}},"59":{"start":{"line":286,"column":12},"end":{"line":286,"column":70}},"60":{"start":{"line":301,"column":8},"end":{"line":310,"column":9}},"61":{"start":{"line":302,"column":12},"end":{"line":303,"column":62}},"62":{"start":{"line":305,"column":12},"end":{"line":309,"column":13}},"63":{"start":{"line":306,"column":16},"end":{"line":308,"column":17}},"64":{"start":{"line":307,"column":20},"end":{"line":307,"column":94}},"65":{"start":{"line":311,"column":8},"end":{"line":311,"column":24}},"66":{"start":{"line":325,"column":8},"end":{"line":325,"column":27}},"67":{"start":{"line":328,"column":8},"end":{"line":330,"column":9}},"68":{"start":{"line":329,"column":12},"end":{"line":329,"column":62}},"69":{"start":{"line":332,"column":8},"end":{"line":332,"column":22}},"70":{"start":{"line":347,"column":8},"end":{"line":375,"column":9}},"71":{"start":{"line":348,"column":12},"end":{"line":351,"column":36}},"72":{"start":{"line":353,"column":12},"end":{"line":368,"column":13}},"73":{"start":{"line":354,"column":16},"end":{"line":354,"column":82}},"74":{"start":{"line":357,"column":16},"end":{"line":359,"column":17}},"75":{"start":{"line":358,"column":20},"end":{"line":358,"column":77}},"76":{"start":{"line":361,"column":16},"end":{"line":361,"column":96}},"77":{"start":{"line":364,"column":16},"end":{"line":367,"column":17}},"78":{"start":{"line":365,"column":20},"end":{"line":365,"column":70}},"79":{"start":{"line":366,"column":20},"end":{"line":366,"column":27}},"80":{"start":{"line":370,"column":12},"end":{"line":374,"column":13}},"81":{"start":{"line":371,"column":16},"end":{"line":371,"column":43}},"82":{"start":{"line":373,"column":16},"end":{"line":373,"column":88}},"83":{"start":{"line":376,"column":8},"end":{"line":376,"column":24}},"84":{"start":{"line":380,"column":0},"end":{"line":380,"column":55}}},"branchMap":{"1":{"line":120,"type":"if","locations":[{"start":{"line":120,"column":8},"end":{"line":120,"column":8}},{"start":{"line":120,"column":8},"end":{"line":120,"column":8}}]},"2":{"line":120,"type":"binary-expr","locations":[{"start":{"line":120,"column":12},"end":{"line":120,"column":18}},{"start":{"line":120,"column":22},"end":{"line":120,"column":49}},{"start":{"line":120,"column":53},"end":{"line":120,"column":59}}]},"3":{"line":144,"type":"binary-expr","locations":[{"start":{"line":144,"column":22},"end":{"line":144,"column":35}},{"start":{"line":144,"column":39},"end":{"line":144,"column":48}},{"start":{"line":144,"column":52},"end":{"line":144,"column":57}}]},"4":{"line":145,"type":"binary-expr","locations":[{"start":{"line":145,"column":21},"end":{"line":145,"column":42}},{"start":{"line":145,"column":46},"end":{"line":145,"column":53}}]},"5":{"line":151,"type":"binary-expr","locations":[{"start":{"line":151,"column":24},"end":{"line":151,"column":39}},{"start":{"line":151,"column":43},"end":{"line":151,"column":52}},{"start":{"line":151,"column":56},"end":{"line":151,"column":64}},{"start":{"line":151,"column":68},"end":{"line":151,"column":81}},{"start":{"line":151,"column":85},"end":{"line":151,"column":98}},{"start":{"line":151,"column":102},"end":{"line":151,"column":106}}]},"6":{"line":182,"type":"if","locations":[{"start":{"line":182,"column":8},"end":{"line":182,"column":8}},{"start":{"line":182,"column":8},"end":{"line":182,"column":8}}]},"7":{"line":183,"type":"cond-expr","locations":[{"start":{"line":183,"column":101},"end":{"line":183,"column":138}},{"start":{"line":183,"column":141},"end":{"line":183,"column":164}}]},"8":{"line":202,"type":"binary-expr","locations":[{"start":{"line":202,"column":23},"end":{"line":202,"column":26}},{"start":{"line":202,"column":30},"end":{"line":202,"column":37}}]},"9":{"line":206,"type":"if","locations":[{"start":{"line":206,"column":20},"end":{"line":206,"column":20}},{"start":{"line":206,"column":20},"end":{"line":206,"column":20}}]},"10":{"line":206,"type":"binary-expr","locations":[{"start":{"line":206,"column":25},"end":{"line":206,"column":51}},{"start":{"line":206,"column":57},"end":{"line":206,"column":83}}]},"11":{"line":214,"type":"if","locations":[{"start":{"line":214,"column":25},"end":{"line":214,"column":25}},{"start":{"line":214,"column":25},"end":{"line":214,"column":25}}]},"12":{"line":216,"type":"cond-expr","locations":[{"start":{"line":216,"column":43},"end":{"line":216,"column":88}},{"start":{"line":216,"column":91},"end":{"line":216,"column":98}}]},"13":{"line":219,"type":"if","locations":[{"start":{"line":219,"column":25},"end":{"line":219,"column":25}},{"start":{"line":219,"column":25},"end":{"line":219,"column":25}}]},"14":{"line":221,"type":"cond-expr","locations":[{"start":{"line":221,"column":50},"end":{"line":221,"column":75}},{"start":{"line":221,"column":78},"end":{"line":221,"column":82}}]},"15":{"line":224,"type":"if","locations":[{"start":{"line":224,"column":25},"end":{"line":224,"column":25}},{"start":{"line":224,"column":25},"end":{"line":224,"column":25}}]},"16":{"line":226,"type":"if","locations":[{"start":{"line":226,"column":28},"end":{"line":226,"column":28}},{"start":{"line":226,"column":28},"end":{"line":226,"column":28}}]},"17":{"line":234,"type":"if","locations":[{"start":{"line":234,"column":16},"end":{"line":234,"column":16}},{"start":{"line":234,"column":16},"end":{"line":234,"column":16}}]},"18":{"line":236,"type":"if","locations":[{"start":{"line":236,"column":20},"end":{"line":236,"column":20}},{"start":{"line":236,"column":20},"end":{"line":236,"column":20}}]},"19":{"line":240,"type":"if","locations":[{"start":{"line":240,"column":25},"end":{"line":240,"column":25}},{"start":{"line":240,"column":25},"end":{"line":240,"column":25}}]},"20":{"line":255,"type":"if","locations":[{"start":{"line":255,"column":20},"end":{"line":255,"column":20}},{"start":{"line":255,"column":20},"end":{"line":255,"column":20}}]},"21":{"line":277,"type":"binary-expr","locations":[{"start":{"line":277,"column":18},"end":{"line":277,"column":27}},{"start":{"line":277,"column":31},"end":{"line":277,"column":36}}]},"22":{"line":280,"type":"if","locations":[{"start":{"line":280,"column":8},"end":{"line":280,"column":8}},{"start":{"line":280,"column":8},"end":{"line":280,"column":8}}]},"23":{"line":301,"type":"if","locations":[{"start":{"line":301,"column":8},"end":{"line":301,"column":8}},{"start":{"line":301,"column":8},"end":{"line":301,"column":8}}]},"24":{"line":303,"type":"binary-expr","locations":[{"start":{"line":303,"column":25},"end":{"line":303,"column":48}},{"start":{"line":303,"column":52},"end":{"line":303,"column":61}}]},"25":{"line":306,"type":"if","locations":[{"start":{"line":306,"column":16},"end":{"line":306,"column":16}},{"start":{"line":306,"column":16},"end":{"line":306,"column":16}}]},"26":{"line":347,"type":"if","locations":[{"start":{"line":347,"column":8},"end":{"line":347,"column":8}},{"start":{"line":347,"column":8},"end":{"line":347,"column":8}}]},"27":{"line":347,"type":"binary-expr","locations":[{"start":{"line":347,"column":12},"end":{"line":347,"column":36}},{"start":{"line":347,"column":40},"end":{"line":347,"column":73}}]},"28":{"line":348,"type":"binary-expr","locations":[{"start":{"line":348,"column":25},"end":{"line":348,"column":46}},{"start":{"line":348,"column":50},"end":{"line":348,"column":57}}]},"29":{"line":353,"type":"if","locations":[{"start":{"line":353,"column":12},"end":{"line":353,"column":12}},{"start":{"line":353,"column":12},"end":{"line":353,"column":12}}]},"30":{"line":370,"type":"if","locations":[{"start":{"line":370,"column":12},"end":{"line":370,"column":12}},{"start":{"line":370,"column":12},"end":{"line":370,"column":12}}]}},"code":["(function () { YUI.add('dataschema-xml', function (Y, NAME) {","","/**","Provides a DataSchema implementation which can be used to work with XML data.","","@module dataschema","@submodule dataschema-xml","**/","","/**","Provides a DataSchema implementation which can be used to work with XML data.","","See the `apply` method for usage.","","@class DataSchema.XML","@extends DataSchema.Base","@static","**/","var Lang = Y.Lang,","","    okNodeType = {","        1 : true,","        9 : true,","        11: true","    },","","    SchemaXML;","","SchemaXML = {","","    ////////////////////////////////////////////////////////////////////////////","    //","    // DataSchema.XML static methods","    //","    ////////////////////////////////////////////////////////////////////////////","    /**","    Applies a schema to an XML data tree, returning a normalized object with","    results in the `results` property. Additional information can be parsed out","    of the XML for inclusion in the `meta` property of the response object.  If","    an error is encountered during processing, an `error` property will be","    added.","","    Field data in the nodes captured by the XPath in _schema.resultListLocator_","    is extracted with the field identifiers described in _schema.resultFields_.","    Field identifiers are objects with the following properties:","","      * `key`    : <strong>(required)</strong> The desired property name to use","            store the retrieved value in the result object.  If `locator` is","            not specified, `key` is also used as the XPath locator (String)","      * `locator`: The XPath locator to the node or attribute within each","            result node found by _schema.resultListLocator_ containing the","            desired field data (String)","      * `parser` : A function or the name of a function on `Y.Parsers` used","            to convert the input value into a normalized type.  Parser","            functions are passed the value as input and are expected to","            return a value.","      * `schema` : Used to retrieve nested field data into an array for","            assignment as the result field value.  This object follows the same","            conventions as _schema_.","","    If no value parsing or nested parsing is needed, you can use XPath locators","    (strings) instead of field identifiers (objects) -- see example below.","","    `response.results` will contain an array of objects with key:value pairs.","    The keys are the field identifier `key`s, and the values are the data","    values extracted from the nodes or attributes found by the field `locator`","    (or `key` fallback).","    ","    To extract additional information from the XML, include an array of","    XPath locators in _schema.metaFields_.  The collected values will be","    stored in `response.meta` with the XPath locator as keys.","","    @example","        var schema = {","                resultListLocator: '//produce/item',","                resultFields: [","                    {","                        locator: 'name',","                        key: 'name'","                    },","                    {","                        locator: 'color',","                        key: 'color',","                        parser: function (val) { return val.toUpperCase(); }","                    }","                ]","            };","","        // Assumes data like","        // <inventory>","        //   <produce>","        //     <item><name>Banana</name><color>yellow</color></item>","        //     <item><name>Orange</name><color>orange</color></item>","        //     <item><name>Eggplant</name><color>purple</color></item>","        //   </produce>","        // </inventory>","","        var response = Y.DataSchema.JSON.apply(schema, data);","","        // response.results[0] is { name: \"Banana\", color: \"YELLOW\" }","     ","    @method apply","    @param {Object} schema Schema to apply.  Supported configuration","        properties are:","      @param {String} [schema.resultListLocator] XPath locator for the","          XML nodes that contain the data to flatten into `response.results`","      @param {Array} [schema.resultFields] Field identifiers to","          locate/assign values in the response records. See above for","          details.","      @param {Array} [schema.metaFields] XPath locators to extract extra","          non-record related information from the XML data","    @param {XMLDoc} data XML data to parse","    @return {Object} An Object with properties `results` and `meta`","    @static","    **/","    apply: function(schema, data) {","        var xmldoc = data, // unnecessary variables","            data_out = { results: [], meta: {} };","","        if (xmldoc && okNodeType[xmldoc.nodeType] && schema) {","            // Parse results data","            data_out = SchemaXML._parseResults(schema, xmldoc, data_out);","","            // Parse meta data","            data_out = SchemaXML._parseMeta(schema.metaFields, xmldoc, data_out);","        } else {","            data_out.error = new Error(\"XML schema parse failure\");","        }","","        return data_out;","    },","","    /**","     * Get an XPath-specified value for a given field from an XML node or document.","     *","     * @method _getLocationValue","     * @param field {String | Object} Field definition.","     * @param context {Object} XML node or document to search within.","     * @return {Object} Data value or null.","     * @static","     * @protected","     */","    _getLocationValue: function(field, context) {","        var locator = field.locator || field.key || field,","            xmldoc = context.ownerDocument || context,","            result, res, value = null;","","        try {","            result = SchemaXML._getXPathResult(locator, context, xmldoc);","            while ((res = result.iterateNext())) {","                value = res.textContent || res.value || res.text || res.innerHTML || res.innerText || null;","            }","","            // FIXME: Why defer to a method that is mixed into this object?","            // DSchema.Base is mixed into DSchema.XML (et al), so","            // DSchema.XML.parse(...) will work.  This supports the use case","            // where DSchema.Base.parse is changed, and that change is then","            // seen by all DSchema.* implementations, but does not support the","            // case where redefining DSchema.XML.parse changes behavior. In","            // fact, DSchema.XML.parse is never even called.","            return Y.DataSchema.Base.parse.call(this, value, field);","        } catch (e) {","        }","","        return null;","    },","","    /**","     * Fetches the XPath-specified result for a given location in an XML node","     * or document.","     * ","     * @method _getXPathResult","     * @param locator {String} The XPath location.","     * @param context {Object} XML node or document to search within.","     * @param xmldoc {Object} XML document to resolve namespace.","     * @return {Object} Data collection or null.","     * @static","     * @protected","     */","    _getXPathResult: function(locator, context, xmldoc) {","        // Standards mode","        if (! Lang.isUndefined(xmldoc.evaluate)) {","            return xmldoc.evaluate(locator, context, xmldoc.createNSResolver(context.ownerDocument ? context.ownerDocument.documentElement : context.documentElement), 0, null);","          ","        }","        // IE mode","        else {","            var values=[], locatorArray = locator.split(/\\b\\/\\b/), i=0, l=locatorArray.length, location, subloc, m, isNth;","            ","            // XPath is supported","            try {","                // this fixes the IE 5.5+ issue where childnode selectors begin at 0 instead of 1","                try {","                   xmldoc.setProperty(\"SelectionLanguage\", \"XPath\");","                } catch (e) {}","                ","                values = context.selectNodes(locator);","            }","            // Fallback for DOM nodes and fragments","            catch (e) {","                // Iterate over each locator piece","                for (; i<l && context; i++) {","                    location = locatorArray[i];","","                    // grab nth child []","                    if ((location.indexOf(\"[\") > -1) && (location.indexOf(\"]\") > -1)) {","                        subloc = location.slice(location.indexOf(\"[\")+1, location.indexOf(\"]\"));","                        //XPath is 1-based while DOM is 0-based","                        subloc--;","                        context = context.children[subloc];","                        isNth = true;","                    }","                    // grab attribute value @","                    else if (location.indexOf(\"@\") > -1) {","                        subloc = location.substr(location.indexOf(\"@\"));","                        context = subloc ? context.getAttribute(subloc.replace('@', '')) : context;","                    }","                    // grab that last instance of tagName","                    else if (-1 < location.indexOf(\"//\")) {","                        subloc = context.getElementsByTagName(location.substr(2));","                        context = subloc.length ? subloc[subloc.length - 1] : null;","                    }","                    // find the last matching location in children","                    else if (l != i + 1) {","                        for (m=context.childNodes.length-1; 0 <= m; m-=1) {","                            if (location === context.childNodes[m].tagName) {","                                context = context.childNodes[m];","                                m = -1;","                            }","                        }","                    }","                }","                ","                if (context) {","                    // attribute","                    if (Lang.isString(context)) {","                        values[0] = {value: context};","                    }","                    // nth child","                    else if (isNth) {","                        values[0] = {value: context.innerHTML};","                    }","                    // all children","                    else {","                        values = Y.Array(context.childNodes, 0, true);","                    }","                }","            }","","            // returning a mock-standard object for IE","            return {","                index: 0,","                ","                iterateNext: function() {","                    if (this.index >= this.values.length) {return undefined;}","                    var result = this.values[this.index];","                    this.index += 1;","                    return result;","                },","","                values: values","            };","        }","    },","","    /**","     * Schema-parsed result field.","     *","     * @method _parseField","     * @param field {String | Object} Required. Field definition.","     * @param result {Object} Required. Schema parsed data object.","     * @param context {Object} Required. XML node or document to search within.","     * @static","     * @protected","     */","    _parseField: function(field, result, context) {","        var key = field.key || field,","            parsed;","","        if (field.schema) {","            parsed = { results: [], meta: {} };","            parsed = SchemaXML._parseResults(field.schema, context, parsed);","","            result[key] = parsed.results;","        } else {","            result[key] = SchemaXML._getLocationValue(field, context);","        }","    },","","    /**","     * Parses results data according to schema","     *","     * @method _parseMeta","     * @param xmldoc_in {Object} XML document parse.","     * @param data_out {Object} In-progress schema-parsed data to update.","     * @return {Object} Schema-parsed data.","     * @static","     * @protected","     */","    _parseMeta: function(metaFields, xmldoc_in, data_out) {","        if(Lang.isObject(metaFields)) {","            var key,","                xmldoc = xmldoc_in.ownerDocument || xmldoc_in;","","            for(key in metaFields) {","                if (metaFields.hasOwnProperty(key)) {","                    data_out.meta[key] = SchemaXML._getLocationValue(metaFields[key], xmldoc);","                }","            }","        }","        return data_out;","    },","","    /**","     * Schema-parsed result to add to results list.","     *","     * @method _parseResult","     * @param fields {Array} Required. A collection of field definition.","     * @param context {Object} Required. XML node or document to search within.","     * @return {Object} Schema-parsed data.","     * @static","     * @protected","     */","    _parseResult: function(fields, context) {","        var result = {}, j;","","        // Find each field value","        for (j=fields.length-1; 0 <= j; j--) {","            SchemaXML._parseField(fields[j], result, context);","        }","","        return result;","    },","","    /**","     * Schema-parsed list of results from full data","     *","     * @method _parseResults","     * @param schema {Object} Schema to parse against.","     * @param context {Object} XML node or document to parse.","     * @param data_out {Object} In-progress schema-parsed data to update.","     * @return {Object} Schema-parsed data.","     * @static","     * @protected","     */","    _parseResults: function(schema, context, data_out) {","        if (schema.resultListLocator && Lang.isArray(schema.resultFields)) {","            var xmldoc = context.ownerDocument || context,","                fields = schema.resultFields,","                results = [],","                node, nodeList, i=0;","","            if (schema.resultListLocator.match(/^[:\\-\\w]+$/)) {","                nodeList = context.getElementsByTagName(schema.resultListLocator);","                ","                // loop through each result node","                for (i = nodeList.length - 1; i >= 0; --i) {","                    results[i] = SchemaXML._parseResult(fields, nodeList[i]);","                }","            } else {","                nodeList = SchemaXML._getXPathResult(schema.resultListLocator, context, xmldoc);","","                // loop through the nodelist","                while ((node = nodeList.iterateNext())) {","                    results[i] = SchemaXML._parseResult(fields, node);","                    i += 1;","                }","            }","","            if (results.length) {","                data_out.results = results;","            } else {","                data_out.error = new Error(\"XML schema result nodes retrieval failure\");","            }","        }","        return data_out;","    }","};","","Y.DataSchema.XML = Y.mix(SchemaXML, Y.DataSchema.Base);","","","}, '3.10.3', {\"requires\": [\"dataschema-base\"]});","","}());"]};
 
11
}
 
12
var __cov_Ot5UvIBjmGYbilejedAlAw = __coverage__['build/dataschema-xml/dataschema-xml.js'];
 
13
__cov_Ot5UvIBjmGYbilejedAlAw.s['1']++;YUI.add('dataschema-xml',function(Y,NAME){__cov_Ot5UvIBjmGYbilejedAlAw.f['1']++;__cov_Ot5UvIBjmGYbilejedAlAw.s['2']++;var Lang=Y.Lang,okNodeType={1:true,9:true,11:true},SchemaXML;__cov_Ot5UvIBjmGYbilejedAlAw.s['3']++;SchemaXML={apply:function(schema,data){__cov_Ot5UvIBjmGYbilejedAlAw.f['2']++;__cov_Ot5UvIBjmGYbilejedAlAw.s['4']++;var xmldoc=data,data_out={results:[],meta:{}};__cov_Ot5UvIBjmGYbilejedAlAw.s['5']++;if((__cov_Ot5UvIBjmGYbilejedAlAw.b['2'][0]++,xmldoc)&&(__cov_Ot5UvIBjmGYbilejedAlAw.b['2'][1]++,okNodeType[xmldoc.nodeType])&&(__cov_Ot5UvIBjmGYbilejedAlAw.b['2'][2]++,schema)){__cov_Ot5UvIBjmGYbilejedAlAw.b['1'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['6']++;data_out=SchemaXML._parseResults(schema,xmldoc,data_out);__cov_Ot5UvIBjmGYbilejedAlAw.s['7']++;data_out=SchemaXML._parseMeta(schema.metaFields,xmldoc,data_out);}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['1'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['8']++;data_out.error=new Error('XML schema parse failure');}__cov_Ot5UvIBjmGYbilejedAlAw.s['9']++;return data_out;},_getLocationValue:function(field,context){__cov_Ot5UvIBjmGYbilejedAlAw.f['3']++;__cov_Ot5UvIBjmGYbilejedAlAw.s['10']++;var locator=(__cov_Ot5UvIBjmGYbilejedAlAw.b['3'][0]++,field.locator)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['3'][1]++,field.key)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['3'][2]++,field),xmldoc=(__cov_Ot5UvIBjmGYbilejedAlAw.b['4'][0]++,context.ownerDocument)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['4'][1]++,context),result,res,value=null;__cov_Ot5UvIBjmGYbilejedAlAw.s['11']++;try{__cov_Ot5UvIBjmGYbilejedAlAw.s['12']++;result=SchemaXML._getXPathResult(locator,context,xmldoc);__cov_Ot5UvIBjmGYbilejedAlAw.s['13']++;while(res=result.iterateNext()){__cov_Ot5UvIBjmGYbilejedAlAw.s['14']++;value=(__cov_Ot5UvIBjmGYbilejedAlAw.b['5'][0]++,res.textContent)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['5'][1]++,res.value)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['5'][2]++,res.text)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['5'][3]++,res.innerHTML)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['5'][4]++,res.innerText)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['5'][5]++,null);}__cov_Ot5UvIBjmGYbilejedAlAw.s['15']++;return Y.DataSchema.Base.parse.call(this,value,field);}catch(e){}__cov_Ot5UvIBjmGYbilejedAlAw.s['16']++;return null;},_getXPathResult:function(locator,context,xmldoc){__cov_Ot5UvIBjmGYbilejedAlAw.f['4']++;__cov_Ot5UvIBjmGYbilejedAlAw.s['17']++;if(!Lang.isUndefined(xmldoc.evaluate)){__cov_Ot5UvIBjmGYbilejedAlAw.b['6'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['18']++;return xmldoc.evaluate(locator,context,xmldoc.createNSResolver(context.ownerDocument?(__cov_Ot5UvIBjmGYbilejedAlAw.b['7'][0]++,context.ownerDocument.documentElement):(__cov_Ot5UvIBjmGYbilejedAlAw.b['7'][1]++,context.documentElement)),0,null);}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['6'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['19']++;var values=[],locatorArray=locator.split(/\b\/\b/),i=0,l=locatorArray.length,location,subloc,m,isNth;__cov_Ot5UvIBjmGYbilejedAlAw.s['20']++;try{__cov_Ot5UvIBjmGYbilejedAlAw.s['21']++;try{__cov_Ot5UvIBjmGYbilejedAlAw.s['22']++;xmldoc.setProperty('SelectionLanguage','XPath');}catch(e){}__cov_Ot5UvIBjmGYbilejedAlAw.s['23']++;values=context.selectNodes(locator);}catch(e){__cov_Ot5UvIBjmGYbilejedAlAw.s['24']++;for(;(__cov_Ot5UvIBjmGYbilejedAlAw.b['8'][0]++,i<l)&&(__cov_Ot5UvIBjmGYbilejedAlAw.b['8'][1]++,context);i++){__cov_Ot5UvIBjmGYbilejedAlAw.s['25']++;location=locatorArray[i];__cov_Ot5UvIBjmGYbilejedAlAw.s['26']++;if((__cov_Ot5UvIBjmGYbilejedAlAw.b['10'][0]++,location.indexOf('[')>-1)&&(__cov_Ot5UvIBjmGYbilejedAlAw.b['10'][1]++,location.indexOf(']')>-1)){__cov_Ot5UvIBjmGYbilejedAlAw.b['9'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['27']++;subloc=location.slice(location.indexOf('[')+1,location.indexOf(']'));__cov_Ot5UvIBjmGYbilejedAlAw.s['28']++;subloc--;__cov_Ot5UvIBjmGYbilejedAlAw.s['29']++;context=context.children[subloc];__cov_Ot5UvIBjmGYbilejedAlAw.s['30']++;isNth=true;}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['9'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['31']++;if(location.indexOf('@')>-1){__cov_Ot5UvIBjmGYbilejedAlAw.b['11'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['32']++;subloc=location.substr(location.indexOf('@'));__cov_Ot5UvIBjmGYbilejedAlAw.s['33']++;context=subloc?(__cov_Ot5UvIBjmGYbilejedAlAw.b['12'][0]++,context.getAttribute(subloc.replace('@',''))):(__cov_Ot5UvIBjmGYbilejedAlAw.b['12'][1]++,context);}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['11'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['34']++;if(-1<location.indexOf('//')){__cov_Ot5UvIBjmGYbilejedAlAw.b['13'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['35']++;subloc=context.getElementsByTagName(location.substr(2));__cov_Ot5UvIBjmGYbilejedAlAw.s['36']++;context=subloc.length?(__cov_Ot5UvIBjmGYbilejedAlAw.b['14'][0]++,subloc[subloc.length-1]):(__cov_Ot5UvIBjmGYbilejedAlAw.b['14'][1]++,null);}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['13'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['37']++;if(l!=i+1){__cov_Ot5UvIBjmGYbilejedAlAw.b['15'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['38']++;for(m=context.childNodes.length-1;0<=m;m-=1){__cov_Ot5UvIBjmGYbilejedAlAw.s['39']++;if(location===context.childNodes[m].tagName){__cov_Ot5UvIBjmGYbilejedAlAw.b['16'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['40']++;context=context.childNodes[m];__cov_Ot5UvIBjmGYbilejedAlAw.s['41']++;m=-1;}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['16'][1]++;}}}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['15'][1]++;}}}}}__cov_Ot5UvIBjmGYbilejedAlAw.s['42']++;if(context){__cov_Ot5UvIBjmGYbilejedAlAw.b['17'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['43']++;if(Lang.isString(context)){__cov_Ot5UvIBjmGYbilejedAlAw.b['18'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['44']++;values[0]={value:context};}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['18'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['45']++;if(isNth){__cov_Ot5UvIBjmGYbilejedAlAw.b['19'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['46']++;values[0]={value:context.innerHTML};}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['19'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['47']++;values=Y.Array(context.childNodes,0,true);}}}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['17'][1]++;}}__cov_Ot5UvIBjmGYbilejedAlAw.s['48']++;return{index:0,iterateNext:function(){__cov_Ot5UvIBjmGYbilejedAlAw.f['5']++;__cov_Ot5UvIBjmGYbilejedAlAw.s['49']++;if(this.index>=this.values.length){__cov_Ot5UvIBjmGYbilejedAlAw.b['20'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['50']++;return undefined;}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['20'][1]++;}__cov_Ot5UvIBjmGYbilejedAlAw.s['51']++;var result=this.values[this.index];__cov_Ot5UvIBjmGYbilejedAlAw.s['52']++;this.index+=1;__cov_Ot5UvIBjmGYbilejedAlAw.s['53']++;return result;},values:values};}},_parseField:function(field,result,context){__cov_Ot5UvIBjmGYbilejedAlAw.f['6']++;__cov_Ot5UvIBjmGYbilejedAlAw.s['54']++;var key=(__cov_Ot5UvIBjmGYbilejedAlAw.b['21'][0]++,field.key)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['21'][1]++,field),parsed;__cov_Ot5UvIBjmGYbilejedAlAw.s['55']++;if(field.schema){__cov_Ot5UvIBjmGYbilejedAlAw.b['22'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['56']++;parsed={results:[],meta:{}};__cov_Ot5UvIBjmGYbilejedAlAw.s['57']++;parsed=SchemaXML._parseResults(field.schema,context,parsed);__cov_Ot5UvIBjmGYbilejedAlAw.s['58']++;result[key]=parsed.results;}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['22'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['59']++;result[key]=SchemaXML._getLocationValue(field,context);}},_parseMeta:function(metaFields,xmldoc_in,data_out){__cov_Ot5UvIBjmGYbilejedAlAw.f['7']++;__cov_Ot5UvIBjmGYbilejedAlAw.s['60']++;if(Lang.isObject(metaFields)){__cov_Ot5UvIBjmGYbilejedAlAw.b['23'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['61']++;var key,xmldoc=(__cov_Ot5UvIBjmGYbilejedAlAw.b['24'][0]++,xmldoc_in.ownerDocument)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['24'][1]++,xmldoc_in);__cov_Ot5UvIBjmGYbilejedAlAw.s['62']++;for(key in metaFields){__cov_Ot5UvIBjmGYbilejedAlAw.s['63']++;if(metaFields.hasOwnProperty(key)){__cov_Ot5UvIBjmGYbilejedAlAw.b['25'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['64']++;data_out.meta[key]=SchemaXML._getLocationValue(metaFields[key],xmldoc);}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['25'][1]++;}}}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['23'][1]++;}__cov_Ot5UvIBjmGYbilejedAlAw.s['65']++;return data_out;},_parseResult:function(fields,context){__cov_Ot5UvIBjmGYbilejedAlAw.f['8']++;__cov_Ot5UvIBjmGYbilejedAlAw.s['66']++;var result={},j;__cov_Ot5UvIBjmGYbilejedAlAw.s['67']++;for(j=fields.length-1;0<=j;j--){__cov_Ot5UvIBjmGYbilejedAlAw.s['68']++;SchemaXML._parseField(fields[j],result,context);}__cov_Ot5UvIBjmGYbilejedAlAw.s['69']++;return result;},_parseResults:function(schema,context,data_out){__cov_Ot5UvIBjmGYbilejedAlAw.f['9']++;__cov_Ot5UvIBjmGYbilejedAlAw.s['70']++;if((__cov_Ot5UvIBjmGYbilejedAlAw.b['27'][0]++,schema.resultListLocator)&&(__cov_Ot5UvIBjmGYbilejedAlAw.b['27'][1]++,Lang.isArray(schema.resultFields))){__cov_Ot5UvIBjmGYbilejedAlAw.b['26'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['71']++;var xmldoc=(__cov_Ot5UvIBjmGYbilejedAlAw.b['28'][0]++,context.ownerDocument)||(__cov_Ot5UvIBjmGYbilejedAlAw.b['28'][1]++,context),fields=schema.resultFields,results=[],node,nodeList,i=0;__cov_Ot5UvIBjmGYbilejedAlAw.s['72']++;if(schema.resultListLocator.match(/^[:\-\w]+$/)){__cov_Ot5UvIBjmGYbilejedAlAw.b['29'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['73']++;nodeList=context.getElementsByTagName(schema.resultListLocator);__cov_Ot5UvIBjmGYbilejedAlAw.s['74']++;for(i=nodeList.length-1;i>=0;--i){__cov_Ot5UvIBjmGYbilejedAlAw.s['75']++;results[i]=SchemaXML._parseResult(fields,nodeList[i]);}}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['29'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['76']++;nodeList=SchemaXML._getXPathResult(schema.resultListLocator,context,xmldoc);__cov_Ot5UvIBjmGYbilejedAlAw.s['77']++;while(node=nodeList.iterateNext()){__cov_Ot5UvIBjmGYbilejedAlAw.s['78']++;results[i]=SchemaXML._parseResult(fields,node);__cov_Ot5UvIBjmGYbilejedAlAw.s['79']++;i+=1;}}__cov_Ot5UvIBjmGYbilejedAlAw.s['80']++;if(results.length){__cov_Ot5UvIBjmGYbilejedAlAw.b['30'][0]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['81']++;data_out.results=results;}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['30'][1]++;__cov_Ot5UvIBjmGYbilejedAlAw.s['82']++;data_out.error=new Error('XML schema result nodes retrieval failure');}}else{__cov_Ot5UvIBjmGYbilejedAlAw.b['26'][1]++;}__cov_Ot5UvIBjmGYbilejedAlAw.s['83']++;return data_out;}};__cov_Ot5UvIBjmGYbilejedAlAw.s['84']++;Y.DataSchema.XML=Y.mix(SchemaXML,Y.DataSchema.Base);},'3.10.3',{'requires':['dataschema-base']});