public interface DOMConfiguration
DOMConfiguration
接口代表一个文档的配置和维护一个公认的参数表。使用配置,它可能改变
Document.normalizeDocument()
行为,如更换
CDATASection
节点
Text
节点或特定类型的架构时必须使用的
Document
验证要求。
DOMConfiguration
对象也用在[
DOM Level 3 Load and Save ]在
DOMParser
和
DOMSerializer
接口。
由DOMConfiguration
对象使用的参数名称定义整个DOM级别3规格。名字是不区分大小写的。为了避免可能的冲突,作为一个惯例,指在DOM规范定义的参数名称应该独特。因为参数为暴露属性名称建议按照5.16节标识符[UNICDOE]随着人物的加成-”(hyphen-minus)而不是通过DOM实现执行。DOM级别3核心的实现需要认识到在本规范中定义的所有参数。一些参数值也可能被需要支持的实现。参考参数的定义,以知道是否支持或不支持。
注:参数类似于SAX2 [ SAX ]特点与性质。
以下在DOM定义的参数列表:
"canonical-form"
true
DocumentType
节点(如果有)从树上,或删除多余的命名空间声明的每个元素。请注意,这是限制什么可以在DOM表示;特别是,有没有办法在指定的DOM属性的顺序。此外,该参数设置为
true
也将设置以下参数的状态。对其中一个参数的变化将恢复状态后的“典型”的形式回到
false
。参数设置为
false
:“实体”、“规范汉字”、“CDATA节”。参数设置为
true
:“命名空间”,“命名空间声明”、“形成”、“元素含量空白”。其他参数没有更改,除非在参数的描述中显式指定。
false
"cdata-sections"
true
CDATASection
文件中的节点。
false
CDATASection
文件中的节点到节点
Text
。新
Text
节点结合
Text
任何相邻节点。
"check-character-normalization"
true
DOMError.type
误差等于“检查字符归一化失败”发布。
false
"comments"
true
Comment
文件中的节点。
false
Comment
节点。
"datatype-normalization"
true
true
。在这个参数激活时,“验证”是
false
没有影响任何模式规范化会发生。
注:自文件包含XML 1处理的结果,这个参数不适用于属性值标准化在[ XML 1.0 ] 3.3.3节定义只是模式以外的其他语言的文档类型定义(DTD)。
false
"element-content-whitespace"
true
false
Text
节点,如
[element content whitespace]。实施预计将使用属性
Text.isElementContentWhitespace
确定
Text
节点应丢弃或不。
"entities"
true
EntityReference
文件中的节点。
false
EntityReference
节点,把实体展开直接在他们的地方。
Text
节点中定义的规范,
Node.normalize
。只有
unexpanded entity references保存在文件中。
注:这个参数不影响Entity
节点。
"error-handler"
DOMErrorHandler
对象。如果错误是在文档中,执行会打电话回来的
DOMErrorHandler
注册使用该参数。的实施可能会提供一个默认
DOMErrorHandler
对象。在调用时,
DOMError.relatedData
将包含错误发生位置最近的节点。如果实现无法确定发生错误的节点,
DOMError.relatedData
将包含
Document
节点。从一个错误处理程序中的文档的突变将导致依赖于实现的行为。
"infoset"
true
false
验证图式”、“实体”、“类型化”、“CDATA节”。这迫使以下参数:“
true
命名空间声明”,“合格”,“元素含量的空白”、“评论”、“命名空间”。其他参数没有改变,除非明确指定的参数描述。注意,查询参数与
getParameter
返回
true
只有上述各个参数的合理设置。
false
infoset
到
false
没有影响。
"namespaces"
true
false
"namespace-declarations"
false
这个参数没有影响。
true
false
Node.prefix
)甚至如果这个参数设置为
false
保留。
"normalize-characters"
true
false
"schema-location"
DOMString
对象,相隔的空格(匹配2.3节[
XML 1.0 ]定义的
nonterminal production S字符),表示反对,验证该发生的模式,即当前模式。此列表中的参考架构的类型必须指定
schema-type
类型匹配,否则实施的行为是未定义的。使用此属性指定的模式优先于文档中指定的模式信息。命名空间感知架构,架构是否指定使用此属性和一个模式文档中的实例指定(即使用
schemaLocation
属性)在架构文件(即使用模式
import
机制)共享相同的
targetNamespace
,利用这个属性的用户指定的架构将使用。如果两模式指定使用此属性共享相同的
targetNamespace
或没有命名空间,行为是依赖于实现的。如果没有位置了,这个参数是
null
。
注:参数被忽略的"schema-location"
除非“架构类型”参数值设置。这是强烈建议Document.documentURI
将因此实现可以成功地解决任何外部实体引用。
"schema-type"
DOMString
对象和描述用于验证文档对图式语言的类型。注意,没有词汇的绝对URI进行检查。如果这个参数没有设置,则基于支持的模式语言和在加载时使用的模式语言,可以提供一个默认值。如果没有提供值,这个参数是
null
。
[ XML Schema Part 1 ] 注: XML架构,应用程序必须使用价值"http://www.w3.org/2001/XMLSchema"
。XML DTD的[ XML 1.0 ],应用程序必须使用价值"http://www.w3.org/TR/REC-xml"
。其他模式语言以外的范围,因此W3C推荐的绝对URI为了使用这个方法。
"split-cdata-sections"
true
DOMError.type
等于
"cdata-sections-splitted"
和
DOMError.relatedData
等于第一
CDATASection
节点的文档顺序从分裂造成的。
false
CDATASection
包含一个可表示的字符信号。
"validate"
true
true
。此参数将重新评估:
Attr.specified
属性节点等于false
,在Attr
接口描述;Text.isElementContentWhitespace
Text
节点的值;Attr.isId
Attr
节点的值;Element.schemaTypeInfo
和Attr.schemaTypeInfo
。“如果注:验证模式”和“验证”是互斥的,设置其中的一个true
将另一个false
。应用程序应考虑设置参数”形成的“true
,这对这些选项的默认,在验证文件。
false
true
发生。
"validate-if-schema"
true
true
相同。
“如果注:验证模式”和“验证”是互斥的,设置其中的一个true
将另一个false
。
false
true
。
"well-formed"
true
Node.nodeName
包含无效字符根据其节点类型和产生DOMError
"wf-invalid-character-in-node-name"
型,与DOMError.SEVERITY_ERROR
严重程度,必要时;Attr
,Element
,Comment
,Text
文本内容,CDATASection
节点无效的字符,生成一个DOMError
"wf-invalid-character"
型,与DOMError.SEVERITY_ERROR
严重程度,必要时;ProcessingInstruction
节点无效的字符,生成一个DOMError
"wf-invalid-character"
型,与DOMError.SEVERITY_ERROR
严重程度,必要时;Document.xmlVersion
false
与实体的系统标识符的分辨率是通过使用Document.documentURI
。然而,当特征“ls”[ DOM Level 3 Load and Save ]的定义是通过DOM实现支持,参数“资源解析器”还可以用在DOMConfiguration
附着物Document
节点。如果设置了这个参数,Document.normalizeDocument()
将调用资源解析器而不是使用Document.documentURI
。
Modifier and Type | Method and Description |
---|---|
boolean |
canSetParameter(String name, Object value)
如果设置了一个参数到一个特定的值是支持的。
|
Object |
getParameter(String name)
如果已知的参数返回一个参数的值。
|
DOMStringList |
getParameterNames()
列表的参数支持的
DOMConfiguration 对象,其中至少有一个值可以通过设置中的应用。
|
void |
setParameter(String name, Object value)
设置参数的值。
|
void setParameter(String name, Object value) throws DOMException
name
-参数的名称设置。
value
-新的价值或
null
如果用户希望设置参数。而价值参数的类型被定义为
DOMUserData
,对象类型必须定义的参数类型匹配。例如,如果参数是“错误处理”,该值的类型必须是
DOMErrorHandler
。
DOMException
- not_found_err:当参数名称是不被认可的。
Object getParameter(String name) throws DOMException
name
-参数的名称。
null
如果没有对象有关联或如果参数不支持。
DOMException
- not_found_err:当参数名称是不被认可的。
boolean canSetParameter(String name, Object value)
name
-参数的名称检查。
value
-对象。如果
null
,返回值是
true
。
true
参数设置为指定的值,或
false
如果参数无法识别或不支持请求的值。这不改变参数本身的当前值。
DOMStringList getParameterNames()
DOMConfiguration
对象,其中至少有一个值可以通过设置中的应用。请注意,此列表还可以包含在本规范外定义的参数名称。
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.