| \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}{martin@v.loewis.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 \character{\&}, \character{<}, and \character{>} in a string | 
 |   of data. | 
 |  | 
 |   You can escape other strings of data by passing a dictionary as the | 
 |   optional \var{entities} parameter.  The keys and values must all be | 
 |   strings; each key will be replaced with its corresponding value. | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{unescape}{data\optional{, entities}} | 
 |   Unescape \character{\&}, \character{\<}, and \character{\>} | 
 |   in a string of data. | 
 |  | 
 |   You can unescape other strings of data by passing a dictionary as the | 
 |   optional \var{entities} parameter.  The keys and values must all be | 
 |   strings; each key will be replaced with its corresponding value. | 
 |  | 
 |   \versionadded{2.3} | 
 | \end{funcdesc} | 
 |  | 
 | \begin{funcdesc}{quoteattr}{data\optional{, entities}} | 
 |   Similar to \function{escape()}, but also prepares \var{data} to be | 
 |   used as an attribute value.  The return value is a quoted version of | 
 |   \var{data} with any additional required replacements. | 
 |   \function{quoteattr()} will select a quote character based on the | 
 |   content of \var{data}, attempting to avoid encoding any quote | 
 |   characters in the string.  If both single- and double-quote | 
 |   characters are already in \var{data}, the double-quote characters | 
 |   will be encoded and \var{data} will be wrapped in doule-quotes.  The | 
 |   resulting string can be used directly as an attribute value: | 
 |  | 
 | \begin{verbatim} | 
 | >>> print "<element attr=%s>" % quoteattr("ab ' cd \" ef") | 
 | <element attr="ab ' cd " ef"> | 
 | \end{verbatim} | 
 |  | 
 |   This function is useful when generating attribute values for HTML or | 
 |   any SGML using the reference concrete syntax. | 
 |   \versionadded{2.2} | 
 | \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} |