docs: function(soapFault){
        //Get faultactor, faultstring, faultcode and detail elements
        function _parseSoapFaultDetail(detailNode){
          var errors = [];
          var i, childNodes = detailNode.childNodes, n = childNodes.length, childNode;
          for (i = 0; i < n; i++) {
            childNode = childNodes[i];
            if (childNode.nodeType !== 1) {
              continue;
            }
            switch (childNode.nodeName){
              case "Error":
                errors.push({
                  ErrorCode: _getAttribute(childNode, "ErrorCode"),
                  Description: _getAttribute(childNode, "Description"),
                  Source: _getAttribute(childNode, "Source"),
                  HelpFile: _getAttribute(childNode, "HelpFile")
                });
                break;
              default:
            }
          }
          return errors;
        }
  
        var fields = {}, field, nodeName;
        var i, childNodes = soapFault.childNodes, n = childNodes.length, childNode;
        for (i = 0; i < n; i++){
          childNode = childNodes[i];
          if (childNode.nodeType !== 1) {
            continue;
          }
          nodeName = childNode.nodeName;
          switch (nodeName) {
            case "faultactor":
            case "faultstring":
            case "faultcode":
              field = _getElementText(childNode);
              break;
            case "detail":
              field = _parseSoapFaultDetail(childNode);
              break;
            default:
              field = null;
              break;
          }
          if (field) {
            fields[nodeName] = field;
          }
        }
        return fields;
      }