[DOC-SIG] saxlib

Lars Marius Garshol larsga@ifi.uio.no
12 Mar 1998 00:15:38 +0100


(Which list is the correct one for XML processing? Is there a Web SIG?
Should there be an XML SIG? There certainly seems to be interest in
this now.)

I've now made a skeleton SAX library to see how SAX translates to
Python, as a convenience for others doing SAX-related stuff in Python
and as a focal point for further development.

I found that SAX translated quite naturally to Python and that the
xml-dev developers had IMHO done a very good job.

The library provides minimal base classes with the default behaviour
prescribed by the SAX spec and a trivial SAX-based ESIS printer.

The only deviations from the letter of the specification are these:

 - HandlerBase has a superclass that is not described in SAX in order
   to make subclassing HandlerBase a little easier. This was done
   because HandlerBase has been made to ignore all unknown method
   calls, which might not be desirable in subclassed handlers.

   (As I write this I'm beginning to think that I should instead add
   empty methods to the class to avoid this problem. Opinions?)

 - Two methods have been added to AttributeMap: __getitem__ and keys,
   in order to make it possible to use AttributeMap as an ordinary
   Python hash table.

Comments of all kinds are most welcome. The URL is
<URL:http://www.stud.ifi.uio.no/~larsga/download/python/xml/>

Also, if the __getitem__ and keys additions are accepted as part of
the Python SAX specification, perhaps we should make a PySAX
specification that describes the additions to the generic SAX?

Now I'll get some sleep and tomorrow I'll start working on a SAX
driver for xmllib. I'll also add a command-line interface so that we
get a demo ESIS-producing XML parser.

-- 
"These are, as I began, cumbersome ways / to kill a man. Simpler, direct, 
and much more neat / is to see that he is living somewhere in the middle /
of the twentieth century, and leave him there."     -- Edwin Brock

 http://www.stud.ifi.uio.no/~larsga/      http://birk105.studby.uio.no/


_______________
DOC-SIG  - SIG for the Python Documentation Project

send messages to: doc-sig@python.org
administrivia to: doc-sig-request@python.org
_______________