What is Document Object Model (DOM)
The Document Object Model (DOM) is an application programming interface (API) for HTML as well as XML.
The DOM maps out an entire page as a document composed of a hierarchy of nodes like a tree structure and using the DOMAPI nodes can be removed, added, and replaced.
DOM level 1 consisted of two modules: the DOM Core, which provided a way to map the structure of an XML-based document to allow for easy access to and manipulation of any part of a document, and the DOM HTML, which extended the DOM Core by adding HTML-specific objects and methods.
DOM Level 2 introduced several new modules of the DOM to deal with new types of interfaces:
- DOM Views — describes interfaces to keep track of the various views of a document (that is, the document before CSS styling and the document after CSS styling)
- DOM Events — describes interfaces for events
- DOM Style — describes interfaces to deal with CSS-based styles
- DOM Traversal and Range — describes interfaces to traverse and manipulate a document tree
DOM Level 3 further extends the DOM with the introduction of methods to load and save documents in a uniform way (contained in a new module called DOM Load and Save) as well as methods to validate a document (DOM Validation). In Level 3, the DOM Core is extended to support all of XML 1.0, including XML Infoset, XPath, and XML Base.
- Scalable Vector Graphics (SVG)
- Mathematical Markup Language (MathML)
- Synchronized Multimedia Integration Language (SMIL)
What is Browser Object Model (BOM)
Browsers feature a Browser Object Model (BOM) that allows access and manipulation of the browser window. Using the BOM, developers can move the window, change text in the status bar, and perform other actions that do not directly relate to the page content using objects like
document which are children of