TheDocument
interface represents the entire HTML or XML document. Conceptually, it is the root of the document tree, and provides the primary access to the document's data.
Since elements, text nodes, comments, processing instructions, etc. cannot exist outside the context of aDocument
, theDocument
interface also contains the factory methods needed to create these objects. TheNode
objects created have aownerDocument
attribute which associates them with theDocument
within whose context they were created.
See also theDocument Object Model (DOM) Level 2 Core Specification.
Fields inherited from interface org.w3c.dom.Node |
ATTRIBUTE_NODE,CDATA_SECTION_NODE,COMMENT_NODE,DOCUMENT_FRAGMENT_NODE,DOCUMENT_NODE,DOCUMENT_TYPE_NODE,ELEMENT_NODE,ENTITY_NODE,ENTITY_REFERENCE_NODE,NOTATION_NODE,PROCESSING_INSTRUCTION_NODE,TEXT_NODE |
createAttribute(java.lang.String name) Creates an Attr of the given name. | |
createAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName) Creates an attribute of the given qualified name and namespace URI. | |
createCDATASection(java.lang.String data) Creates a CDATASection node whose value is the specified string. | |
createComment(java.lang.String data) Creates a Comment node given the specified string. | |
createDocumentFragment() Creates an empty DocumentFragment object. | |
createElement(java.lang.String tagName) Creates an element of the type specified. | |
createElementNS(java.lang.String namespaceURI, java.lang.String qualifiedName) Creates an element of the given qualified name and namespace URI. | |
createEntityReference(java.lang.String name) Creates an EntityReference object. | |
createProcessingInstruction(java.lang.String target, java.lang.String data) Creates a ProcessingInstruction node given the specified name and data strings. | |
createTextNode(java.lang.String data) Creates a Text node given the specified string. | |
getDoctype() The Document Type Declaration (see DocumentType ) associated with this document. | |
getDocumentElement() This is a convenience attribute that allows direct access to the child node that is the root element of the document. | |
getElementById(java.lang.String elementId) Returns the Element whoseID is given byelementId . | |
getElementsByTagName(java.lang.String tagname) Returns a NodeList of all theElements with a given tag name in the order in which they are encountered in a preorder traversal of theDocument tree. | |
getElementsByTagNameNS(java.lang.String namespaceURI, java.lang.String localName) Returns a NodeList of all theElements with a given local name and namespace URI in the order in which they are encountered in a preorder traversal of theDocument tree. | |
getImplementation() The DOMImplementation object that handles this document. | |
importNode(Node importedNode, boolean deep) Imports a node from another document to this document. |
publicDocumentTypegetDoctype()
DocumentType
) associated with this document. For HTML documents as well as XML documents without a document type declaration this returnsnull
. The DOM Level 2 does not support editing the Document Type Declaration.docType
cannot be altered in any way, including through the use of methods inherited from theNode
interface, such asinsertNode
orremoveNode
.publicDOMImplementationgetImplementation()
DOMImplementation
object that handles this document. A DOM application may use objects from multiple implementations.publicElementgetDocumentElement()
publicElementcreateElement(java.lang.String tagName) throwsDOMException
Element
interface, so attributes can be specified directly on the returned object.Attr
nodes representing them are automatically created and attached to the element.createElementNS
method.tagName
- The name of the element type to instantiate. For XML, this is case-sensitive. For HTML, thetagName
parameter may be provided in any case, but it must be mapped to the canonical uppercase form by the DOM implementation.Element
object with thenodeName
attribute set totagName
, andlocalName
,prefix
, andnamespaceURI
set tonull
.DOMException
- INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.publicDocumentFragmentcreateDocumentFragment()
DocumentFragment
object.DocumentFragment
.publicTextcreateTextNode(java.lang.String data)
Text
node given the specified string.data
- The data for the node.Text
object.publicCommentcreateComment(java.lang.String data)
Comment
node given the specified string.data
- The data for the node.Comment
object.publicCDATASectioncreateCDATASection(java.lang.String data) throwsDOMException
CDATASection
node whose value is the specified string.data
- The data for theCDATASection
contents.CDATASection
object.DOMException
- NOT_SUPPORTED_ERR: Raised if this document is an HTML document.publicProcessingInstructioncreateProcessingInstruction(java.lang.String target, java.lang.String data) throwsDOMException
ProcessingInstruction
node given the specified name and data strings.target
- The target part of the processing instruction.data
- The data for the node.ProcessingInstruction
object.DOMException
- INVALID_CHARACTER_ERR: Raised if the specified target contains an illegal character.publicAttrcreateAttribute(java.lang.String name) throwsDOMException
Attr
of the given name. Note that theAttr
instance can then be set on anElement
using thesetAttributeNode
method.createAttributeNS
method.name
- The name of the attribute.Attr
object with thenodeName
attribute set toname
, andlocalName
,prefix
, andnamespaceURI
set tonull
. The value of the attribute is the empty string.DOMException
- INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.publicEntityReferencecreateEntityReference(java.lang.String name) throwsDOMException
EntityReference
object. In addition, if the referenced entity is known, the child list of theEntityReference
node is made the same as that of the correspondingEntity
node.If any descendant of theEntity
node has an unbound namespace prefix, the corresponding descendant of the createdEntityReference
node is also unbound; (itsnamespaceURI
isnull
). The DOM Level 2 does not support any mechanism to resolve namespace prefixes.name
- The name of the entity to reference.EntityReference
object.DOMException
- INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.publicNodeListgetElementsByTagName(java.lang.String tagname)
NodeList
of all theElements
with a given tag name in the order in which they are encountered in a preorder traversal of theDocument
tree.tagname
- The name of the tag to match on. The special value "*" matches all tags.NodeList
object containing all the matchedElements
.publicNodeimportNode(Node importedNode, boolean deep) throwsDOMException
parentNode
isnull
). The source node is not altered or removed from the original document; this method creates a new copy of the source node.nodeName
andnodeType
, plus the attributes related to namespaces (prefix
,localName
, andnamespaceURI
). As in thecloneNode
operation on aNode
, the source node is not altered.nodeType
, attempting to mirror the behavior expected if a fragment of XML or HTML source was copied from one document to another, recognizing that the two documents may have different DTDs in the XML case. The following list describes the specifics for each type of node.ownerElement
attribute is set tonull
and thespecified
flag is set totrue
on the generatedAttr
. The descendants of the sourceAttr
are recursively imported and the resulting nodes reassembled to form the corresponding subtree. Note that thedeep
parameter has no effect onAttr
nodes; they always carry their children with them when imported.deep
option was set totrue
, the descendants of the source element are recursively imported and the resulting nodes reassembled to form the corresponding subtree. Otherwise, this simply generates an emptyDocumentFragment
.Document
nodes cannot be imported.DocumentType
nodes cannot be imported.Attr
nodes are attached to the generatedElement
. Default attributes are not copied, though if the document being imported into defines default attributes for this element name, those are assigned. If theimportNode
deep
parameter was set totrue
, 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 theDocumentType
is readonly. Ability to add these imported nodes to aDocumentType
will be considered for addition to a future release of the DOM.On import, thepublicId
,systemId
, andnotationName
attributes are copied. If adeep
import is requested, the descendants of the the sourceEntity
are recursively imported and the resulting nodes reassembled to form the corresponding subtree.EntityReference
itself is copied, even if adeep
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 theDocumentType
is readonly. Ability to add these imported nodes to aDocumentType
will be considered for addition to a future release of the DOM.On import, thepublicId
andsystemId
attributes are copied. Note that thedeep
parameter has no effect onNotation
nodes since they never have any children.target
anddata
values from those of the source node.CharacterData
copy theirdata
andlength
attributes from those of the source node.importedNode
- The node to import.deep
- Iftrue
, recursively import the subtree under the specified node; iffalse
, import only the node itself, as explained above. This has no effect onAttr
,EntityReference
, andNotation
nodes.Document
.DOMException
- NOT_SUPPORTED_ERR: Raised if the type of node being imported is not supported.publicElementcreateElementNS(java.lang.String namespaceURI, java.lang.String qualifiedName) throwsDOMException
namespaceURI
- The namespace URI of the element to create.qualifiedName
- The qualified name of the element type to instantiate.Element
object with the following attributes:Attribute | Value |
---|---|
Node.nodeName | qualifiedName |
Node.namespaceURI | namespaceURI |
Node.prefix | prefix, extracted fromqualifiedName , ornull if there is no prefix |
Node.localName | local name, extracted fromqualifiedName |
Element.tagName | qualifiedName |
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified qualified name contains an illegal character, per the XML 1.0 specification .qualifiedName
is malformed per the Namespaces in XML specification, if thequalifiedName
has a prefix and thenamespaceURI
isnull
, or if thequalifiedName
has a prefix that is "xml" and thenamespaceURI
is different from " http://www.w3.org/XML/1998/namespace" ."XML"
feature, since namespaces were defined by XML.publicAttrcreateAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName) throwsDOMException
namespaceURI
- The namespace URI of the attribute to create.qualifiedName
- The qualified name of the attribute to instantiate.Attr
object with the following attributes:Attribute | Value |
---|---|
Node.nodeName | qualifiedName |
Node.namespaceURI | namespaceURI |
Node.prefix | prefix, extracted fromqualifiedName , ornull if there is no prefix |
Node.localName | local name, extracted fromqualifiedName |
Attr.name | qualifiedName |
Node.nodeValue | the empty string |
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified qualified name contains an illegal character, per the XML 1.0 specification .qualifiedName
is malformed per the Namespaces in XML specification, if thequalifiedName
has a prefix and thenamespaceURI
isnull
, if thequalifiedName
has a prefix that is "xml" and thenamespaceURI
is different from " http://www.w3.org/XML/1998/namespace", or if thequalifiedName
, or its prefix, is "xmlns" and thenamespaceURI
is different from " http://www.w3.org/2000/xmlns/"."XML"
feature, since namespaces were defined by XML.publicNodeListgetElementsByTagNameNS(java.lang.String namespaceURI, java.lang.String localName)
NodeList
of all theElements
with a given local name and namespace URI in the order in which they are encountered in a preorder traversal of theDocument
tree.namespaceURI
- The namespace URI of the elements to match on. The special value "*" matches all namespaces.localName
- The local name of the elements to match on. The special value "*" matches all local names.NodeList
object containing all the matchedElements
.publicElementgetElementById(java.lang.String elementId)
Element
whoseID
is given byelementId
. If no such element exists, returnsnull
. Behavior is not defined if more than one element has thisID
. The DOM implementation must have information that says which attributes are of type ID. Attributes with the name "ID" are not of type ID unless so defined. Implementations that do not know whether attributes are of type ID or not are expected to returnnull
.elementId
- The uniqueid
value for an element.