SPIN_py is a Python module that wraps the SP SGML parser. It does not follow SAX, nor DSSL, but it performs a similar task. It has code to build (and pretty-print) trees from C++ or from Python, and it has an interesting object model, with virtual C++ objects, based on PyObject_HEAD.
uni2ascii and ascii2uni provide conversion in both directions between UTF-8 Unicode and more than thirty 7-bit ASCII equivalents, including RFC 2396 URI format and RFC 2045 Quoted Printable format, the representations used in HTML, SGML, XML, OOXML, the Unicode standard, Rich Text Format, POSIX portable charmaps, POSIX locale specifications, and Apache log files. It can also convert between the escapes used for Unicode in languages such as Ada, C, Common Lisp, Java, Pascal, Perl, Postscript, Python, Scheme, and Tcl.