org.apache.fop.render

## Interface XMLHandler

All Known Implementing Classes:
  AbstractGenericSVGHandler, AFPSVGHandler, Java2DSVGHandler, PCLSVGHandler, PDFSVGHandler, PSSVGHandler, XMLXMLHandler

    public interface XMLHandler

This interface is implemented by classes that can handle a certain type of foreign objects.

### Field Summary

Fields
`static String` `HANDLE_ALL` Used to indicate that all MIME types or XML namespaces are handled.

### Method Summary

All Methods Instance Methods Abstract Methods
`String` `getNamespace()`
`void` `handleXML(RendererContext context, Document doc, String ns)` Handle an external xml document inside a Foreign Object Area.
`boolean` `supportsRenderer(Renderer renderer)` Checks if this XMLHandler supports handling an XML namespace for a particular renderer.

### Field Detail

#### HANDLE_ALL

    static final String HANDLE_ALL

Used to indicate that all MIME types or XML namespaces are handled.

See Also:
  Constant Field Values

### Method Detail

#### handleXML

    void handleXML(RendererContext context,
                   Document doc,
                   String ns)
            throws Exception

Handle an external xml document inside a Foreign Object Area.

This may throw an exception if for some reason it cannot be handled. The caller is expected to deal with this exception.

The implementation may convert the XML document internally to another XML dialect (SVG, for example) and call renderXML() on the AbstractRenderer again (which can be retrieved through the RendererContext).

Parameters:
  `context` - The RendererContext (contains the user agent)
  `doc` - A DOM containing the foreign object to be processed
  `ns` - The Namespace of the foreign object
Throws:
  `Exception` - If an error occurs during processing.

#### supportsRenderer

    boolean supportsRenderer(Renderer renderer)

Checks if this XMLHandler supports handling an XML namespace for a particular renderer.

Parameters:
  `renderer` - the renderer for which to check.
Returns:
  true if this XML handler supports a particular renderer

#### getNamespace

    String getNamespace()

Returns:
  the XML namespace for the XML dialect this XMLHandler supports, null if all XML content is handled by this instance.