XML DOM Node Types
The DOM presents a document as a hierarchy of node objects.
Node Types
The following table lists the different W3C node types, and which node types they may have as children:
Node Type | Description | Children |
---|---|---|
Document | Represents the entire document (the root-node of the DOM tree) | Element (max. one), ProcessingInstruction, Comment, DocumentType |
DocumentFragment | Represents a "lightweight" Document object, which can hold a portion of a document | Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference |
DocumentType | Provides an interface to the entities defined for the document | None |
ProcessingInstruction | Represents a processing instruction | None |
EntityReference | Represents an entity reference | Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference |
Element | Represents an element | Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference |
Attr | Represents an attribute | Text, EntityReference |
Text | Represents textual content in an element or attribute | None |
CDATASection | Represents a CDATA section in a document (text that will NOT be parsed by a parser) | None |
Comment | Represents a comment | None |
Entity | Represents an entity | Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference |
Notation | Represents a notation declared in the DTD | None |
Node Types - Return Values
The following table lists what the nodeName and the nodeValue properties will return for each node type:
Node Type | nodeName returns | nodeValue returns |
---|---|---|
Document | #document | null |
DocumentFragment | #document fragment | null |
DocumentType | doctype name | null |
EntityReference | entity reference name | null |
Element | element name | null |
Attr | attribute name | attribute value |
ProcessingInstruction | target | content of node |
Comment | #comment | comment text |
Text | #text | content of node |
CDATASection | #cdata-section | content of node |
Entity | entity name | null |
Notation | notation name | null |
NodeTypes - Named Constants
NodeType | Named Constant |
---|---|
1 | ELEMENT_NODE |
2 | ATTRIBUTE_NODE |
3 | TEXT_NODE |
4 | CDATA_SECTION_NODE |
5 | ENTITY_REFERENCE_NODE |
6 | ENTITY_NODE |
7 | PROCESSING_INSTRUCTION_NODE |
8 | COMMENT_NODE |
9 | DOCUMENT_NODE |
10 | DOCUMENT_TYPE_NODE |
11 | DOCUMENT_FRAGMENT_NODE |
12 | NOTATION_NODE |