public interface Document
implements Node
org.w3c.dom.Document |
Document
界面表示整个HTML或XML文档。 从概念上讲,它是文档树的根,并提供对文档数据的主要访问权限。
由于元素,文本节点,注释,处理指令等不能存在于Document
的上下文Document
,因此Document
接口还包含创建这些对象所需的工厂方法。 创建的Node
对象具有一个ownerDocument
属性,该属性将它们与Document
关联起来,在该Document
内创建它们。
另见 Document Object Model (DOM) Level 3 Core Specification 。
Inherited constants |
---|
From interface org.w3c.dom.Node
|
Public methods |
|
---|---|
abstract Node |
adoptNode(Node source) 尝试从另一个文档中采用节点到此文档。 |
abstract Attr |
createAttribute(String name) 创建一个给定名称的 |
abstract Attr |
createAttributeNS(String namespaceURI, String qualifiedName) 创建给定的限定名称和名称空间URI的属性。 |
abstract CDATASection |
createCDATASection(String data) 创建一个 |
abstract Comment |
createComment(String data) 给定指定的字符串,创建一个 |
abstract DocumentFragment |
createDocumentFragment() 创建一个空的 |
abstract Element |
createElement(String tagName) 创建指定类型的元素。 |
abstract Element |
createElementNS(String namespaceURI, String qualifiedName) 创建给定的限定名称和名称空间URI的元素。 |
abstract EntityReference |
createEntityReference(String name) 创建一个 |
abstract ProcessingInstruction |
createProcessingInstruction(String target, String data) 给定指定的名称和数据字符串,创建一个 |
abstract Text |
createTextNode(String data) 给定指定的字符串创建一个 |
abstract DocumentType |
getDoctype() 与此文档相关的文档类型声明(请参阅 |
abstract Element |
getDocumentElement() 这是一个便利的属性,允许直接访问作为文档文档元素的子节点。 |
abstract String |
getDocumentURI() 文档的位置或 |
abstract DOMConfiguration |
getDomConfig() 调用 |
abstract Element |
getElementById(String elementId) 返回具有给定值的ID属性的 |
abstract NodeList |
getElementsByTagName(String tagname) 返回 |
abstract NodeList |
getElementsByTagNameNS(String namespaceURI, String localName) 以文档顺序返回包含给定本地名称和名称空间URI的所有 |
abstract DOMImplementation |
getImplementation() 处理此文档的 |
abstract String |
getInputEncoding() 解析时指定用于此文档的编码的属性。 |
abstract boolean |
getStrictErrorChecking() 指定是否强制执行错误检查的属性。 |
abstract String |
getXmlEncoding() 作为 XML declaration的一部分的属性,指定此文档的编码。 |
abstract boolean |
getXmlStandalone() 作为 XML declaration的一部分指定此文档是否是独立的属性。 |
abstract String |
getXmlVersion() 作为 XML declaration的一部分的属性指定了此文档的版本号。 |
abstract Node |
importNode(Node importedNode, boolean deep) 将另一个文档中的节点导入到此文档中,而不更改或从原始文档中删除源节点; 此方法将创建源节点的新副本。 |
abstract void |
normalizeDocument() 这种方法就好像文档正在经历保存和加载循环一样,将文档置于“正常”形式。 |
abstract Node |
renameNode(Node n, String namespaceURI, String qualifiedName) 重命名类型为 |
abstract void |
setDocumentURI(String documentURI) 文档的位置或 |
abstract void |
setStrictErrorChecking(boolean strictErrorChecking) 指定是否强制执行错误检查的属性。 |
abstract void |
setXmlStandalone(boolean xmlStandalone) 作为 XML declaration的一部分指定该文档是否是独立的属性。 |
abstract void |
setXmlVersion(String xmlVersion) 作为 XML declaration的一部分的属性指定了此文档的版本号。 |
Inherited methods |
|
---|---|
From interface org.w3c.dom.Node
|
Node adoptNode (Node source)
尝试从另一个文档中采用节点到此文档。 如果支持,它会更改源节点的子节点ownerDocument
以及附加属性节点(如果有)。 如果源节点有父节点,则首先将其从父节点的子节点列表中删除。 这有效地允许将子树从一个文档移动到另一个文档(与创建源节点的副本而不是移动它的importNode()
不同)。 当它失败时,应用程序应该使用Document.importNode()
来代替。 请注意,如果采用的节点已经是本文档的一部分(即源文档和目标文档相同),则此方法仍具有将源节点从其父节点的子节点列表中删除的效果(如果有)。 以下列表描述了每种节点的具体情况。
ownerElement
attribute is set to
null
and the
specified
flag is set to
true
on the adopted
Attr
. The descendants of the source
Attr
are recursively adopted.
Document
nodes cannot be adopted.
DocumentType
nodes cannot be adopted.
Entity
nodes cannot be adopted.
EntityReference
node itself is adopted, the descendants are discarded, since the source and destination documents might have defined the entity differently. If the document being imported into provides a definition for this entity name, its value is assigned.
Notation
nodes cannot be adopted.
注意:由于不会像 Document.importNode()
方法那样创建新节点,因此此方法不会引发 INVALID_CHARACTER_ERR
异常,并且应用程序应使用 Document.normalizeDocument()
方法根据所使用的XML版本检查导入的名称是否不是XML名称。
Parameters | |
---|---|
source |
Node : The node to move into this document. |
Returns | |
---|---|
Node |
The adopted node, or null if this operation fails, such as when the source node comes from a different implementation. |
Throws | |
---|---|
DOMException |
NOT_SUPPORTED_ERR: Raised if the source node is of type DOCUMENT , DOCUMENT_TYPE . NO_MODIFICATION_ALLOWED_ERR: Raised when the source node is readonly. |
Attr createAttribute (String name)
创建一个给定名称的Attr
。 需要注意的是Attr
实例然后可以上设置Element
使用setAttributeNode
方法。
要使用限定名称和名称空间URI创建属性,请使用createAttributeNS
方法。
Parameters | |
---|---|
name |
String : The name of the attribute. |
Returns | |
---|---|
Attr |
A new Attr object with the nodeName attribute set to name , and localName , prefix , and namespaceURI set to null . The value of the attribute is the empty string. |
Throws | |
---|---|
DOMException |
INVALID_CHARACTER_ERR: Raised if the specified name is not an XML name according to the XML version in use specified in the Document.xmlVersion attribute. |
Attr createAttributeNS (String namespaceURI, String qualifiedName)
创建给定的限定名称和名称空间URI的属性。
根据[ XML Namespaces ],如果应用程序希望没有命名空间,则必须将值null
用作方法的namespaceURI
参数。
Parameters | |
---|---|
namespaceURI |
String : The namespace URI of the attribute to create. |
qualifiedName |
String : The qualified name of the attribute to instantiate. |
Returns | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Attr |
A new Attr object with the following attributes:
|
Throws | |
---|---|
DOMException |
INVALID_CHARACTER_ERR: Raised if the specified qualifiedName is not an XML name according to the XML version in use specified in the Document.xmlVersion attribute. NAMESPACE_ERR: Raised if the qualifiedName is a malformed qualified name, if the qualifiedName has a prefix and the namespaceURI is null , if the qualifiedName has a prefix that is "xml" and the namespaceURI is different from " http://www.w3.org/XML/1998/namespace", if the qualifiedName or its prefix is "xmlns" and the namespaceURI is different from "http://www.w3.org/2000/xmlns/", or if the namespaceURI is "http://www.w3.org/2000/xmlns/" and neither the qualifiedName nor its prefix is "xmlns". NOT_SUPPORTED_ERR: Always thrown if the current document does not support the "XML" feature, since namespaces were defined by XML. |
CDATASection createCDATASection (String data)
创建一个 CDATASection
节点,其值是指定的字符串。
Parameters | |
---|---|
data |
String : The data for the CDATASection contents. |
Returns | |
---|---|
CDATASection |
The new CDATASection object. |
Throws | |
---|---|
DOMException |
NOT_SUPPORTED_ERR: Raised if this document is an HTML document. |
Comment createComment (String data)
给定指定的字符串创建一个 Comment
节点。
Parameters | |
---|---|
data |
String : The data for the node. |
Returns | |
---|---|
Comment |
The new Comment object. |
DocumentFragment createDocumentFragment ()
创建一个空的 DocumentFragment
对象。
Returns | |
---|---|
DocumentFragment |
A new DocumentFragment . |
Element createElement (String tagName)
创建指定类型的元素。 请注意,返回的实例实现了Element
接口,因此可以直接在返回的对象上指定属性。
另外,如果已知属性具有默认值, Attr
表示它们的节点将自动创建并附加到该元素。
要使用限定名称和名称空间URI创建元素,请使用createElementNS
方法。
Parameters | |
---|---|
tagName |
String : The name of the element type to instantiate. For XML, this is case-sensitive, otherwise it depends on the case-sensitivity of the markup language in use. In that case, the name is mapped to the canonical form of that markup by the DOM implementation. |
Returns | |
---|---|
Element |
A new Element object with the nodeName attribute set to tagName , and localName , prefix , and namespaceURI set to null . |
Throws | |
---|---|
DOMException |
INVALID_CHARACTER_ERR: Raised if the specified name is not an XML name according to the XML version in use specified in the Document.xmlVersion attribute. |
Element createElementNS (String namespaceURI, String qualifiedName)
创建给定的限定名称和名称空间URI的元素。
根据[ XML Namespaces ],如果应用程序希望没有命名空间,则必须将值null
用作方法的namespaceURI参数。
Parameters | |
---|---|
namespaceURI |
String : The namespace URI of the element to create. |
qualifiedName |
String : The qualified name of the element type to instantiate. |
Returns | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Element |
A new Element object with the following attributes:
|
Throws | |
---|---|
DOMException |
INVALID_CHARACTER_ERR: Raised if the specified qualifiedName is not an XML name according to the XML version in use specified in the Document.xmlVersion attribute. NAMESPACE_ERR: Raised if the qualifiedName is a malformed qualified name, if the qualifiedName has a prefix and the namespaceURI is null , or if the qualifiedName has a prefix that is "xml" and the namespaceURI is different from " http://www.w3.org/XML/1998/namespace" [XML Namespaces] , or if the qualifiedName or its prefix is "xmlns" and the namespaceURI is different from "http://www.w3.org/2000/xmlns/", or if the namespaceURI is "http://www.w3.org/2000/xmlns/" and neither the qualifiedName nor its prefix is "xmlns". NOT_SUPPORTED_ERR: Always thrown if the current document does not support the "XML" feature, since namespaces were defined by XML. |
EntityReference createEntityReference (String name)
创建一个EntityReference
对象。 此外,如果引用的实体是已知的,的子列表EntityReference
节点由相同相应的Entity
节点。
注意:如果Entity
节点的任何后代具有未绑定的名称空间前缀,则创建的EntityReference
节点的相应后代也将被解除绑定; (其namespaceURI
是null
)。 在这种情况下,DOM级别2和3不支持任何解析名称空间前缀的机制。
Parameters | |
---|---|
name |
String : The name of the entity to reference.Unlike Document.createElementNS or Document.createAttributeNS , no namespace well-formed checking is done on the entity name. Applications should invoke Document.normalizeDocument() with the parameter " namespaces" set to true in order to ensure that the entity name is namespace well-formed. |
Returns | |
---|---|
EntityReference |
The new EntityReference object. |
Throws | |
---|---|
DOMException |
INVALID_CHARACTER_ERR: Raised if the specified name is not an XML name according to the XML version in use specified in the Document.xmlVersion attribute. NOT_SUPPORTED_ERR: Raised if this document is an HTML document. |
ProcessingInstruction createProcessingInstruction (String target, String data)
给定指定的名称和数据字符串,创建一个 ProcessingInstruction
节点。
Parameters | |
---|---|
target |
String : The target part of the processing instruction.Unlike Document.createElementNS or Document.createAttributeNS , no namespace well-formed checking is done on the target name. Applications should invoke Document.normalizeDocument() with the parameter " namespaces" set to true in order to ensure that the target name is namespace well-formed. |
data |
String : The data for the node. |
Returns | |
---|---|
ProcessingInstruction |
The new ProcessingInstruction object. |
Throws | |
---|---|
DOMException |
INVALID_CHARACTER_ERR: Raised if the specified target is not an XML name according to the XML version in use specified in the Document.xmlVersion attribute. NOT_SUPPORTED_ERR: Raised if this document is an HTML document. |
Text createTextNode (String data)
给定指定的字符串,创建一个 Text
节点。
Parameters | |
---|---|
data |
String : The data for the node. |
Returns | |
---|---|
Text |
The new Text object. |
DocumentType getDoctype ()
与此文档相关的文档类型声明(请参阅DocumentType
)。 对于没有文档类型声明的XML文档,返回null
。 对于HTML文档,可以返回DocumentType
对象,而DocumentType
HTML文档中是否存在文档类型声明。
这提供了直接访问DocumentType
节点,这个Document
子节点。 该节点可以在文档创建时设置,并且可以通过使用子节点操作方法(如Node.insertBefore
或Node.replaceChild
。 但是请注意,虽然有些实现可以实例化不同类型的Document
对象支持更多的功能比“芯”,如“HTML” [ DOM Level 2 HTML ]的基础上, DocumentType
在创建时指定的,后来改变是不太可能导致在支持的功能的变化。
Returns | |
---|---|
DocumentType |
Element getDocumentElement ()
这是一个便利的属性,允许直接访问作为文档文档元素的子节点。
Returns | |
---|---|
Element |
String getDocumentURI ()
文档的位置或null
如果未定义或者Document
是使用DOMImplementation.createDocument
创建的。 设置此属性时不执行词法检查; 这可能会导致在使用Node.baseURI
时返回null
值。
请注意,当Document
支持“HTML”[ DOM Level 2 HTML ]特性时,在计算Node.baseURI
时,HTML BASE元素的href属性优先于此属性。
Returns | |
---|---|
String |
DOMConfiguration getDomConfig ()
调用 Document.normalizeDocument()
时使用的配置。
Returns | |
---|---|
DOMConfiguration |
Element getElementById (String elementId)
返回具有给定值的ID属性的Element
。 如果不存在这样的元素,则返回null
。 如果多个元素具有带该值的ID属性,则返回的内容是未定义的。
预计DOM实现将使用属性Attr.isId
来确定属性是否为类型ID。
注意:名称为“ID”或“id”的属性不具有类型ID,除非如此定义。
Parameters | |
---|---|
elementId |
String : The unique id value for an element. |
Returns | |
---|---|
Element |
The matching element or null if there is none. |
NodeList getElementsByTagName (String tagname)
返回 NodeList
所有的 Elements
文档顺序与给定的标签名称,包含在文档中。
Parameters | |
---|---|
tagname |
String : The name of the tag to match on. The special value "*" matches all tags. For XML, the tagname parameter is case-sensitive, otherwise it depends on the case-sensitivity of the markup language in use. |
Returns | |
---|---|
NodeList |
A new NodeList object containing all the matched Elements . |
NodeList getElementsByTagNameNS (String namespaceURI, String localName)
以文档顺序返回包含给定本地名称和名称空间URI的所有 NodeList
中的 Elements
。
Parameters | |
---|---|
namespaceURI |
String : The namespace URI of the elements to match on. The special value "*" matches all namespaces. |
localName |
String : The local name of the elements to match on. The special value "*" matches all local names. |
Returns | |
---|---|
NodeList |
A new NodeList object containing all the matched Elements . |
DOMImplementation getImplementation ()
处理此文档的DOMImplementation
对象。 DOM应用程序可以使用来自多个实现的对象。
Returns | |
---|---|
DOMImplementation |
String getInputEncoding ()
解析时指定用于此文档的编码的属性。 这是null
当它不知道时,例如当Document
在内存中创建时。
Returns | |
---|---|
String |
boolean getStrictErrorChecking ()
指定是否强制执行错误检查的属性。 当设置为false
,该实现可以免费测试通常在DOM操作中定义的每个可能的错误情况,并且在使用Document.normalizeDocument()
不会引发DOM操作的任何DOMException
或报告错误。 如果出现错误,则行为未定义。 该属性默认为true
。
Returns | |
---|---|
boolean |
String getXmlEncoding ()
作为XML declaration的一部分指定此文档的编码的属性。 这是null
未指定时或未知时,例如当Document
在内存中创建时。
Returns | |
---|---|
String |
boolean getXmlStandalone ()
作为XML declaration的一部分指定此文档是否独立的属性。 未指定时,这是false
。
注意:设置此属性时,不会验证该值。 应用程序应使用Document.normalizeDocument()
与“验证”参数,以验证值相匹配的validity constraint for standalone document declaration如[定义XML 1.0 。
Returns | |
---|---|
boolean |
String getXmlVersion ()
作为XML declaration的一部分指定此文档的版本号的属性。 如果没有声明并且本文档支持“XML”功能,则值为"1.0"
。 如果此文档不支持“XML”功能,则该值始终为null
。 更改此属性将影响检查XML名称中的无效字符的方法。 应用程序应调用Document.normalizeDocument()
以检查Node
中已经包含此Document
无效字符。
DOM应用程序可以使用参数值分别为“XMLVersion”和“1.0”的DOMImplementation.hasFeature(feature, version)
方法来确定实现是否支持[ XML 1.0 ]。 DOM应用程序可以使用与参数值“XMLVersion”和“1.1”(分别)相同的方法来确定实现是否支持[ XML 1.1 ]。 在这两种情况下,为了支持XML,实现还必须支持本规范中定义的“XML”特性。 Document
支持“XMLVersion”功能版本的对象在使用Document.xmlVersion
时Document.xmlVersion
为相同版本号引发NOT_SUPPORTED_ERR
异常。
Returns | |
---|---|
String |
Node importNode (Node importedNode, boolean deep)
将另一个文档中的节点导入到此文档中,而不更改或从原始文档中删除源节点; 此方法将创建源节点的新副本。 返回的节点没有父节点; ( parentNode
是null
)。
所有节点,导入节点创建由进口文档拥有的节点对象,具有属性值相同的源节点的nodeName
和nodeType
,加上与命名空间属性( prefix
, localName
,和namespaceURI
)。 如在cloneNode
操作中那样,源节点没有改变。 与导入的节点关联的用户数据不会被结转。 但是,如果已经指定了任何UserDataHandlers
以及相关数据,则在此方法返回之前,将使用适当的参数调用这些处理程序。
如果将XML或HTML源代码的片段从一个文档复制到另一个文档, nodeType
尝试将期望的行为镜像到适用于nodeType
其他信息,并认为这两个文档在XML情况下可能具有不同的DTD。 以下列表描述了每种节点的具体情况。
ownerElement
attribute is set to
null
and the
specified
flag is set to
true
on the generated
Attr
. The descendants of the source
Attr
are recursively imported and the resulting nodes reassembled to form the corresponding subtree. Note that the
deep
parameter has no effect on
Attr
nodes; they always carry their children with them when imported.
deep
option was set to
true
, the descendants of the source
DocumentFragment
are recursively imported and the resulting nodes reassembled under the imported
DocumentFragment
to form the corresponding subtree. Otherwise, this simply generates an empty
DocumentFragment
.
Document
nodes cannot be imported.
DocumentType
nodes cannot be imported.
Attr
nodes are attached to the generated
Element
. Default attributes are
not copied, though if the document being imported into defines default attributes for this element name, those are assigned. If the
importNode
deep
parameter was set to
true
, the descendants of the source element are recursively imported and the resulting nodes reassembled to form the corresponding subtree.
Entity
nodes can be imported, however in the current release of the DOM the
DocumentType
is readonly. Ability to add these imported nodes to a
DocumentType
will be considered for addition to a future release of the DOM.On import, the
publicId
,
systemId
, and
notationName
attributes are copied. If a
deep
import is requested, the descendants of the the source
Entity
are recursively imported and the resulting nodes reassembled to form the corresponding subtree.
EntityReference
itself is copied, even if a
deep
import is requested, since the source and destination documents might have defined the entity differently. If the document being imported into provides a definition for this entity name, its value is assigned.
Notation
nodes can be imported, however in the current release of the DOM the
DocumentType
is readonly. Ability to add these imported nodes to a
DocumentType
will be considered for addition to a future release of the DOM.On import, the
publicId
and
systemId
attributes are copied. Note that the
deep
parameter has no effect on this type of nodes since they cannot have any children.
target
and
data
values from those of the source node.Note that the
deep
parameter has no effect on this type of nodes since they cannot have any children.
CharacterData
copy their
data
and
length
attributes from those of the source node.Note that the
deep
parameter has no effect on these types of nodes since they cannot have any children.
Parameters | |
---|---|
importedNode |
Node : The node to import. |
deep |
boolean : If true , recursively import the subtree under the specified node; if false , import only the node itself, as explained above. This has no effect on nodes that cannot have any children, and on Attr , and EntityReference nodes. |
Returns | |
---|---|
Node |
The imported node that belongs to this Document . |
Throws | |
---|---|
DOMException |
NOT_SUPPORTED_ERR: Raised if the type of node being imported is not supported. INVALID_CHARACTER_ERR: Raised if one of the imported names is not an XML name according to the XML version in use specified in the Document.xmlVersion attribute. This may happen when importing an XML 1.1 [XML 1.1] element into an XML 1.0 document, for instance. |
void normalizeDocument ()
这种方法就好像文档正在经历保存和加载循环一样,将文档置于“正常”形式。 因此,此方法会更新EntityReference
节点的替换树并标准化Text
节点,如方法Node.normalize()
所定义。
否则,实际结果取决于在Document.domConfig
对象上设置的功能以及管理实际发生的操作。 值得注意的是,这种方法还可以使文档名称空间按照其中所述的算法良好地形成,检查字符规范化,删除CDATASection
节点等。有关详细信息,请参阅DOMConfiguration
。
// Keep in the document the information defined // in the XML Information Set (Java example) DOMConfiguration docConfig = myDocument.getDomConfig(); docConfig.setParameter("infoset", Boolean.TRUE); myDocument.normalizeDocument();
Node.nodeName
contains an invalid character according to the XML version in use, errors or warnings (
DOMError.SEVERITY_ERROR
or
DOMError.SEVERITY_WARNING
) will be reported using the
DOMErrorHandler
object associated with the "error-handler " parameter. Note this method might also report fatal errors (
DOMError.SEVERITY_FATAL_ERROR
) if an implementation cannot recover from an error.
Node renameNode (Node n, String namespaceURI, String qualifiedName)
重命名类型ELEMENT_NODE
或ATTRIBUTE_NODE
的现有节点。
在可能的情况下,只需更改给定节点的名称,否则将创建具有指定名称的新节点,并用新节点替换现有节点,如下所述。
如果仅仅更改给定节点的名称是不可能的,则执行以下操作:创建新节点,在新节点上注册任何已注册的事件侦听器,附加到旧节点的任何用户数据将从该节点中删除,如果旧节点具有一个,则将旧节点从它的父节点移除,将子节点移动到新节点,如果重命名节点为Element
其属性移动到新节点,将新节点插入旧节点使用的位置如果它的父节点的子节点列表中有,则连接到旧节点的用户数据将附加到新节点。
当被重命名的节点是Element
只移动指定的属性,根据新的元素名称更新源自DTD的默认属性。 另外,该实现可以更新来自其他模式的默认属性。 应用程序应该使用Document.normalizeDocument()
来保证这些属性是最新的。
当要重命名的节点是Attr
附接到一个Element
,节点首先从除去Element
属性地图。 然后,一旦重新命名,无论是通过修改现有的节点还是创建一个新的节点,它都会被放回。
此外,
NODE_RENAMED
is fired, http://www.w3.org/2001/xml-events
, DOMElementNameChanged
} or { http://www.w3.org/2001/xml-events
, DOMAttributeNameChanged
} is fired. Parameters | |
---|---|
n |
Node : The node to rename. |
namespaceURI |
String : The new namespace URI. |
qualifiedName |
String : The new qualified name. |
Returns | |
---|---|
Node |
The renamed node. This is either the specified node or the new node that was created to replace the specified node. |
Throws | |
---|---|
DOMException |
NOT_SUPPORTED_ERR: Raised when the type of the specified node is neither ELEMENT_NODE nor ATTRIBUTE_NODE , or if the implementation does not support the renaming of the document element. INVALID_CHARACTER_ERR: Raised if the new qualified name is not an XML name according to the XML version in use specified in the Document.xmlVersion attribute. WRONG_DOCUMENT_ERR: Raised when the specified node was created from a different document than this document. NAMESPACE_ERR: Raised if the qualifiedName is a malformed qualified name, if the qualifiedName has a prefix and the namespaceURI is null , or if the qualifiedName has a prefix that is "xml" and the namespaceURI is different from " http://www.w3.org/XML/1998/namespace" [XML Namespaces] . Also raised, when the node being renamed is an attribute, if the qualifiedName , or its prefix, is "xmlns" and the namespaceURI is different from "http://www.w3.org/2000/xmlns/". |
void setDocumentURI (String documentURI)
文档的位置或null
如果未定义或者Document
是使用DOMImplementation.createDocument
创建的。 设置此属性时不执行词法检查; 这可能会导致在使用Node.baseURI
时返回null
值。
请注意,当Document
支持“HTML”[ DOM Level 2 HTML ]功能时,在计算Node.baseURI
时,HTML BASE元素的href属性优先于此属性。
Parameters | |
---|---|
documentURI |
String
|
void setStrictErrorChecking (boolean strictErrorChecking)
指定是否强制执行错误检查的属性。 当设置为false
,该实现可以免费测试通常在DOM操作中定义的每个可能的错误情况,并且在使用Document.normalizeDocument()
不会引发DOM操作的任何DOMException
或报告错误。 如果出现错误,则行为未定义。 该属性默认为true
。
Parameters | |
---|---|
strictErrorChecking |
boolean
|
void setXmlStandalone (boolean xmlStandalone)
作为XML declaration的一部分的属性指定此文档是否是独立的。 未指定时,这是false
。
注意:设置此属性时,不会验证该值。 应用程序应使用Document.normalizeDocument()
与“验证”参数,以验证值相匹配的validity constraint for standalone document declaration如[定义XML 1.0 。
Parameters | |
---|---|
xmlStandalone |
boolean
|
Throws | |
---|---|
DOMException |
NOT_SUPPORTED_ERR: Raised if this document does not support the "XML" feature. |
void setXmlVersion (String xmlVersion)
属性指定(作为XML declaration的一部分)该文档的版本号。 如果没有声明并且本文档支持“XML”功能,则值为"1.0"
。 如果此文档不支持“XML”功能,则该值始终为null
。 更改此属性将影响检查XML名称中的无效字符的方法。 应用程序应调用Document.normalizeDocument()
以检查Node
中已经包含此Document
无效字符。
DOM应用程序可以使用参数值分别为“XMLVersion”和“1.0”的DOMImplementation.hasFeature(feature, version)
方法来确定实现是否支持[ XML 1.0 ]。 DOM应用程序可以使用与参数值“XMLVersion”和“1.1”(分别)相同的方法来确定实现是否支持[ XML 1.1 ]。 在这两种情况下,为了支持XML,实现还必须支持本规范中定义的“XML”特性。 Document
支持“XMLVersion”功能版本的对象在使用Document.xmlVersion
时, Document.xmlVersion
为相同的版本号引发NOT_SUPPORTED_ERR
异常。
Parameters | |
---|---|
xmlVersion |
String
|
Throws | |
---|---|
DOMException |
NOT_SUPPORTED_ERR: Raised if the version is set to a value that is not supported by this Document or if this document does not support the "XML" feature. |