Module java.xml
Package org.w3c.dom

Interface Document

所有超级接口:
Node
所有已知的子接口:
HTMLDocument

public interface Document extends Node
Document接口表示整个HTML或XML文档。在概念上,它是文档树的根,并提供对文档数据的主要访问。

由于元素、文本节点、注释、处理指令等不能存在于Document之外的上下文中,Document接口还包含创建这些对象所需的工厂方法。创建的Node对象具有一个ownerDocument属性,将它们与创建它们的Document关联起来。

另请参阅文档对象模型(DOM)Level 3核心规范

  • Method Details

    • getDoctype

      DocumentType getDoctype()
      与此文档关联的文档类型声明(参见DocumentType)。对于没有文档类型声明的XML文档,返回null。对于HTML文档,可能返回一个DocumentType对象,与HTML文档中是否存在文档类型声明无关。
      这提供了对Document的子节点之一,即DocumentType节点的直接访问。此节点可以在文档创建时设置,并通过使用子节点操作方法(如Node.insertBeforeNode.replaceChild)稍后更改。但是,请注意,虽然一些实现可能实例化支持比“Core”更多功能的不同类型的Document对象,例如“HTML”[DOM Level 2 HTML],基于创建时指定的DocumentType,之后更改它几乎不太可能导致支持的功能发生变化。
      自从:
      1.4, DOM Level 3
    • getImplementation

      DOMImplementation getImplementation()
      处理此文档的DOMImplementation对象。DOM应用程序可以使用来自多个实现的对象。
    • getDocumentElement

      Element getDocumentElement()
      这是一个方便的属性,允许直接访问作为文档元素的子节点的子节点。
    • createElement

      Element createElement(String tagName) throws DOMException
      创建指定类型的元素。请注意,返回的实例实现了Element接口,因此可以直接在返回的对象上指定属性。
      此外,如果已知具有默认值的属性,则会自动创建并附加表示它们的Attr节点到元素上。
      要创建具有限定名称和命名空间URI的元素,请使用createElementNS方法。
      参数:
      tagName - 要实例化的元素类型的名称。对于XML,这是区分大小写的,否则取决于正在使用的标记语言的区分大小写。在这种情况下,名称将通过DOM实现映射到该标记的规范形式。
      返回:
      具有nodeName属性设置为tagName,并将localNameprefixnamespaceURI设置为null的新Element对象。
      抛出:
      DOMException - INVALID_CHARACTER_ERR: 如果指定的名称根据Document.xmlVersion属性中指定的XML版本不是XML名称,则引发异常。
    • createDocumentFragment

      DocumentFragment createDocumentFragment()
      创建一个空的DocumentFragment对象。
      返回:
      一个新的DocumentFragment
    • createTextNode

      Text createTextNode(String data)
      给定指定字符串,创建一个Text节点。
      参数:
      data - 节点的数据。
      返回:
      新的Text对象。
    • createComment

      Comment createComment(String data)
      给定指定字符串,创建一个Comment节点。
      参数:
      data - 节点的数据。
      返回:
      新的Comment对象。
    • createCDATASection

      CDATASection createCDATASection(String data) throws DOMException
      创建一个值为指定字符串的CDATASection节点。
      参数:
      data - CDATASection内容的数据。
      返回:
      新的CDATASection对象。
      抛出:
      DOMException - NOT_SUPPORTED_ERR: 如果此文档是HTML文档,则引发异常。
    • createProcessingInstruction

      ProcessingInstruction createProcessingInstruction(String target, String data) throws DOMException
      给定指定名称和数据字符串,创建一个ProcessingInstruction节点。
      参数:
      target - 处理指令的目标部分。与Document.createElementNSDocument.createAttributeNS不同,目标名称上不执行命名空间格式检查。应用程序应调用Document.normalizeDocument(),并将参数“命名空间”设置为true,以确保目标名称符合命名空间格式。
      data - 节点的数据。
      返回:
      新的ProcessingInstruction对象。
      抛出:
      DOMException - INVALID_CHARACTER_ERR: 如果指定的目标根据Document.xmlVersion属性中指定的XML版本不是XML名称。
      NOT_SUPPORTED_ERR: 如果此文档是HTML文档,则引发异常。
    • createAttribute

      Attr createAttribute(String name) throws DOMException
      创建具有给定名称的Attr。然后,Attr实例可以使用setAttributeNode方法设置在Element上。
      要创建具有限定名称和命名空间URI的属性,请使用createAttributeNS方法。
      参数:
      name - 属性的名称。
      返回:
      具有nodeName属性设置为name,并将localNameprefixnamespaceURI设置为null的新Attr对象。属性的值为空字符串。
      抛出:
      DOMException - INVALID_CHARACTER_ERR: 如果指定的名称根据Document.xmlVersion属性中指定的XML版本不是XML名称。
    • createEntityReference

      EntityReference createEntityReference(String name) throws DOMException
      创建一个EntityReference对象。此外,如果已知引用的实体,则EntityReference节点的子列表将与相应的Entity节点的子列表相同。

      注意:如果Entity节点的任何后代具有未绑定的命名空间前缀,则创建的EntityReference节点的相应后代也是未绑定的;(其namespaceURInull)。DOM Level 2和3不支持在这种情况下解析命名空间前缀的任何机制。

      参数:
      name - 要引用的实体的名称。与Document.createElementNSDocument.createAttributeNS不同,对实体名称不进行命名空间格式检查。应用程序应调用Document.normalizeDocument(),并将参数“namespaces”设置为true,以确保实体名称符合命名空间格式。
      返回:
      新的EntityReference对象。
      抛出:
      DOMException - INVALID_CHARACTER_ERR:如果指定的名称不是根据Document.xmlVersion属性中指定的正在使用的XML版本的XML名称,则引发异常。
      NOT_SUPPORTED_ERR:如果此文档是HTML文档,则引发异常。
    • getElementsByTagName

      NodeList getElementsByTagName(String tagname)
      返回一个按文档顺序包含给定标记名称且包含在文档中的所有ElementsNodeList
      参数:
      tagname - 要匹配的标记名称。特殊值“*”匹配所有标记。对于XML,tagname参数区分大小写,否则取决于所使用的标记语言的区分大小写。
      返回:
      包含所有匹配的Elements的新NodeList对象。
    • importNode

      Node importNode(Node importedNode, boolean deep) throws DOMException
      从另一个文档导入节点到此文档,而不更改或删除原始文档中的源节点;此方法创建源节点的新副本。返回的节点没有父节点;(parentNodenull)。
      对于所有节点,导入节点会创建一个由导入文档拥有的节点对象,其属性值与源节点的nodeNamenodeType相同,以及与命名空间相关的属性(prefixlocalNamenamespaceURI)。与cloneNode操作一样,源节点不会被更改。与导入节点关联的用户数据不会被传递。但是,如果已指定任何UserDataHandlers以及相关数据,则这些处理程序将在此方法返回之前使用适当的参数调用。
      附加信息将根据nodeType适当复制到nodeType,试图模拟从一个文档复制到另一个文档的XML或HTML源片段的预期行为,认识到两个文档在XML情况下可能具有不同的DTD。以下列表描述了每种节点类型的具体信息。
      ATTRIBUTE_NODE
      ownerElement属性设置为null,并在生成的Attr上将specified标志设置为true。源Attr的后代被递归导入,并重新组装生成的节点以形成相应的子树。请注意,deep参数对Attr节点没有影响;当导入时,它们始终携带其子节点。
      DOCUMENT_FRAGMENT_NODE
      如果将deep选项设置为true,则将递归导入源DocumentFragment的后代,并重新组装生成的节点以形成相应的子树。否则,这只会生成一个空的DocumentFragment
      DOCUMENT_NODE
      无法导入Document节点。
      DOCUMENT_TYPE_NODE
      无法导入DocumentType节点。
      ELEMENT_NODE
      源元素的Specified属性节点被导入,并且生成的Attr节点附加到生成的Element上。默认属性不会被复制,但是如果导入的文档为该元素名称定义了默认属性,则会分配这些属性。如果将importNode deep参数设置为true,则将递归导入源元素的后代,并重新组装生成的节点以形成相应的子树。
      ENTITY_NODE
      可以导入Entity节点,但是在当前DOM的发布版本中,DocumentType是只读的。将考虑在将来的DOM版本中将这些导入的节点添加到DocumentType中。在导入时,将复制publicIdsystemIdnotationName属性。如果请求进行deep导入,则将递归导入源Entity的后代,并重新组装生成的节点以形成相应的子树。
      ENTITY_REFERENCE_NODE
      仅复制EntityReference本身,即使请求进行deep导入,因为源文档和目标文档可能以不同方式定义实体。如果导入的文档提供了此实体名称的定义,则将分配其值。
      NOTATION_NODE
      可以导入Notation节点,但是在当前DOM的发布版本中,DocumentType是只读的。将考虑在将来的DOM版本中将这些导入的节点添加到DocumentType中。在导入时,将复制publicIdsystemId属性。请注意,deep参数对此类型的节点没有影响,因为它们不能有任何子节点。
      PROCESSING_INSTRUCTION_NODE
      导入的节点将从源节点的targetdata值复制。请注意,deep参数对此类型的节点没有影响,因为它们不能有任何子节点。
      TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE
      这三种继承自CharacterData的节点类型将从源节点的datalength属性复制。请注意,deep参数对这些类型的节点没有影响,因为它们不能有任何子节点。
      参数:
      importedNode - 要导入的节点。
      deep - 如果为true,则递归导入指定节点下的子树;如果为false,则仅导入节点本身,如上所述。对于不能有任何子节点的节点以及AttrEntityReference节点,此参数没有影响。
      返回:
      属于此Document的导入节点。
      抛出:
      DOMException - NOT_SUPPORTED_ERR:如果要导入的节点类型不受支持,则引发异常。
      INVALID_CHARACTER_ERR:如果导入的名称之一不是根据Document.xmlVersion属性中指定的正在使用的XML版本的XML名称,则引发异常。例如,将XML 1.1元素导入XML 1.0文档时可能会发生这种情况。
      自:
      1.4,DOM Level 2
    • createElementNS

      Element createElementNS(String namespaceURI, String qualifiedName) throws DOMException
      创建给定限定名称和命名空间URI的元素。
      根据[XML命名空间],如果应用程序希望没有命名空间,则必须在方法中使用值null作为namespaceURI参数。
      参数:
      namespaceURI - 要创建的元素的命名空间URI。
      qualifiedName - 要实例化的元素类型的限定名称。
      返回:
      具有以下属性的新Element对象:
      Element对象的属性
      属性
      Node.nodeName qualifiedName
      Node.namespaceURI namespaceURI
      Node.prefix qualifiedName中提取的前缀,如果没有前缀则为null
      Node.localName qualifiedName中提取的本地名称
      Element.tagName qualifiedName
      抛出:
      DOMException - INVALID_CHARACTER_ERR:如果指定的qualifiedName不是根据Document.xmlVersion属性中指定的正在使用的XML版本的XML名称,则引发异常。
      NAMESPACE_ERR:如果qualifiedName是格式错误的限定名称,如果qualifiedName具有前缀且namespaceURInull,或者如果qualifiedName具有前缀为“xml”且namespaceURI与“ http://www.w3.org/XML/1998/namespace”不同,或者如果qualifiedName或其前缀为“xmlns”且namespaceURI与“http://www.w3.org/2000/xmlns/”不同,或者如果namespaceURI为“http://www.w3.org/2000/xmlns/”且qualifiedName或其前缀均不为“xmlns”时,引发异常。
      NOT_SUPPORTED_ERR:如果当前文档不支持"XML"功能,则始终引发异常,因为命名空间是由XML定义的。
      自:
      1.4,DOM Level 2
    • createAttributeNS

      Attr createAttributeNS(String namespaceURI, String qualifiedName) throws DOMException
      创建给定限定名称和命名空间URI的属性。
      根据[XML命名空间],如果应用程序希望没有命名空间,则必须在方法中使用值null作为namespaceURI参数。
      参数:
      namespaceURI - 要创建的属性的命名空间URI。
      qualifiedName - 要实例化的属性的限定名称。
      返回:
      一个具有以下属性的新Attr对象:
      Attr对象的属性
      属性
      Node.nodeName qualifiedName
      Node.namespaceURI namespaceURI
      Node.prefix qualifiedName中提取的前缀,如果没有前缀则为null
      Node.localName qualifiedName中提取的本地名称
      Attr.name qualifiedName
      Node.nodeValue 空字符串
      抛出:
      DOMException - INVALID_CHARACTER_ERR: 如果指定的qualifiedName不符合正在使用的XML版本中Document.xmlVersion属性中指定的XML名称。
      NAMESPACE_ERR: 如果qualifiedName是格式不正确的限定名称,如果qualifiedName具有前缀且namespaceURInull,如果qualifiedName具有前缀为"xml"且namespaceURI与" http://www.w3.org/XML/1998/namespace"不同,如果qualifiedName或其前缀为"xmlns"且namespaceURI与"http://www.w3.org/2000/xmlns/"不同,或者如果namespaceURI为"http://www.w3.org/2000/xmlns/"且qualifiedName或其前缀均不为"xmlns"。
      NOT_SUPPORTED_ERR: 如果当前文档不支持"XML"特性,则始终抛出。
      自版本:
      1.4, DOM Level 2
    • getElementsByTagNameNS

      NodeList getElementsByTagNameNS(String namespaceURI, String localName)
      返回一个按文档顺序排列的所有具有给定本地名称和命名空间URI的ElementsNodeList
      参数:
      namespaceURI - 要匹配的元素的命名空间URI。特殊值"*"匹配所有命名空间。
      localName - 要匹配的元素的本地名称。特殊值"*"匹配所有本地名称。
      返回:
      包含所有匹配的Elements的新NodeList对象。
      自版本:
      1.4, DOM Level 2
    • getElementById

      Element getElementById(String elementId)
      返回具有给定值的ID属性的Element。如果不存在这样的元素,则返回null。如果有多个元素具有具有该值的ID属性,则返回的结果是未定义的。
      DOM实现应使用属性Attr.isId来确定属性是否为ID类型。

      注意: 名称为"ID"或"id"的属性除非已定义,否则不属于ID类型。

      参数:
      elementId - 元素的唯一id值。
      返回:
      匹配的元素或如果没有则返回null
      自版本:
      1.4, DOM Level 2
    • getInputEncoding

      String getInputEncoding()
      指定在解析时用于此文档的编码。当不知道时,此值为null,例如在内存中创建Document时。
      自版本:
      1.5, DOM Level 3
    • getXmlEncoding

      String getXmlEncoding()
      指定作为XML声明的一部分的文档的编码。当未指定或不知道时,此值为null,例如在内存中创建Document时。
      自版本:
      1.5, DOM Level 3
    • getXmlStandalone

      boolean getXmlStandalone()
      指定作为XML声明的一部分的文档是否是独立的。当未指定时,此值为false

      注意: 在设置此属性时不会对值进行验证。应用程序应使用带有"validate"参数的Document.normalizeDocument()来验证该值是否符合在[XML 1.0]中定义的独立文档声明的有效性约束。

      自版本:
      1.5, DOM Level 3
    • setXmlStandalone

      void setXmlStandalone(boolean xmlStandalone) throws DOMException
      指定作为XML声明的一部分的文档是否是独立的。当未指定时,此值为false

      注意: 在设置此属性时不会对值进行验证。应用程序应使用带有"validate"参数的Document.normalizeDocument()来验证该值是否符合在[XML 1.0]中定义的独立文档声明的有效性约束。

      抛出:
      DOMException - NOT_SUPPORTED_ERR: 如果此文档不支持"XML"特性。
      自版本:
      1.5, DOM Level 3
    • getXmlVersion

      String getXmlVersion()
      指定作为XML声明的一部分的文档的版本号。如果没有声明且此文档支持"XML"特性,则值为"1.0"。如果此文档不支持"XML"特性,则值始终为null。更改此属性将影响检查XML名称中的无效字符的方法。应用程序应调用Document.normalizeDocument()以检查已经存在于此Document中的Node中的无效字符。
      DOM应用程序可以使用参数值为"XMLVersion"和"1.0"(分别)的DOMImplementation.hasFeature(feature, version)方法来确定实现是否支持[XML 1.0]。DOM应用程序可以使用参数值为"XMLVersion"和"1.1"(分别)的相同方法来确定实现是否支持[XML 1.1]。在这两种情况下,为了支持XML,实现还必须支持此规范中定义的"XML"特性。支持"XMLVersion"特性版本的Document对象在使用Document.xmlVersion时不得为相同版本号引发NOT_SUPPORTED_ERR异常。
      自版本:
      1.5, DOM Level 3
    • setXmlVersion

      void setXmlVersion(String xmlVersion) throws DOMException
      指定作为XML声明的一部分的文档的版本号。如果没有声明且此文档支持"XML"特性,则值为"1.0"。如果此文档不支持"XML"特性,则值始终为null。更改此属性将影响检查XML名称中的无效字符的方法。应用程序应调用Document.normalizeDocument()以检查已经存在于此Document中的Node中的无效字符。
      DOM应用程序可以使用参数值为"XMLVersion"和"1.0"(分别)的DOMImplementation.hasFeature(feature, version)方法来确定实现是否支持[XML 1.0]。DOM应用程序可以使用参数值为"XMLVersion"和"1.1"(分别)的相同方法来确定实现是否支持[XML 1.1]。在这两种情况下,为了支持XML,实现还必须支持此规范中定义的"XML"特性。支持"XMLVersion"特性版本的Document对象在使用Document.xmlVersion时不得为相同版本号引发NOT_SUPPORTED_ERR异常。
      抛出:
      DOMException - 如果版本设置为此Document不支持的值,或者如果此文档不支持"XML"特性,则引发NOT_SUPPORTED_ERR。
      自版本:
      1.5, DOM Level 3
    • getStrictErrorChecking

      boolean getStrictErrorChecking()
      指定是否强制执行错误检查。当设置为false时,实现可以不测试通常在DOM操作上定义的每种可能的错误情况,并且在使用Document.normalizeDocument()时不引发任何DOMException或报告错误。在出现错误的情况下,行为是未定义的。此属性默认为true
      自版本:
      1.5, DOM Level 3
    • setStrictErrorChecking

      void setStrictErrorChecking(boolean strictErrorChecking)
      指定是否强制执行错误检查。当设置为false时,实现可以不测试通常在DOM操作上定义的每种可能的错误情况,并且在使用Document.normalizeDocument()时不引发任何DOMException或报告错误。在出现错误的情况下,行为是未定义的。此属性默认为true
      自版本:
      1.5, DOM Level 3
    • getDocumentURI

      String getDocumentURI()
      文档的位置,如果未定义或者Document是使用DOMImplementation.createDocument创建的,则为null。在设置此属性时不执行词法检查;这可能导致在使用Node.baseURI时返回null值。
      注意,当Document支持"HTML"特性[DOM Level 2 HTML]时,HTML BASE元素的href属性优先于此属性计算Node.baseURI
      自版本:
      1.5, DOM Level 3
    • setDocumentURI

      void setDocumentURI(String documentURI)
      文档的位置,如果未定义或者使用 DOMImplementation.createDocument 创建 Document ,则为 null 。设置此属性时不执行词法检查;当使用 Node.baseURI 时可能会导致返回 null 值。
      注意,当 Document 支持特性 "HTML" [DOM Level 2 HTML] 时,计算 Node.baseURI 时,HTML BASE 元素的 href 属性优先于此属性。
      自版本:
      1.5, DOM Level 3
    • adoptNode

      Node adoptNode(Node source) throws DOMException
      尝试将另一个文档中的节点移入此文档。如果支持,会更改源节点及其子节点的 ownerDocument ,以及如果存在附加属性节点,则会更改这些属性节点的所有者。如果源节点有父节点,则首先将其从父节点的子节点列表中移除。这实际上允许将一个子树从一个文档移动到另一个文档(与 importNode() 不同,后者会创建源节点的副本而不是移动它)。当失败时,应用程序应改用 Document.importNode() 。请注意,如果被采用的节点已经是此文档的一部分(即源文档和目标文档相同),则此方法仍会将源节点从其父节点的子节点列表中移除(如果有的话)。以下列表描述了每种节点类型的具体情况。
      ATTRIBUTE_NODE
      将采用的 AttrownerElement 属性设置为 null ,并在采用的 Attr 上将 specified 标志设置为 true 。递归采用源 Attr 的后代。
      DOCUMENT_FRAGMENT_NODE
      递归采用源节点的后代。
      DOCUMENT_NODE
      无法采用 Document 节点。
      DOCUMENT_TYPE_NODE
      无法采用 DocumentType 节点。
      ELEMENT_NODE
      采用源元素的 Specified 属性节点。默认属性将被丢弃,但如果被采用的文档为此元素名称定义了默认属性,则会分配这些属性。递归采用源元素的后代。
      ENTITY_NODE
      无法采用 Entity 节点。
      ENTITY_REFERENCE_NODE
      仅采用 EntityReference 节点本身,后代将被丢弃,因为源文档和目标文档可能以不同方式定义实体。如果被导入的文档为此实体名称提供了定义,则将分配其值。
      NOTATION_NODE
      无法采用 Notation 节点。
      PROCESSING_INSTRUCTION_NODE, TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE
      这些节点都可以被采用。无具体规定。

      注意:Document.importNode() 方法不同,此方法不会创建新节点,因此不会引发 INVALID_CHARACTER_ERR 异常,应用程序应使用 Document.normalizeDocument() 方法检查导入的名称是否不符合正在使用的 XML 版本的 XML 名称。

      参数:
      source - 要移入此文档的节点。
      返回:
      被采用的节点,如果此操作失败(例如源节点来自不同的实现),则为 null
      抛出:
      DOMException - NOT_SUPPORTED_ERR: 如果指定节点的类型为 DOCUMENTDOCUMENT_TYPE
      NO_MODIFICATION_ALLOWED_ERR: 当源节点为只读时引发。
      自版本:
      1.5, DOM Level 3
    • getDomConfig

      DOMConfiguration getDomConfig()
      在调用 Document.normalizeDocument() 时使用的配置。
      自版本:
      1.5, DOM Level 3
    • normalizeDocument

      void normalizeDocument()
      此方法的作用就像文档经历保存和加载循环,将文档放入 "正常" 形式。因此,此方法会更新 EntityReference 节点的替换树,并规范化 Text 节点,如 Node.normalize() 方法中所定义。
      否则,实际结果取决于设置在 Document.domConfig 对象上的特性,以及实际执行的操作。值得注意的是,此方法还可以使文档命名空间符合描述的算法,检查字符规范化,移除 CDATASection 节点等。有关详细信息,请参阅 DOMConfiguration
      // 保留文档中定义的信息集(Java 示例)
       DOMConfiguration docConfig = myDocument.getDomConfig();
       docConfig.setParameter("infoset", Boolean.TRUE);
       myDocument.normalizeDocument();

      如果支持变异事件,则会生成事件以反映文档上发生的更改。
      如果在调用此方法时发生错误,例如尝试更新只读节点或者 Node.nodeName 包含根据正在使用的 XML 版本的 XML 名称无效字符,将使用与 "error-handler " 参数关联的 DOMErrorHandler 对象报告错误或警告(DOMError.SEVERITY_ERRORDOMError.SEVERITY_WARNING)。请注意,如果实现无法从错误中恢复,此方法还可能报告致命错误(DOMError.SEVERITY_FATAL_ERROR)。
      自版本:
      1.5, DOM Level 3
    • renameNode

      Node renameNode(Node n, String namespaceURI, String qualifiedName) throws DOMException
      重命名类型为 ELEMENT_NODEATTRIBUTE_NODE 的现有节点。
      在可能的情况下,这只是更改给定节点的名称,否则会创建一个具有指定名称的新节点,并按照以下描述替换现有节点。
      如果无法简单更改给定节点的名称,则执行以下操作:创建一个新节点,将任何注册的事件侦听器注册到新节点上,从旧节点中删除附加到该节点的任何用户数据,如果旧节点有父节点,则将其从父节点中移除,将子节点移动到新节点,如果重命名的节点是一个 Element ,则其属性将移动到新节点,新节点将插入到其父节点的子节点列表中原来的位置,如果有的话,将附加到旧节点的用户数据附加到新节点上。
      当要重命名的节点是一个附加到 ElementAttr 时,首先将节点从 Element 属性映射中移除。然后,一旦按照上述方式修改现有节点或创建新节点进行重命名,就将其放回。
      此外,
      • 触发用户数据事件 NODE_RENAMED
      • 如果实现支持特性 "MutationNameEvents",则此方法中涉及的每个变异操作都会触发适当的事件,最终会触发事件 { http://www.w3.org/2001/xml-events, DOMElementNameChanged} 或 { http://www.w3.org/2001/xml-events, DOMAttributeNameChanged}。
      参数:
      n - 要重命名的节点。
      namespaceURI - 新的命名空间 URI。
      qualifiedName - 新的限定名称。
      返回:
      重命名后的节点。这可以是指定的节点,也可以是为替换指定节点而创建的新节点。
      抛出:
      DOMException - NOT_SUPPORTED_ERR: 如果指定节点的类型既不是 ELEMENT_NODE 也不是 ATTRIBUTE_NODE ,或者如果实现不支持重命名文档元素。
      INVALID_CHARACTER_ERR: 如果新的限定名称不是根据 Document.xmlVersion 属性中指定的正在使用的 XML 版本的 XML 名称。
      WRONG_DOCUMENT_ERR: 当指定节点是从与此文档不同的文档创建时引发。
      NAMESPACE_ERR: 如果 qualifiedName 是格式错误的限定名称,如果 qualifiedName 具有前缀且 namespaceURInull ,或者如果 qualifiedName 具有前缀为 "xml" 且 namespaceURI 与 " http://www.w3.org/XML/1998/namespace" [XML Namespaces] 不同。还会在重命名的节点是属性时引发,如果 qualifiedName 或其前缀为 "xmlns" 且 namespaceURI 与 "http://www.w3.org/2000/xmlns/" 不同。
      自版本:
      1.5, DOM Level 3