docs: function(key, rootData, scopeData, path, recursive) {
        var oType = SpahQL.DataHelper.objectType(scopeData);
        var results = [];
  
        if(oType == "array" || oType == "object") {
          // Loop and append
          for(var oKey in scopeData) {
            var oVal = scopeData[oKey];
            var oValType = SpahQL.DataHelper.objectType(oVal);
            var oPath = path+"/"+oKey;
            // Match at this level
            if(key == SpahQL.QueryParser.ATOM_PATH_WILDCARD || key.toString() == oKey.toString()) {
              results.push(SpahQL.result(oPath, oVal, rootData));
            }
            // Recurse! That is, if we should. Or not. It's cool.
            if(recursive && (oValType == "array" || oValType == "object")) {
              results = results.concat(this.fetchResultsFromObjectByKey(key, rootData, oVal, oPath, recursive));
            }
          }
        }
  
        return results;
      }