Improvements to doco strings.

Tiny bug fix to expatreader.py (endDocument was only called after errors).
This commit is contained in:
Lars Gustäbel 2000-09-24 20:38:18 +00:00
parent 33315b180b
commit bb757136b2
4 changed files with 27 additions and 14 deletions

View File

@ -16,9 +16,7 @@ saxutils -- Implementation of the convenience classes commonly used to
xmlreader -- Base classes and constants which define the SAX 2 API for
the parsers used with SAX for Python.
expatreader -- Driver that allows use of the Expat parser with the
classes defined in saxlib.
expatreader -- Driver that allows use of the Expat parser with SAX.
"""
from xmlreader import InputSource

View File

@ -1,6 +1,6 @@
"""
SAX driver for the Pyexpat C module. This driver works with
pyexpat.__version__ == '1.5'.
pyexpat.__version__ == '2.22'.
"""
version = "0.20"
@ -28,7 +28,7 @@ class ExpatParser(xmlreader.IncrementalParser, xmlreader.Locator):
# XMLReader methods
def parse(self, source):
"Parse an XML document from a URL."
"Parse an XML document from a URL or an InputSource."
source = saxutils.prepare_input_source(source)
self._source = source
@ -40,7 +40,7 @@ class ExpatParser(xmlreader.IncrementalParser, xmlreader.Locator):
error_code = self._parser.ErrorCode
raise SAXParseException(expat.ErrorString(error_code), None, self)
self._cont_handler.endDocument()
self._cont_handler.endDocument()
def prepareParser(self, source):
if source.getSystemId() != None:
@ -108,7 +108,10 @@ class ExpatParser(xmlreader.IncrementalParser, xmlreader.Locator):
# self._parser.DefaultHandlerExpand =
# self._parser.NotStandaloneHandler =
self._parser.ExternalEntityRefHandler = self.external_entity_ref
self._parsing = 0
self._entity_stack = []
# Locator methods
def getColumnNumber(self):

View File

@ -20,13 +20,14 @@ version = '2.0beta'
# ===== ERRORHANDLER =====
class ErrorHandler:
"""Basic interface for SAX error handlers. If you create an object
that implements this interface, then register the object with your
Parser, the parser will call the methods in your object to report
all warnings and errors. There are three levels of errors
available: warnings, (possibly) recoverable errors, and
unrecoverable errors. All methods take a SAXParseException as the
only parameter."""
"""Basic interface for SAX error handlers.
If you create an object that implements this interface, then
register the object with your XMLReader, the parser will call the
methods in your object to report all warnings and errors. There
are three levels of errors available: warnings, (possibly)
recoverable errors, and unrecoverable errors. All methods take a
SAXParseException as the only parameter."""
def error(self, exception):
"Handle a recoverable error."

View File

@ -6,6 +6,17 @@ import handler
# ===== XMLREADER =====
class XMLReader:
"""Interface for reading an XML document using callbacks.
XMLReader is the interface that an XML parser's SAX2 driver must
implement. This interface allows an application to set and query
features and properties in the parser, to register event handlers
for document processing, and to initiate a document parse.
All SAX interfaces are assumed to be synchronous: the parse
methods must not return until parsing is complete, and readers
must wait for an event-handler callback to return before reporting
the next event."""
def __init__(self):
self._cont_handler = handler.ContentHandler()