| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | :mod:`xml.sax.xmlreader` --- Interface for XML parsers
 | 
					
						
							|  |  |  | ======================================================
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. module:: xml.sax.xmlreader
 | 
					
						
							|  |  |  |    :synopsis: Interface which SAX-compliant XML parsers must implement.
 | 
					
						
							|  |  |  | .. moduleauthor:: Lars Marius Garshol <larsga@garshol.priv.no>
 | 
					
						
							|  |  |  | .. sectionauthor:: Martin v. Löwis <martin@v.loewis.de>
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SAX parsers implement the :class:`XMLReader` interface. They are implemented in
 | 
					
						
							|  |  |  | a Python module, which must provide a function :func:`create_parser`. This
 | 
					
						
							|  |  |  | function is invoked by  :func:`xml.sax.make_parser` with no arguments to create
 | 
					
						
							|  |  |  | a new  parser object.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. class:: XMLReader()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Base class which can be inherited by SAX parsers.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. class:: IncrementalParser()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    In some cases, it is desirable not to parse an input source at once, but to feed
 | 
					
						
							|  |  |  |    chunks of the document as they get available. Note that the reader will normally
 | 
					
						
							|  |  |  |    not read the entire file, but read it in chunks as well; still :meth:`parse`
 | 
					
						
							|  |  |  |    won't return until the entire document is processed. So these interfaces should
 | 
					
						
							|  |  |  |    be used if the blocking behaviour of :meth:`parse` is not desirable.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    When the parser is instantiated it is ready to begin accepting data from the
 | 
					
						
							|  |  |  |    feed method immediately. After parsing has been finished with a call to close
 | 
					
						
							|  |  |  |    the reset method must be called to make the parser ready to accept new data,
 | 
					
						
							|  |  |  |    either from feed or using the parse method.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Note that these methods must *not* be called during parsing, that is, after
 | 
					
						
							|  |  |  |    parse has been called and before it returns.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    By default, the class also implements the parse method of the XMLReader
 | 
					
						
							|  |  |  |    interface using the feed, close and reset methods of the IncrementalParser
 | 
					
						
							|  |  |  |    interface as a convenience to SAX 2.0 driver writers.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. class:: Locator()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Interface for associating a SAX event with a document location. A locator object
 | 
					
						
							|  |  |  |    will return valid results only during calls to DocumentHandler methods; at any
 | 
					
						
							|  |  |  |    other time, the results are unpredictable. If information is not available,
 | 
					
						
							|  |  |  |    methods may return ``None``.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-09-16 15:58:14 +00:00
										 |  |  | .. class:: InputSource(system_id=None)
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |    Encapsulation of the information needed by the :class:`XMLReader` to read
 | 
					
						
							|  |  |  |    entities.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    This class may include information about the public identifier, system
 | 
					
						
							|  |  |  |    identifier, byte stream (possibly with character encoding information) and/or
 | 
					
						
							|  |  |  |    the character stream of an entity.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Applications will create objects of this class for use in the
 | 
					
						
							|  |  |  |    :meth:`XMLReader.parse` method and for returning from
 | 
					
						
							|  |  |  |    EntityResolver.resolveEntity.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    An :class:`InputSource` belongs to the application, the :class:`XMLReader` is
 | 
					
						
							|  |  |  |    not allowed to modify :class:`InputSource` objects passed to it from the
 | 
					
						
							|  |  |  |    application, although it may make copies and modify those.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. class:: AttributesImpl(attrs)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    This is an implementation of the :class:`Attributes` interface (see section
 | 
					
						
							|  |  |  |    :ref:`attributes-objects`).  This is a dictionary-like object which
 | 
					
						
							|  |  |  |    represents the element attributes in a :meth:`startElement` call. In addition
 | 
					
						
							|  |  |  |    to the most useful dictionary operations, it supports a number of other
 | 
					
						
							|  |  |  |    methods as described by the interface. Objects of this class should be
 | 
					
						
							|  |  |  |    instantiated by readers; *attrs* must be a dictionary-like object containing
 | 
					
						
							|  |  |  |    a mapping from attribute names to attribute values.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. class:: AttributesNSImpl(attrs, qnames)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Namespace-aware variant of :class:`AttributesImpl`, which will be passed to
 | 
					
						
							|  |  |  |    :meth:`startElementNS`. It is derived from :class:`AttributesImpl`, but
 | 
					
						
							|  |  |  |    understands attribute names as two-tuples of *namespaceURI* and
 | 
					
						
							|  |  |  |    *localname*. In addition, it provides a number of methods expecting qualified
 | 
					
						
							|  |  |  |    names as they appear in the original document.  This class implements the
 | 
					
						
							|  |  |  |    :class:`AttributesNS` interface (see section :ref:`attributes-ns-objects`).
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. _xmlreader-objects:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | XMLReader Objects
 | 
					
						
							|  |  |  | -----------------
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The :class:`XMLReader` interface supports the following methods:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.parse(source)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Process an input source, producing SAX events. The *source* object can be a
 | 
					
						
							|  |  |  |    system identifier (a string identifying the input source -- typically a file
 | 
					
						
							|  |  |  |    name or an URL), a file-like object, or an :class:`InputSource` object. When
 | 
					
						
							|  |  |  |    :meth:`parse` returns, the input is completely processed, and the parser object
 | 
					
						
							|  |  |  |    can be discarded or reset. As a limitation, the current implementation only
 | 
					
						
							|  |  |  |    accepts byte streams; processing of character streams is for further study.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.getContentHandler()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the current :class:`ContentHandler`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.setContentHandler(handler)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Set the current :class:`ContentHandler`.  If no :class:`ContentHandler` is set,
 | 
					
						
							|  |  |  |    content events will be discarded.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.getDTDHandler()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the current :class:`DTDHandler`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.setDTDHandler(handler)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Set the current :class:`DTDHandler`.  If no :class:`DTDHandler` is set, DTD
 | 
					
						
							|  |  |  |    events will be discarded.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.getEntityResolver()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the current :class:`EntityResolver`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.setEntityResolver(handler)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Set the current :class:`EntityResolver`.  If no :class:`EntityResolver` is set,
 | 
					
						
							|  |  |  |    attempts to resolve an external entity will result in opening the system
 | 
					
						
							|  |  |  |    identifier for the entity, and fail if it is not available.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.getErrorHandler()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the current :class:`ErrorHandler`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.setErrorHandler(handler)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Set the current error handler.  If no :class:`ErrorHandler` is set, errors will
 | 
					
						
							|  |  |  |    be raised as exceptions, and warnings will be printed.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.setLocale(locale)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Allow an application to set the locale for errors and warnings.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    SAX parsers are not required to provide localization for errors and warnings; if
 | 
					
						
							| 
									
										
										
										
											2010-08-03 12:06:29 +00:00
										 |  |  |    they cannot support the requested locale, however, they must raise a SAX
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  |    exception.  Applications may request a locale change in the middle of a parse.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.getFeature(featurename)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the current setting for feature *featurename*.  If the feature is not
 | 
					
						
							|  |  |  |    recognized, :exc:`SAXNotRecognizedException` is raised. The well-known
 | 
					
						
							|  |  |  |    featurenames are listed in the module :mod:`xml.sax.handler`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.setFeature(featurename, value)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Set the *featurename* to *value*. If the feature is not recognized,
 | 
					
						
							|  |  |  |    :exc:`SAXNotRecognizedException` is raised. If the feature or its setting is not
 | 
					
						
							|  |  |  |    supported by the parser, *SAXNotSupportedException* is raised.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.getProperty(propertyname)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the current setting for property *propertyname*. If the property is not
 | 
					
						
							|  |  |  |    recognized, a :exc:`SAXNotRecognizedException` is raised. The well-known
 | 
					
						
							|  |  |  |    propertynames are listed in the module :mod:`xml.sax.handler`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: XMLReader.setProperty(propertyname, value)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Set the *propertyname* to *value*. If the property is not recognized,
 | 
					
						
							|  |  |  |    :exc:`SAXNotRecognizedException` is raised. If the property or its setting is
 | 
					
						
							|  |  |  |    not supported by the parser, *SAXNotSupportedException* is raised.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. _incremental-parser-objects:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | IncrementalParser Objects
 | 
					
						
							|  |  |  | -------------------------
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Instances of :class:`IncrementalParser` offer the following additional methods:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: IncrementalParser.feed(data)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Process a chunk of *data*.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: IncrementalParser.close()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Assume the end of the document. That will check well-formedness conditions that
 | 
					
						
							|  |  |  |    can be checked only at the end, invoke handlers, and may clean up resources
 | 
					
						
							|  |  |  |    allocated during parsing.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: IncrementalParser.reset()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    This method is called after close has been called to reset the parser so that it
 | 
					
						
							|  |  |  |    is ready to parse new documents. The results of calling parse or feed after
 | 
					
						
							|  |  |  |    close without calling reset are undefined.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. _locator-objects:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Locator Objects
 | 
					
						
							|  |  |  | ---------------
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Instances of :class:`Locator` provide these methods:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: Locator.getColumnNumber()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the column number where the current event ends.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: Locator.getLineNumber()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the line number where the current event ends.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: Locator.getPublicId()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the public identifier for the current event.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: Locator.getSystemId()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the system identifier for the current event.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. _input-source-objects:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | InputSource Objects
 | 
					
						
							|  |  |  | -------------------
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.setPublicId(id)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Sets the public identifier of this :class:`InputSource`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.getPublicId()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Returns the public identifier of this :class:`InputSource`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.setSystemId(id)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Sets the system identifier of this :class:`InputSource`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.getSystemId()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Returns the system identifier of this :class:`InputSource`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.setEncoding(encoding)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Sets the character encoding of this :class:`InputSource`.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    The encoding must be a string acceptable for an XML encoding declaration (see
 | 
					
						
							|  |  |  |    section 4.3.3 of the XML recommendation).
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    The encoding attribute of the :class:`InputSource` is ignored if the
 | 
					
						
							|  |  |  |    :class:`InputSource` also contains a character stream.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.getEncoding()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Get the character encoding of this InputSource.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.setByteStream(bytefile)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Set the byte stream (a Python file-like object which does not perform
 | 
					
						
							|  |  |  |    byte-to-character conversion) for this input source.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    The SAX parser will ignore this if there is also a character stream specified,
 | 
					
						
							|  |  |  |    but it will use a byte stream in preference to opening a URI connection itself.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    If the application knows the character encoding of the byte stream, it should
 | 
					
						
							|  |  |  |    set it with the setEncoding method.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.getByteStream()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Get the byte stream for this input source.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    The getEncoding method will return the character encoding for this byte stream,
 | 
					
						
							|  |  |  |    or None if unknown.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.setCharacterStream(charfile)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Set the character stream for this input source. (The stream must be a Python 1.6
 | 
					
						
							| 
									
										
										
										
											2008-02-01 11:56:49 +00:00
										 |  |  |    Unicode-wrapped file-like that performs conversion to strings.)
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |    If there is a character stream specified, the SAX parser will ignore any byte
 | 
					
						
							|  |  |  |    stream and will not attempt to open a URI connection to the system identifier.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: InputSource.getCharacterStream()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Get the character stream for this input source.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. _attributes-objects:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The :class:`Attributes` Interface
 | 
					
						
							|  |  |  | ---------------------------------
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :class:`Attributes` objects implement a portion of the mapping protocol,
 | 
					
						
							| 
									
										
										
										
											2007-09-10 00:03:41 +00:00
										 |  |  | including the methods :meth:`copy`, :meth:`get`, :meth:`__contains__`,
 | 
					
						
							|  |  |  | :meth:`items`, :meth:`keys`, and :meth:`values`.  The following methods
 | 
					
						
							|  |  |  | are also provided:
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: Attributes.getLength()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the number of attributes.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: Attributes.getNames()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the names of the attributes.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: Attributes.getType(name)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Returns the type of the attribute *name*, which is normally ``'CDATA'``.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: Attributes.getValue(name)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the value of attribute *name*.
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
											  
											
												Merged revisions 59605-59624 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
  r59606 | georg.brandl | 2007-12-29 11:57:00 +0100 (Sat, 29 Dec 2007) | 2 lines
  Some cleanup in the docs.
........
  r59611 | martin.v.loewis | 2007-12-29 19:49:21 +0100 (Sat, 29 Dec 2007) | 2 lines
  Bug #1699: Define _BSD_SOURCE only on OpenBSD.
........
  r59612 | raymond.hettinger | 2007-12-29 23:09:34 +0100 (Sat, 29 Dec 2007) | 1 line
  Simpler documentation for itertools.tee().  Should be backported.
........
  r59613 | raymond.hettinger | 2007-12-29 23:16:24 +0100 (Sat, 29 Dec 2007) | 1 line
  Improve docs for itertools.groupby().  The use of xrange(0) to create a unique object is less obvious than object().
........
  r59620 | christian.heimes | 2007-12-31 15:47:07 +0100 (Mon, 31 Dec 2007) | 3 lines
  Added wininst-9.0.exe executable for VS 2008
  Integrated bdist_wininst into PCBuild9 directory
........
  r59621 | christian.heimes | 2007-12-31 15:51:18 +0100 (Mon, 31 Dec 2007) | 1 line
  Moved PCbuild directory to PC/VS7.1
........
  r59622 | christian.heimes | 2007-12-31 15:59:26 +0100 (Mon, 31 Dec 2007) | 1 line
  Fix paths for build bot
........
  r59623 | christian.heimes | 2007-12-31 16:02:41 +0100 (Mon, 31 Dec 2007) | 1 line
  Fix paths for build bot, part 2
........
  r59624 | christian.heimes | 2007-12-31 16:18:55 +0100 (Mon, 31 Dec 2007) | 1 line
  Renamed PCBuild9 directory to PCBuild
........
											
										 
											2007-12-31 16:14:33 +00:00
										 |  |  | .. getValueByQName, getNameByQName, getQNameByName, getQNames available
 | 
					
						
							|  |  |  | .. here already, but documented only for derived class.
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. _attributes-ns-objects:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The :class:`AttributesNS` Interface
 | 
					
						
							|  |  |  | -----------------------------------
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | This interface is a subtype of the :class:`Attributes` interface (see section
 | 
					
						
							|  |  |  | :ref:`attributes-objects`).  All methods supported by that interface are also
 | 
					
						
							|  |  |  | available on :class:`AttributesNS` objects.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The following methods are also available:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: AttributesNS.getValueByQName(name)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the value for a qualified name.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: AttributesNS.getNameByQName(name)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the ``(namespace, localname)`` pair for a qualified *name*.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: AttributesNS.getQNameByName(name)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the qualified name for a ``(namespace, localname)`` pair.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. method:: AttributesNS.getQNames()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Return the qualified names of all attributes.
 | 
					
						
							|  |  |  | 
 |