docs: def checkname(self, elt, ps):
          '''See if the name and type of the "elt" element is what we're
          looking for.   Return the element's type.
          Parameters:
              elt -- the DOM element being parsed
              ps -- the ParsedSoap object.
          '''
  
          parselist,errorlist = self.get_parse_and_errorlist()
          ns, name = _get_element_nsuri_name(elt)
          if ns == SOAP.ENC:
              # Element is in SOAP namespace, so the name is a type.
              if parselist and \
              (None, name) not in parselist and (ns, name) not in parselist:
                  raise EvaluateException(
                  'Element mismatch (got %s wanted %s) (SOAP encoding namespace)' % \
                          (name, errorlist), ps.Backtrace(elt))
              return (ns, name)
  
          # Not a type, check name matches.
          if self.nspname and ns != self.nspname:
              raise EvaluateException('Element NS mismatch (got %s wanted %s)' % \
                  (ns, self.nspname), ps.Backtrace(elt))
  
          if self.pname and name != self.pname:
              raise EvaluateException('Element Name mismatch (got %s wanted %s)' % \
                  (name, self.pname), ps.Backtrace(elt))
          return self.checktype(elt, ps)