13.8.1 XMLReader Objects
Keywords: lib

##
13.8.1 XMLReader Objects

The `XMLReader` interface supports the following methods:

`parse` (source)
  Process an input source, producing SAX events. The source object can be a system identifier (i.e. a string identifying the input source - typically a file name or an URL), a file-like object, or an `InputSource` object. When `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.

`getContentHandler` ()
  Return the current `ContentHandler`.

`setContentHandler` (handler)
  Set the current `ContentHandler`. If no `ContentHandler` is set, content events will be discarded.

`getDTDHandler` ()
  Return the current `DTDHandler`.

`setDTDHandler` (handler)
  Set the current `DTDHandler`. If no `DTDHandler` is set, DTD events will be discarded.

`getEntityResolver` ()
  Return the current `EntityResolver`.

`setEntityResolver` (handler)
  Set the current `EntityResolver`. If no `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.

`getErrorHandler` ()
  Return the current `ErrorHandler`.

`setErrorHandler` (handler)
  Set the current error handler. If no `ErrorHandler` is set, errors will be raised as exceptions, and warnings will be printed.

`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 they cannot support the requested locale, however, they must throw a SAX exception. Applications may request a locale change in the middle of a parse.

`getFeature` (featurename)
  Return the current setting for feature featurename. If the feature is not recognized, `SAXNotRecognizedException` is raised. The well-known featurenames are listed in the module `xml.sax.handler`.

`setFeature` (featurename, value)
  Set the featurename to value. If the feature is not recognized, `SAXNotRecognizedException` is raised. If the feature or its setting is not supported by the parser, SAXNotSupportedException is raised.

`getProperty` (propertyname)
  Return the current setting for property propertyname. If the property is not recognized, a `SAXNotRecognizedException` is raised. The well-known propertynames are listed in the module `xml.sax.handler`.

`setProperty` (propertyname, value)
  Set the propertyname to value. If the property is not recognized, `SAXNotRecognizedException` is raised. If the property or its setting is not supported by the parser, SAXNotSupportedException is raised.