
上QQ阅读APP看书,第一时间看更新
4.5 DOM对象模型
XML文件的DOM对象模型比较复杂,大致的对象模型如图4-8所示。

图4-8 XML DOM对象模型示意图
在图4-8中的任意一个方框都是一个节点,因此,DOMDocument是XML文件的根节点,DocumentElement是根元素节点。其实DocumentElement与其他元素节点没什么两样,不同的是这个节点的父节点是DOMDocument。
因此,在DOM对象模型中,一切都围绕着“节点”来展开讨论的,一切对象皆为节点。
4.5.1 节点类型
XML文件的DOM对象模型中的所有节点的通用类型是MSXML2.IXMLDOMNode,也就是DOM节点对象,DOM节点细分为十多种具体的节点类型(NodeType),如表4-1所示。
表4-1 XML节点类型

4.5.2 节点对象
任意一个节点都可以声明为MSXML2.IXMLDOMNode对象,对应的集合对象是MSXML2.IXMLDOMNodeList对象,可以用来描述多个节点组成的集合。
细分到具体的节点类型,还可以用下面的对象类型来声明具体的节点,如表4-2所示。
表4-2 XML节点对象类型

4.5.3 节点对象的属性
要了解一个节点,一般要看它的NodeName、NodeValue和NodeType属性,这三个属性分别表示节点的名称、值和类型。
此外,还可以打印节点的XML属性,更全面地了解一个节点的信息。