DocumentFragment
Stay organized with collections
Save and categorize content based on your preferences.
DocumentFragment
is a "lightweight" or "minimal"
Document
object. It is very common to want to be able to
extract a portion of a document's tree or to create a new fragment of a
document. Imagine implementing a user command like cut or rearranging a
document by moving fragments around. It is desirable to have an object
which can hold such fragments and it is quite natural to use a Node for
this purpose. While it is true that a Document
object could
fulfill this role, a Document
object can potentially be a
heavyweight object, depending on the underlying implementation. What is
really needed for this is a very lightweight object.
DocumentFragment
is such an object.
Furthermore, various operations -- such as inserting nodes as children
of another Node
-- may take DocumentFragment
objects as arguments; this results in all the child nodes of the
DocumentFragment
being moved to the child list of this node.
The children of a DocumentFragment
node are zero or more
nodes representing the tops of any sub-trees defining the structure of
the document. DocumentFragment
nodes do not need to be
well-formed XML documents (although they do need to follow the rules
imposed upon well-formed XML parsed entities, which can have multiple top
nodes). For example, a DocumentFragment
might have only one
child and that child node could be a Text
node. Such a
structure model represents neither an HTML document nor a well-formed XML
document.
When a DocumentFragment
is inserted into a
Document
(or indeed any other Node
that may
take children) the children of the DocumentFragment
and not
the DocumentFragment
itself are inserted into the
Node
. This makes the DocumentFragment
very
useful when the user wishes to create nodes that are siblings; the
DocumentFragment
acts as the parent of these nodes so that
the user can use the standard methods from the Node
interface, such as Node.insertBefore
and
Node.appendChild
.
See also the Document Object Model (DOM) Level 3 Core Specification.
Inherited Constant Summary
Inherited Method Summary
From interface
org.w3c.dom.Node
abstract
Node
|
appendChild( Node newChild)
Adds the node newChild to the end of the list of children
of this node.
|
abstract
Node
|
cloneNode(boolean deep)
Returns a duplicate of this node, i.e., serves as a generic copy
constructor for nodes.
|
abstract
short
|
|
abstract
NamedNodeMap
|
getAttributes()
A NamedNodeMap containing the attributes of this node (if
it is an Element ) or null otherwise.
|
abstract
String
|
getBaseURI()
The absolute base URI of this node or null if the
implementation wasn't able to obtain an absolute URI.
|
abstract
NodeList
|
getChildNodes()
A NodeList that contains all children of this node.
|
abstract
Object
|
getFeature( String feature, String version)
This method returns a specialized object which implements the
specialized APIs of the specified feature and version, as specified
in .
|
abstract
Node
|
|
abstract
Node
|
|
abstract
String
|
getLocalName()
Returns the local part of the qualified name of this node.
|
abstract
String
|
getNamespaceURI()
The namespace URI of this node, or null if it is
unspecified (see ).
|
abstract
Node
|
|
abstract
String
|
getNodeName()
The name of this node, depending on its type; see the table above.
|
abstract
short
|
getNodeType()
A code representing the type of the underlying object, as defined above.
|
abstract
String
|
getNodeValue()
The value of this node, depending on its type; see the table above.
|
abstract
Document
|
|
abstract
Node
|
|
abstract
String
|
getPrefix()
The namespace prefix of this node, or null if it is
unspecified.
|
abstract
Node
|
|
abstract
String
|
getTextContent()
This attribute returns the text content of this node and its
descendants.
|
abstract
Object
|
|
abstract
boolean
|
hasAttributes()
Returns whether this node (if it is an element) has any attributes.
|
abstract
boolean
|
|
abstract
Node
|
insertBefore( Node newChild, Node refChild)
Inserts the node newChild before the existing child node
refChild .
|
abstract
boolean
|
isDefaultNamespace( String namespaceURI)
This method checks if the specified namespaceURI is the
default namespace or not.
|
abstract
boolean
|
|
abstract
boolean
|
isSameNode( Node other)
Returns whether this node is the same node as the given one.
|
abstract
boolean
|
isSupported( String feature, String version)
Tests whether the DOM implementation implements a specific feature and
that feature is supported by this node, as specified in .
|
abstract
String
|
|
abstract
String
|
lookupPrefix( String namespaceURI)
Look up the prefix associated to the given namespace URI, starting from
this node.
|
abstract
void
|
normalize()
Puts all Text nodes in the full depth of the sub-tree
underneath this Node , including attribute nodes, into a
"normal" form where only structure (e.g., elements, comments,
processing instructions, CDATA sections, and entity references)
separates Text nodes, i.e., there are neither adjacent
Text nodes nor empty Text nodes.
|
abstract
Node
|
removeChild( Node oldChild)
Removes the child node indicated by oldChild from the list
of children, and returns it.
|
abstract
Node
|
replaceChild( Node newChild, Node oldChild)
Replaces the child node oldChild with newChild
in the list of children, and returns the oldChild node.
|
abstract
void
|
setNodeValue( String nodeValue)
The value of this node, depending on its type; see the table above.
|
abstract
void
|
setPrefix( String prefix)
The namespace prefix of this node, or null if it is
unspecified.
|
abstract
void
|
setTextContent( String textContent)
This attribute returns the text content of this node and its
descendants.
|
abstract
Object
|
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-07-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-07-10 UTC."],[[["`DocumentFragment` provides a lightweight container for holding and manipulating portions of a document's structure, acting as a minimal `Document` object without the associated overhead."],["When inserted into a `Document` or another `Node`, only the children of the `DocumentFragment` are added, not the `DocumentFragment` itself, enabling efficient rearrangement of nodes."],["It can hold a variety of nodes and sub-trees, even if they don't form a well-formed XML document, allowing for flexible manipulation of document content."],["`DocumentFragment` inherits methods from the `Node` interface, giving developers tools to traverse and modify the fragment's contents, including functionalities like `insertBefore` and `appendChild`."]]],[]]