docs: function(platform, resourceName) {
          var ret = [],
              staticResources = [];
          if (platform) { // platform specific icons
              this.doc.findall('platform[@name=\'' + platform + '\']/' + resourceName).forEach(function(elt){
                  elt.platform = platform; // mark as platform specific resource
                  staticResources.push(elt);
              });
          }
          // root level resources
          staticResources = staticResources.concat(this.doc.findall(resourceName));
          // parse resource elements
          var that = this;
          staticResources.forEach(function (elt) {
              var res = {};
              res.src = elt.attrib.src;
              res.target = elt.attrib.target || undefined;
              res.density = elt.attrib['density'] || elt.attrib[that.cdvNamespacePrefix+':density'] || elt.attrib['gap:density'];
              res.platform = elt.platform || null; // null means icon represents default icon (shared between platforms)
              res.width = +elt.attrib.width || undefined;
              res.height = +elt.attrib.height || undefined;
  
              // default icon
              if (!res.width && !res.height && !res.density) {
                  ret.defaultResource = res;
              }
              ret.push(res);
          });
  
          /**
           * Returns resource with specified width and/or height.
           * @param  {number} width Width of resource.
           * @param  {number} height Height of resource.
           * @return {Resource} Resource object or null if not found.
           */
          ret.getBySize = function(width, height) {
              return ret.filter(function(res) {
                  if (!res.width && !res.height) {
                      return false;
                  }
                  return ((!res.width || (width == res.width)) &&
                      (!res.height || (height == res.height)));
              })[0] || null;
          };
  
          /**
           * Returns resource with specified density.
           * @param  {string} density Density of resource.
           * @return {Resource}       Resource object or null if not found.
           */
          ret.getByDensity = function(density) {
              return ret.filter(function(res) {
                  return res.density == density;
              })[0] || null;
          };
  
          /** Returns default icons */
          ret.getDefault = function() {
              return ret.defaultResource;
          };
  
          return ret;
      }