public interface XMLParserConfiguration implements XMLComponentManager
Represents a parser configuration. The parser configuration maintains
a table of recognized features and properties, assembles components
for the parsing pipeline, and is responsible for initiating parsing
of an XML document.
By separating the configuration of a parser from the specific parser
instance, applications can create new configurations and re-use the
existing parser components and external API generators (e.g. the
DOMParser and SAXParser).
The internals of any specific parser configuration instance are hidden.
Therefore, each configuration may implement the parsing mechanism any
way necessary. However, the parser configuration should follow these
guidelines:
Call the reset method on each component before parsing.
This is only required if the configuration is re-using existing
components that conform to the XMLComponent interface.
If the configuration uses all custom parts, then it is free to
implement everything as it sees fit as long as it follows the
other guidelines.
Call the setFeature and setProperty method
on each component during parsing to propagate features and properties
that have changed. This is only required if the configuration is
re-using existing components that conform to the XMLComponent
interface. If the configuration uses all custom parts, then it is free
to implement everything as it sees fit as long as it follows the other
guidelines.
Pass the same unique String references for all symbols that are
propagated to the registered handlers. Symbols include, but may not
be limited to, the names of elements and attributes (including their
uri, prefix, and localpart). This is suggested but not an absolute
must. However, the standard parser components may require access to
the same symbol table for creation of unique symbol references to be
propagated in the XNI pipeline.
The parser can use this method to instruct this configuration
to begin parsing an XML document from any valid input source
(a character stream, a byte stream, or a URI).
Parsers may not invoke this method while a parse is in progress.
Once a parse is complete, the parser may then parse another XML
document.
This method is synchronous: it will not return until parsing
has ended. If a client application wants to terminate
parsing early, it should throw an exception.
When this method returns, all characters streams and byte streams
opened by the parser are closed.
param
source The input source for the top-level of the
XML document.
exception
XNIException Any XNI exception, possibly wrapping
another exception.
exception
IOException An IO exception from the parser, possibly
from a byte stream or character stream
supplied by the parser.