XML DOM

一、XML DOM简介

XML DOM定义了访问和处理XML文档的标准方法。

XML DOM是XML Document Object Model的缩写,即XML文档对象模型。

1. 什么是DOM?

  a. DOM是W3C的推荐标准。

  b. DOM定义了访问诸如XML和XHTML文档的标准。

      "W3C文档对象模型(DOM)是一个使程序和脚本有能力动态地访问和更新文档的内容、结构以及样式的平台和语言中立的接口。"

  c. W3C DOM被分为3个不同级别:

     (1) 核心DOM:用于任何机构化文档的标准模型。

     (2) XML DOM:用于XML文档的标准模型。

     (3) HTML DOM:用于HTML文档的标准模型。

  d. DOM定义了所有文档元素的对象和属性,以及访问他们的方法。

2. 什么是XML DOM?

  XML DOM定义了所有XML元素的对象和属性,以及访问他们的方法。

  a. 用于XML的标准对象模型。

  b. 用于XML的标准编程接口。

  c. 中立于平台和语言。

  d. W3C的标准。

3. XML DOM是用于获取、更改、添加或删除XML元素的标准。

二、XML DOM节点

XML文档中的每个成分都是一个节点。

1. 节点

  根据DOM,XML文档中的每个成分都是一个节点。

  DOM是这样规定的:

  a. 整个文档是一个文档节点

  b. 每个XML标签是一个元素节点

  c. 包含在XML元素中的文本是文本节点

  d. 每一个XML属性是一个属性节点

  e. 注释属于注释节点

2. 实例  

<?xml version="1.0" encoding="ISO-8859-1"?>

<bookstore>

<book category="children">
  <title lang="en">Harry Potter</title> 
  <author>J K. Rowling</author> 
  <year>2005</year> 
  <price>29.99</price> 
</book>

<book category="cooking">
  <title lang="en">Everyday Italian</title> 
  <author>Giada De Laurentiis</author> 
  <year>2005</year> 
  <price>30.00</price> 
</book>

<book category="web">
  <title lang="en">Learning XML</title> 
  <author>Erik T. Ray</author> 
  <year>2003</year> 
  <price>39.95</price> 
</book>

<book category="web">
  <title lang="en">XQuery Kick Start</title> 
  <author>James McGovern</author> 
  <author>Per Bothner</author> 
  <author>Kurt Cagle</author> 
  <author>James Linn</author> 
  <author>Vaidyanathan Nagarajan</author> 
  <year>2003</year> 
  <price>49.99</price> 
</book>

</bookstore>
View Code

  在上面的XML中,根节点是<bookstore>。文档中的所有其他节点都被包含在<bookstore>中。

  根节点<bookstore>有四个<book>节点。

  第一个 <book> 节点有四个节点:<title>, <author>, <year> 以及 <price>,其中每个节点都包含一个文本节点,"Harry Potter", "J K. Rowling", "2005" 以及 "29.99"。

3. 文本总是存储在文本节点中

  在DOM处理中一个普遍的错误是:认为元素节点包含文本。

  不过元素节点的文本是存储在文本节点中的。

  例如:<year>2005</year>,元素节点<year>,拥有一个值为"2005"的文本节点。"2005"不是<year>元素的值!

三、XML DOM节点树

XML DOM把XML DOM文档视为一棵节点树(node-tree)。

树中的所有节点彼此之间都有关系。

1. XML DOM节点树

  a. XML DOM把XML文档视为一种树结构。这种树结构被称为节点树。

  b. 可通过这棵树访问所有节点。可以修改或删除他们的内容。也可以创建新的元素。

  c. 这棵节点树展示了节点的集合,以及他们之间的联系。这棵树从根节点开始,然后在树的最低层级向文本节点长出枝条:

2. 父、子和同级节点

  节点树中的节点彼此之间都有等级关系。

  父、子和同级节点用于描述这种关系。父节点拥有子节点,位于相同层级上的子节点成为同级节点。

  a. 在节点树中,顶端的节点称为根节点

  b. 根节点之外的每个节点都有一个父节点

  c. 节点可以有任何数量的子节点

  d. 叶子是没有子节点的节点

  e. 同级节点是拥有相同父节点的节点

  下面的图片展示出节点树的一个部分,以及节点间的关系:

  

  注释:父节点:Parent Node   子节点:Chidren Node  同级节点: Sibling Node

posted @ 2015-06-12 14:16  鱼不吐泡泡  阅读(184)  评论(0编辑  收藏  举报