[XML-SIG] [ pyxml-Bugs-563399 ] expatreader breaks AttributeNSImpl
noreply@sourceforge.net
noreply@sourceforge.net
Sat, 01 Jun 2002 14:56:28 -0700
Bugs item #563399, was opened at 2002-06-01 21:56
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=106473&aid=563399&group_id=6473
Category: SAX
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Uche Ogbuji (uche)
Assigned to: Nobody/Anonymous (nobody)
Summary: expatreader breaks AttributeNSImpl
Initial Comment:
With make_parser(), expatreader is what I get on Python
2.2/PyXML latest PyXML CVS. It seems that after
coercing it to namespace mode, it sets up AttributeNSImpl:
from xml.sax import *
#from Ft.Xml import InputSource
import StringIO
XML = "<grammar
xmlns='http://relaxng.org/ns/structure/1.0' foo='bar'/>"
class TestHandler(ContentHandler):
def startElementNS(self, name, qname, attrs):
print name
print qname
print attrs.__dict__
##parser = make_parser()
##parser._namespaces = 1
##parser.setContentHandler(TestHandler())
##factory = InputSource.DefaultFactory
##isrc = factory.fromString(XML, "dummy")
##parser.parse(isrc.stream)
parser = make_parser()
parser._namespaces = 1
parser.setContentHandler(TestHandler())
stream = StringIO.StringIO(XML)
parser.parse(stream)
$ python broken-attrs.py
(u'http://relaxng.org/ns/structure/1.0', u'grammar')
None
{'_qnames': {}, '_attrs': {(None, u'foo'): u'bar'}}
That should be
{'_qnames': {u'foo'}, '_attrs': {(None, u'foo'): u'bar'}}
This breaks getQNames() and other things.
----------------------------------------------------------------------
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=106473&aid=563399&group_id=6473