public interface LSParserFilter
LSParserFilter
s提供应用检查节点作为他们正在建立在分析的能力。由于每个节点检查,它可能被修改或删除,或整个分析可能会提前终止。
在任何的过滤方法的时间称为解析器,主文件和DOMImplementation物体存在并可。文档元素是不会传递到LSParserFilter
方法,即是不可能过滤掉的文档元素。Document
,DocumentType
,Notation
,Entity
,和Attr
节点不会传递到acceptNode
方法对滤波器。一个EntityReference
节点的子节点如果参数“ entities”设置为false
通过过滤器。需要注意的是,通过参数“ entities”描述,未展开的实体引用节点从不丢弃,总是通过过滤器。
所有的有效性检查,分析文档出现在源文件一样出现在输入流,不在DOM文档作为它是建立在内存。与过滤器,在内存中的文档可能是流上的文档的一个子集,其有效性可能会受到过滤。
当元素被传递到过滤方法时,所有的默认属性必须存在于元素上。所有其他默认内容必须传递给过滤方法。
DOM应用程序不能提高过滤器的例外。从过滤器抛出异常效果DOM实现的依赖。
又见Document Object Model (DOM) Level 3 Load and Save Specification。
Modifier and Type | Field and Description |
---|---|
static short |
FILTER_ACCEPT
接受节点。
|
static short |
FILTER_INTERRUPT
中断文档的正常处理。
|
static short |
FILTER_REJECT
拒绝节点和它的孩子。
|
static short |
FILTER_SKIP
跳过这个单一节点。
|
Modifier and Type | Method and Description |
---|---|
short |
acceptNode(Node nodeArg)
此方法将被解析器调用完成,完成每个节点的解析。
|
int |
getWhatToShow()
告诉
LSParser 什么类型的节点显示的方法
LSParserFilter.acceptNode 。
|
short |
startElement(Element elementArg)
分析器将在每
Element 开始标记已扫描的调用这个方法,但在
Element 其余处理。
|
static final short FILTER_ACCEPT
static final short FILTER_REJECT
static final short FILTER_SKIP
static final short FILTER_INTERRUPT
short startElement(Element elementArg)
Element
开始标记已扫描的调用这个方法,但在
Element
其余处理。该意图是允许元素,包括任何儿童,有效地跳过。请注意,只有元素节点传递到
startElement
功能。
startElement
过滤将包括所有元素的属性,但没有子节点。元素可能尚未到位,正在建设的文件(可能没有父节点。)
startElement
滤波函数可以访问或更改元素的属性。更改命名空间声明将对解析器的命名空间解析没有影响。
elementArg
-新遇到的元素。在这个方法被调用的时候,这个元素是不完整的-它将有它的属性,但没有孩子。
FILTER_ACCEPT
如果Element
应包含在文档的建立。FILTER_REJECT
如果Element
及其所有的孩子应该被拒绝。FILTER_SKIP
如果Element
应该跳过。所有的孩子都插在跳过的Element
结的地方。FILTER_INTERRUPT
过滤器如果想要停止文档的处理。中断处理的文件不再保证最终的DOM树的XML格式。被拒绝的Element
。short acceptNode(Node nodeArg)
nodeArg
-新建元件。在这个方法被调用的时候,这个元素是完整的-它有它的所有的孩子(和他们的孩子,递归)和属性,并作为一个孩子连接到它的父母。
FILTER_ACCEPT
Node
应该包括在文档的建立。FILTER_REJECT
如果Node
及其所有的孩子应该被拒绝。FILTER_SKIP
如果Node
应该跳过,Node
应该由所有的Node
孩子取代。FILTER_INTERRUPT
过滤器如果想要停止文档的处理。中断处理的文件不再保证最终的DOM树的XML格式。的Node
是公认的将是最后的完全解析节点。int getWhatToShow()
LSParser
什么类型的节点显示的方法
LSParserFilter.acceptNode
。如果一个节点不能证明使用该属性的过滤器,它会自动包含在文档的建立。看到的
NodeFilter
常数定义。常数
SHOW_ATTRIBUTE
,
SHOW_DOCUMENT
,
SHOW_DOCUMENT_TYPE
,
SHOW_NOTATION
,
SHOW_ENTITY
,和
SHOW_DOCUMENT_FRAGMENT
是毫无意义的在这里。这些节点将不会通过
LSParserFilter.acceptNode
。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.