diff options
author | Lars Gustäbel <lars@gustaebel.de> | 2000-09-24 20:38:18 (GMT) |
---|---|---|
committer | Lars Gustäbel <lars@gustaebel.de> | 2000-09-24 20:38:18 (GMT) |
commit | bb757136b29369e88c72e1563ee95cd6514c15a0 (patch) | |
tree | 8c1e6a6f736bf2f6e3c65ab9e89f4ac26b0af83a | |
parent | 33315b180b3cc6981169cf60744445de91a6b8e9 (diff) | |
download | cpython-bb757136b29369e88c72e1563ee95cd6514c15a0.zip cpython-bb757136b29369e88c72e1563ee95cd6514c15a0.tar.gz cpython-bb757136b29369e88c72e1563ee95cd6514c15a0.tar.bz2 |
Improvements to doco strings.
Tiny bug fix to expatreader.py (endDocument was only called after errors).
-rw-r--r-- | Lib/xml/sax/__init__.py | 4 | ||||
-rw-r--r-- | Lib/xml/sax/expatreader.py | 11 | ||||
-rw-r--r-- | Lib/xml/sax/handler.py | 15 | ||||
-rw-r--r-- | Lib/xml/sax/xmlreader.py | 11 |
4 files changed, 27 insertions, 14 deletions
diff --git a/Lib/xml/sax/__init__.py b/Lib/xml/sax/__init__.py index 24b7d24..7c62ea1 100644 --- a/Lib/xml/sax/__init__.py +++ b/Lib/xml/sax/__init__.py @@ -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 diff --git a/Lib/xml/sax/expatreader.py b/Lib/xml/sax/expatreader.py index e3b3ad0..1d93542 100644 --- a/Lib/xml/sax/expatreader.py +++ b/Lib/xml/sax/expatreader.py @@ -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): diff --git a/Lib/xml/sax/handler.py b/Lib/xml/sax/handler.py index c80457c..0931014 100644 --- a/Lib/xml/sax/handler.py +++ b/Lib/xml/sax/handler.py @@ -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." diff --git a/Lib/xml/sax/xmlreader.py b/Lib/xml/sax/xmlreader.py index 04e7bc1..c381fd4 100644 --- a/Lib/xml/sax/xmlreader.py +++ b/Lib/xml/sax/xmlreader.py @@ -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() |