Progress
External Program
Interfaces


The DOM Structure Model

The DOM presents documents as a hierarchy or tree of node objects that also implement other, more specialized interfaces. Some types of nodes may have child nodes of various types, and others are leaf nodes that cannot have anything below them in the document structure. The node types, and which node types they may have as children, are shown in Table 11–1.

Table 11–1: Node Interface Types
Node Interfaces
Description
Children
DocumentType
Represents the Document Type Definition or Schema declaration of the XML document.
Notation, Entity
DocumentFragment
Represents a lightweight object used to store sections of an XML document temporarily.
Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
EntityReference
Represents a reference to an entity within the XML document.
Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
Element
Represents an element node. This interface represents the data, or the tags of the XML document. The text of the element is stored in a Text or CDATASection node, which is the child of the element.
Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference
Attribute
Represents an attribute of a document or an element. The allowable values for the attribute are defined in a document type definition. Attributes are NOT considered as child nodes of the element they describe.
Text, EntityReference
CDATASection
CDATA sections are used to escape blocks of text that would otherwise be regarded as markup. The primary purpose is for including XML fragments, without needing to escape all the delimiters.
None
Comment
Represents the content of a comment
None
Entity
Represents an entity, either parsed or unparsed, in the XML document.
None
Notation
Represents a notation declared within the DTD.
None
ProcessingInstruction
The “Processing Instruction” is a way to keep processor-specific information in the text of the document
None
Text
Represents a Text node that is a child of an element node
None


Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095