Module  java.xml
软件包  org.w3c.dom.traversal

Interface NodeFilter

  • All Known Subinterfaces:
    LSSerializerFilter


    public interface NodeFilter
    过滤器是知道如何“过滤掉”节点的对象。 如果一个NodeIteratorTreeWalker被赋予一个NodeFilter ,它将在返回下一个节点之前应用该过滤器。 如果过滤器表示接受节点,则遍历逻辑返回; 否则,遍历查找下一个节点,并假装被拒绝的节点不存在。

    DOM不提供任何过滤器。 NodeFilter只是用户可以实现的接口来提供自己的过滤器。

    NodeFilters不需要知道如何从节点到节点,也不需要知道正在被遍历的数据结构。 这使得编写过滤器非常容易,因为他们唯一需要知道的是如何评估单个节点。 一个过滤器可以与许多不同类型的遍历一起使用,从而鼓励代码重用。

    另见Document Object Model (DOM) Level 2 Traversal and Range Specification

    从以下版本开始:
    9,DOM Level 2
    • 字段详细信息

      • FILTER_ACCEPT

        static final short FILTER_ACCEPT
        接受节点。 NodeIteratorTreeWalker定义的导航方法将返回此节点。
        另请参见:
        Constant Field Values
      • FILTER_REJECT

        static final short FILTER_REJECT
        拒绝节点。 NodeIteratorTreeWalker定义的导航方法不会返回此节点。 对于TreeWalker ,这个节点的子节点也将被拒绝。 NodeIterators将其视为FILTER_SKIP的同义词。
        另请参见:
        Constant Field Values
      • FILTER_SKIP

        static final short FILTER_SKIP
        跳过这个单个节点。 NodeIteratorTreeWalker定义的导航方法不会返回此节点。 对于NodeIteratorTreeWalker ,此节点的子节点仍将被考虑。
        另请参见:
        Constant Field Values
      • SHOW_ELEMENT

        static final int SHOW_ELEMENT
        显示 Element节点。
        另请参见:
        Constant Field Values
      • SHOW_ATTRIBUTE

        static final int SHOW_ATTRIBUTE
        显示Attr节点。 这只有在创建具有属性节点的NodeIteratorTreeWalker作为其root ; 在这种情况下,这意味着属性节点将出现在迭代或遍历的第一个位置。 由于属性不是其他节点的子节点,因此在遍历文档树时不会出现。
        另请参见:
        Constant Field Values
      • SHOW_CDATA_SECTION

        static final int SHOW_CDATA_SECTION
        显示 CDATASection节点。
        另请参见:
        Constant Field Values
      • SHOW_ENTITY_REFERENCE

        static final int SHOW_ENTITY_REFERENCE
        显示 EntityReference节点。
        另请参见:
        Constant Field Values
      • SHOW_ENTITY

        static final int SHOW_ENTITY
        显示Entity节点。 这仅在创建NodeIteratorTreeWalkerEntity节点作为其root ; 在这种情况下,这意味着Entity节点将出现在遍历的第一个位置。 由于实体不是文档树的一部分,因此它们在遍历文档树时不会出现。
        另请参见:
        Constant Field Values
      • SHOW_PROCESSING_INSTRUCTION

        static final int SHOW_PROCESSING_INSTRUCTION
        显示 ProcessingInstruction节点。
        另请参见:
        Constant Field Values
      • SHOW_COMMENT

        static final int SHOW_COMMENT
        显示 Comment节点。
        另请参见:
        Constant Field Values
      • SHOW_DOCUMENT

        static final int SHOW_DOCUMENT
        显示 Document节点。
        另请参见:
        Constant Field Values
      • SHOW_DOCUMENT_TYPE

        static final int SHOW_DOCUMENT_TYPE
        显示 DocumentType节点。
        另请参见:
        Constant Field Values
      • SHOW_DOCUMENT_FRAGMENT

        static final int SHOW_DOCUMENT_FRAGMENT
        显示 DocumentFragment节点。
        另请参见:
        Constant Field Values
      • SHOW_NOTATION

        static final int SHOW_NOTATION
        显示Notation节点。 这仅在创建NodeIteratorTreeWalkerNotation节点作为其root ; 在这种情况下,这意味着Notation节点将出现在遍历的第一个位置。 由于符号不是文档树的一部分,因此它们在遍历文档树时不会出现。
        另请参见:
        Constant Field Values
    • 方法详细信息

      • acceptNode

        short acceptNode​(Node n)
        TreeWalkerNodeIterator的逻辑视图中测试指定节点是否可见。 这个功能将通过执行TreeWalkerNodeIterator来调用; 通常不会直接从用户代码中调用。 (虽然您可以使用相同的过滤器来指导自己的应用程序逻辑,但可以这样做)。
        参数
        n - 查看是否通过过滤器的节点。
        结果
        A constant to determine whether the node is accepted, rejected, or skipped, as defined above.