XML - What XML DOM Is
What XML DOM Is
-
The DOM = Document Object Model.
-
It is a tree-based representation of an XML document in memory.
-
Each XML element, attribute, text, and comment is treated as a node in this tree.
-
Using DOM, programs can create, read, modify, or delete XML content easily.
How It Works
When an XML document is loaded with a DOM parser:
-
The entire document is read into memory.
-
A tree structure is created.
-
You can traverse the tree (parent → child → sibling) and manipulate nodes.
Example
XML:
<book>
<title>XML Guide</title>
<author>A. Smith</author>
</book>
DOM Tree Representation:
-
book
(element node)-
title
(element node) →"XML Guide"
(text node) -
author
(element node) →"A. Smith"
(text node)
-
DOM API Operations
With DOM you can:
-
Traverse: Move through parent/child/sibling nodes.
-
Read: Get element text or attribute values.
-
Modify: Change node values.
-
Create/Delete: Add or remove nodes.
Advantages of DOM
-
Random access: You can go to any part of the XML tree.
-
Rich manipulation: You can modify, insert, or delete nodes.
-
Standardized: Works across many programming languages.
Disadvantages
-
Memory-intensive: Whole document must be loaded (not good for very large XML).
-
Slower than streaming parsers (SAX/StAX) for huge files.
In Short
-
DOM = loads entire XML into memory as a tree.
-
Best when you need to read and modify XML freely.
-
Not ideal for huge XML documents (use SAX or StAX instead).