--- xmllib.py.orig 2007-08-03 16:46:34.000000000 +0200 +++ xmllib.py 2007-08-03 17:40:41.000000000 +0200 @@ -637,20 +637,17 @@ aprefix, key = res.group('prefix', 'local') if self.__map_case: key = key.lower() - if aprefix is None: - aprefix = '' - ans = None - for t, d, nst in self.stack: - if d.has_key(aprefix): - ans = d[aprefix] - if ans is None and aprefix != '': - ans = self.__namespaces.get(aprefix) - if ans is not None: - key = ans + ' ' + key - elif aprefix != '': - key = aprefix + ':' + key - elif ns is not None: - key = ns + ' ' + key + if aprefix is not None: + ans = None + for t, d, nst in self.stack: + if d.has_key(aprefix): + ans = d[aprefix] + if ans is None: + ans = self.__namespaces.get(aprefix) + if ans is not None: + key = ans + ' ' + key + else: + key = aprefix + ':' + key nattrdict[key] = val attrnamemap[key] = okey attrdict = nattrdict