|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
DOM Level 3 WD Experimental: The DOM Level 3 specification is at the stage of Working Draft, which represents work in progress and thus may be updated, replaced, or obsoleted by other documents at any time.
DOMBuilderFilter
s provide applications the ability to examine
nodes as they are being constructed during a parse. As each node is
examined, it may be modified or removed, or the entire parse may be
terminated early.
At the time any of the filter methods are called by the parser, the
owner Document and DOMImplementation objects exist and are accessible.
The document element is never passed to the DOMBuilderFilter
methods, i.e. it is not possible to filter out the document element.
All validity checking while reading a document occurs on the source document as it appears on the input stream, not on the DOM document as it is built in memory. With filters, the document in memory may be a subset of the document on the stream, and its validity may have been affected by the filtering.
All default content, including default attributes, must be passed to the filter methods.
Any exception raised in the filter are ignored by the
DOMBuilder
.
The constants FILTER_ACCEPT
, FILTER_REJECT
and FILTER_SKIP
are defined in DOM Level 2 Traversal . The
description of these methods is not complete
See also the Document Object Model (DOM) Level 3 Abstract Schemas and Load and Save Specification.
Field Summary | |
static short |
FILTER_INTERRUPT
Interrupt the normal processing of the document. |
Method Summary | |
short |
acceptNode(Node enode)
This method will be called by the parser at the completion of the parsing of each node. |
int |
getWhatToShow()
Tells the DOMBuilder what types of nodes to show to the
filter. |
short |
startContainer(Node snode)
This method will be called by the parser after each Element
start tag has been scanned, but before the remainder of the
Element is processed. |
Field Detail |
public static final short FILTER_INTERRUPT
Method Detail |
public short startContainer(Node snode)
Element
start tag has been scanned, but before the remainder of the
Element
is processed. The intent is to allow the
element, including any children, to be efficiently skipped. Note that
only element nodes are passed to the startContainer
function.
startContainer
for
filtering will include all of the Element's attributes, but none of
the children nodes. The Element may not yet be in place in the
document being constructed (it may not have a parent node.)
startContainer
filter function may access or change
the attributers for the Element. Changing Namespace declarations will
have no effect on namespace resolution by the parser.
snode
- The newly encountered element. At the time this method is
called, the element is incomplete - it will have its attributes,
but no children. Should the parameter be an Element since we only
passed elements to startContainer?
FILTER_ACCEPT
if this Element
should be included in the DOM document being built.
FILTER_REJECT
if the Element
and all of
its children should be rejected. FILTER_SKIP
if the
Element
should be rejected. All of its children are
inserted in place of the rejected Element
node.
FILTER_INTERRUPT
if the filter wants to stop the
processing of the document. Interrupting the processing of the
document does no longer garantee that the entire is XML
well-formed. Returning any other values will result in unspecified
behavior.public short acceptNode(Node enode)
enode
- The newly constructed element. At the time this method is
called, the element is complete - it has all of its children (and
their children, recursively) and attributes, and is attached as a
child to its parent.
FILTER_ACCEPT
if this Node
should
be included in the DOM document being built.
FILTER_REJECT
if the Node
and all of its
children should be rejected. FILTER_SKIP
if the
Node
should be skipped and the Node
should be replaced by all the children of the Node
.public int getWhatToShow()
DOMBuilder
what types of nodes to show to the
filter. See NodeFilter
for definition of the constants.
The constant SHOW_ATTRIBUTE
is meaningless here,
attribute nodes will never be passed to a
DOMBuilderFilter
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |