code: function expandQNames(xpath) {
    var namespaces = constants.XmlNamespaces;
    var pathParts = xpath.split('/');
    for (var i=0; i < pathParts.length; i++) {
      if (pathParts[i].indexOf(':') !== -1) {
        var QNameParts = pathParts[i].split(':');
        if (QNameParts.length !== 2) {
          throw new Error('Unable to parse XPath string : ' + xpath + ' : with QName : ' + pathParts[i]);
        }
        var expandedPath = XPATH_PATH_TEMPLATE.replace('LOCAL_NAME', QNameParts[1]);
        expandedPath = expandedPath.replace('NAMESPACE', namespaces[QNameParts[0]]);
        pathParts[i] = expandedPath;
      }
    }
    return pathParts.join('/');
  }
docs: The xpath implementation being used does not have a way of matching expanded namespace.
  This method takes an xpath query and expands all of the namespaces involved.  It then
  re-writes the query in to a longer form that directory matches the correct namespaces.
  @private
  @static
  @memberOf XmlUtil
  @param {string} xpath   The expath query string to expand.
  @returns {string} An expanded xpath query.