- All Known Subinterfaces:
LSSerializerFilter
public interface NodeFilter
Filters are objects that know how to "filter out" nodes. If a
NodeIterator
or TreeWalker
is given a
NodeFilter
, it applies the filter before it returns the next
node. If the filter says to accept the node, the traversal logic returns
it; otherwise, traversal looks for the next node and pretends that the
node that was rejected was not there.
The DOM does not provide any filters. NodeFilter
is just an
interface that users can implement to provide their own filters.
NodeFilters
do not need to know how to traverse from node
to node, nor do they need to know anything about the data structure that
is being traversed. This makes it very easy to write filters, since the
only thing they have to know how to do is evaluate a single node. One
filter may be used with a number of different kinds of traversals,
encouraging code reuse.
See also the Document Object Model (DOM) Level 2 Traversal and Range Specification.
- Since:
- 9, DOM Level 2
-
Field Summary
Modifier and TypeFieldDescriptionstatic final short
Accept the node.static final short
Reject the node.static final short
Skip this single node.static final int
Show allNodes
.static final int
ShowAttr
nodes.static final int
ShowCDATASection
nodes.static final int
ShowComment
nodes.static final int
ShowDocument
nodes.static final int
ShowDocumentFragment
nodes.static final int
ShowDocumentType
nodes.static final int
ShowElement
nodes.static final int
ShowEntity
nodes.static final int
ShowEntityReference
nodes.static final int
ShowNotation
nodes.static final int
ShowProcessingInstruction
nodes.static final int
ShowText
nodes. -
Method Summary
Modifier and TypeMethodDescriptionshort
acceptNode
(Node n) Test whether a specified node is visible in the logical view of aTreeWalker
orNodeIterator
.
-
Field Details
-
FILTER_ACCEPT
static final short FILTER_ACCEPTAccept the node. Navigation methods defined forNodeIterator
orTreeWalker
will return this node.- See Also:
-
FILTER_REJECT
static final short FILTER_REJECTReject the node. Navigation methods defined forNodeIterator
orTreeWalker
will not return this node. ForTreeWalker
, the children of this node will also be rejected.NodeIterators
treat this as a synonym forFILTER_SKIP
.- See Also:
-
FILTER_SKIP
static final short FILTER_SKIPSkip this single node. Navigation methods defined forNodeIterator
orTreeWalker
will not return this node. For bothNodeIterator
andTreeWalker
, the children of this node will still be considered.- See Also:
-
SHOW_ALL
static final int SHOW_ALLShow allNodes
.- See Also:
-
SHOW_ELEMENT
static final int SHOW_ELEMENTShowElement
nodes.- See Also:
-
SHOW_ATTRIBUTE
static final int SHOW_ATTRIBUTEShowAttr
nodes. This is meaningful only when creating anNodeIterator
orTreeWalker
with an attribute node as itsroot
; in this case, it means that the attribute node will appear in the first position of the iteration or traversal. Since attributes are never children of other nodes, they do not appear when traversing over the document tree.- See Also:
-
SHOW_TEXT
static final int SHOW_TEXTShowText
nodes.- See Also:
-
SHOW_CDATA_SECTION
static final int SHOW_CDATA_SECTIONShowCDATASection
nodes.- See Also:
-
SHOW_ENTITY_REFERENCE
static final int SHOW_ENTITY_REFERENCEShowEntityReference
nodes.- See Also:
-
SHOW_ENTITY
static final int SHOW_ENTITYShowEntity
nodes. This is meaningful only when creating anNodeIterator
orTreeWalker
with anEntity
node as itsroot
; in this case, it means that theEntity
node will appear in the first position of the traversal. Since entities are not part of the document tree, they do not appear when traversing over the document tree.- See Also:
-
SHOW_PROCESSING_INSTRUCTION
static final int SHOW_PROCESSING_INSTRUCTIONShowProcessingInstruction
nodes.- See Also:
-
SHOW_COMMENT
static final int SHOW_COMMENTShowComment
nodes.- See Also:
-
SHOW_DOCUMENT
static final int SHOW_DOCUMENTShowDocument
nodes.- See Also:
-
SHOW_DOCUMENT_TYPE
static final int SHOW_DOCUMENT_TYPEShowDocumentType
nodes.- See Also:
-
SHOW_DOCUMENT_FRAGMENT
static final int SHOW_DOCUMENT_FRAGMENTShowDocumentFragment
nodes.- See Also:
-
SHOW_NOTATION
static final int SHOW_NOTATIONShowNotation
nodes. This is meaningful only when creating anNodeIterator
orTreeWalker
with aNotation
node as itsroot
; in this case, it means that theNotation
node will appear in the first position of the traversal. Since notations are not part of the document tree, they do not appear when traversing over the document tree.- See Also:
-
-
Method Details
-
acceptNode
Test whether a specified node is visible in the logical view of aTreeWalker
orNodeIterator
. This function will be called by the implementation ofTreeWalker
andNodeIterator
; it is not normally called directly from user code. (Though you could do so if you wanted to use the same filter to guide your own application logic.)- Parameters:
n
- The node to check to see if it passes the filter or not.- Returns:
- A constant to determine whether the node is accepted, rejected, or skipped, as defined above.
-