xml-commons-resolver API: Class ResolvingXMLFilter

Overview | Package | Class | Use | Tree | Serialized | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.xml.resolver.tools
Class ResolvingXMLFilter

    java.lang.Object
      |
      +--org.xml.sax.helpers.XMLFilterImpl
            |
            +--org.apache.xml.resolver.tools.ResolvingXMLFilter

All Implemented Interfaces:
  org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler, org.xml.sax.XMLFilter, org.xml.sax.XMLReader

Direct Known Subclasses:
  ResolvingXMLReader

public class ResolvingXMLFilter
extends org.xml.sax.helpers.XMLFilterImpl

A SAX XMLFilter that performs catalog-based entity resolution.

This class implements a SAX XMLFilter that performs entity resolution using the CatalogResolver. The actual, underlying parser is obtained from a SAXParserFactory.

Version:
  1.0
Author:
  Norman Walsh Norman.Walsh@Sun.COM
See Also:
  `CatalogResolver`, `XMLFilter`

Field Summary
`static boolean` | `suppressExplanation` Suppress explanatory message?

Constructor Summary
`ResolvingXMLFilter()` Construct an empty XML Filter with no parent.
`ResolvingXMLFilter(CatalogManager manager)` Construct an XML filter with the specified parent.
`ResolvingXMLFilter(org.xml.sax.XMLReader parent)` Construct an XML filter with the specified parent.
`ResolvingXMLFilter(org.xml.sax.XMLReader parent, CatalogManager manager)` Construct an XML filter with the specified parent.

Method Summary
`Catalog` | `getCatalog()` Provide accessto the underlying Catalog.
`void` | `notationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)` SAX DTDHandler API.
`void` | `parse(org.xml.sax.InputSource input)` SAX XMLReader API.
`void` | `parse(java.lang.String systemId)` SAX XMLReader API.
`void` | `processingInstruction(java.lang.String target, java.lang.String pidata)` SAX ContentHandler API.
`org.xml.sax.InputSource` | `resolveEntity(java.lang.String publicId, java.lang.String systemId)` Implements the `resolveEntity` method for the SAX interface, using an underlying CatalogResolver to do the real work.
`void` | `startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts)` SAX ContentHandler API.
`void` | `unparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName)` SAX DTDHandler API.

Methods inherited from class org.xml.sax.helpers.XMLFilterImpl
`characters, endDocument, endElement, endPrefixMapping, error, fatalError, getContentHandler, getDTDHandler, getEntityResolver, getErrorHandler, getFeature, getParent, getProperty, ignorableWhitespace, setContentHandler, setDocumentLocator, setDTDHandler, setEntityResolver, setErrorHandler, setFeature, setParent, setProperty, skippedEntity, startDocument, startPrefixMapping, warning`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### suppressExplanation

    public static boolean suppressExplanation

  Suppress explanatory message?
  See Also:
    `parse(InputSource)`

Constructor Detail

### ResolvingXMLFilter

    public ResolvingXMLFilter()

  Construct an empty XML Filter with no parent.

### ResolvingXMLFilter

    public ResolvingXMLFilter(org.xml.sax.XMLReader parent)

  Construct an XML filter with the specified parent.

### ResolvingXMLFilter

    public ResolvingXMLFilter(CatalogManager manager)

  Construct an XML filter with the specified parent.

### ResolvingXMLFilter

    public ResolvingXMLFilter(org.xml.sax.XMLReader parent,
                              CatalogManager manager)

  Construct an XML filter with the specified parent.

Method Detail

### getCatalog

    public Catalog getCatalog()

  Provide accessto the underlying Catalog.

### parse

    public void parse(org.xml.sax.InputSource input)
               throws java.io.IOException,
                      org.xml.sax.SAXException

  SAX XMLReader API.

  Note that the JAXP 1.1ea2 parser crashes with an InternalError if it encounters a system identifier that appears to be a relative URI that begins with a slash. For example, the declaration:

       <!DOCTYPE book SYSTEM "/path/to/dtd/on/my/system/docbookx.dtd">

  would cause such an error. As a convenience, this method catches that error and prints an explanation. (Unfortunately, it's not possible to identify the particular system identifier that causes the problem.)

  The underlying error is forwarded after printing the explanatory message. The message is only every printed once and if `suppressExplanation` is set to `false` before parsing, it will never be printed.

  Overrides:
    `parse` in class `org.xml.sax.helpers.XMLFilterImpl`

### parse

    public void parse(java.lang.String systemId)
               throws java.io.IOException,
                      org.xml.sax.SAXException

  SAX XMLReader API.
  Overrides:
    `parse` in class `org.xml.sax.helpers.XMLFilterImpl`
  See Also:
    `parse(InputSource)`

### resolveEntity

    public org.xml.sax.InputSource resolveEntity(java.lang.String publicId,
                                                 java.lang.String systemId)

  Implements the `resolveEntity` method for the SAX interface, using an underlying CatalogResolver to do the real work.
  Overrides:
    `resolveEntity` in class `org.xml.sax.helpers.XMLFilterImpl`

### notationDecl

    public void notationDecl(java.lang.String name,
                             java.lang.String publicId,
                             java.lang.String systemId)
                      throws org.xml.sax.SAXException

  SAX DTDHandler API.

  Captured here only to detect the end of the prolog so that we can ignore subsequent oasis-xml-catalog PIs. Otherwise the events are just passed through.

  Overrides:
    `notationDecl` in class `org.xml.sax.helpers.XMLFilterImpl`

### unparsedEntityDecl

    public void unparsedEntityDecl(java.lang.String name,
                                   java.lang.String publicId,
                                   java.lang.String systemId,
                                   java.lang.String notationName)
                            throws org.xml.sax.SAXException

  SAX DTDHandler API.

  Captured here only to detect the end of the prolog so that we can ignore subsequent oasis-xml-catalog PIs. Otherwise the events are just passed through.

  Overrides:
    `unparsedEntityDecl` in class `org.xml.sax.helpers.XMLFilterImpl`

### startElement

    public void startElement(java.lang.String uri,
                             java.lang.String localName,
                             java.lang.String qName,
                             org.xml.sax.Attributes atts)
                      throws org.xml.sax.SAXException

  SAX ContentHandler API.

  Captured here only to detect the end of the prolog so that we can ignore subsequent oasis-xml-catalog PIs. Otherwise the events are just passed through.

  Overrides:
    `startElement` in class `org.xml.sax.helpers.XMLFilterImpl`

### processingInstruction

    public void processingInstruction(java.lang.String target,
                                      java.lang.String pidata)
                               throws org.xml.sax.SAXException

  SAX ContentHandler API.

  Detect and use the oasis-xml-catalog PI if it occurs.

  Overrides:
    `processingInstruction` in class `org.xml.sax.helpers.XMLFilterImpl`

Overview | Package | Class | Use | Tree | Serialized | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2003 Apache Software Foundation. All Rights Reserved.