Module java.xml
Package org.xml.sax

# Interface XMLFilter

All Superinterfaces:
  `XMLReader`

All Known Implementing Classes:
  `XMLFilterImpl`

public interface XMLFilter extends XMLReader
Interface for an XML filter.

An XML filter is like an XML reader, except that it obtains its events from another XML reader rather than a primary source like an XML document or database. Filters can modify a stream of events as they pass on to the final application.

The XMLFilterImpl helper class provides a convenient base for creating SAX2 filters, by passing on all `EntityResolver`, `DTDHandler`, `ContentHandler` and `ErrorHandler` events automatically.

Since:
  1.4, SAX 2.0
See Also:
  - `XMLFilterImpl`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `XMLReader`
  `getParent()`
  Get the parent reader.
  `void`
  `setParent(XMLReader parent)`
  Set the parent reader.

  ### Methods declared in interface org.xml.sax.XMLReader

  `getContentHandler, getDTDHandler, getEntityResolver, getErrorHandler, getFeature, getProperty, parse, parse, setContentHandler, setDTDHandler, setEntityResolver, setErrorHandler, setFeature, setProperty`

- ## Method Details

  - ### setParent

    void setParent(XMLReader parent)
    Set the parent reader.

    This method allows the application to link the filter to a parent reader (which may be another filter). The argument may not be null.

    Parameters:
      `parent` - The parent reader.

  - ### getParent

    XMLReader getParent()
    Get the parent reader.

    This method allows the application to query the parent reader (which may be another filter). It is generally a bad idea to perform any operations on the parent reader directly: they should all pass through this filter.

    Returns:
      The parent filter, or null if none has been set.