Massive addition of SAX documentation from Martin von Loewis
<loewis@informatik.hu-berlin.de>.

Reorganized to be more like other parts of the documentation in its
arrangement, but with few content changes.

This closes SourceForge patch #101850.
diff --git a/Doc/lib/xmlsaxutils.tex b/Doc/lib/xmlsaxutils.tex
new file mode 100644
index 0000000..2ff1471
--- /dev/null
+++ b/Doc/lib/xmlsaxutils.tex
@@ -0,0 +1,48 @@
+\section{\module{xml.sax.saxutils} ---
+         SAX Utilities}
+
+\declaremodule{standard}{xml.sax.saxutils}
+\modulesynopsis{Convenience functions and classes for use with SAX.}
+\sectionauthor{Martin v. L\"owis}{loewis@informatik.hu-berlin.de}
+\moduleauthor{Lars Marius Garshol}{larsga@garshol.priv.no}
+
+\versionadded{2.0}
+
+
+The module \module{xml.sax.saxutils} contains a number of classes and
+functions that are commonly useful when creating SAX applications,
+either in direct use, or as base classes.
+
+\begin{funcdesc}{escape}{data\optional{, entities}}
+  Escape \&, <, and > in a string of data.
+
+  You can escape other strings of data by passing a dictionary as the
+  optional entities parameter.  The keys and values must all be
+  strings; each key will be replaced with its corresponding value.
+\end{funcdesc}
+
+\begin{classdesc}{XMLGenerator}{\optional{out\optional{, encoding}}}
+  This class implements the \class{ContentHandler} interface by
+  writing SAX events back into an XML document. In other words, using
+  an \class{XMLGenerator} as the content handler will reproduce the
+  original document being parsed. \var{out} should be a file-like
+  object which will default to \var{sys.stdout}. \var{encoding} is the
+  encoding of the output stream which defaults to \code{'iso-8859-1'}.
+\end{classdesc}
+
+\begin{classdesc}{XMLFilterBase}{base}
+  This class is designed to sit between an \class{XMLReader} and the
+  client application's event handlers.  By default, it does nothing
+  but pass requests up to the reader and events on to the handlers
+  unmodified, but subclasses can override specific methods to modify
+  the event stream or the configuration requests as they pass through.
+\end{classdesc}
+
+\begin{funcdesc}{prepare_input_source}{source\optional{, base}}
+  This function takes an input source and an optional base URL and
+  returns a fully resolved \class{InputSource} object ready for
+  reading.  The input source can be given as a string, a file-like
+  object, or an \class{InputSource} object; parsers will use this
+  function to implement the polymorphic \var{source} argument to their
+  \method{parse()} method.
+\end{funcdesc}