第1章 XML概述 1
1.1 什么是XML 1
1.1.1 XML是元标记语言 2
1.1.2 XML描述的是结构和语义,而不是格式 3
1.2 XML的产生背景 4
1.2.1 电子数据交换简介 4
1.2.2 XML的产生及其与SGML、HTML的关系 5
1.3 XML的优越性 7
1.4 XML应用综述 8
1.5 XML软件 9
1.5.1 XML浏览器 9
1.5.2 XML编辑器 10
1.5.3 XML解析器 10
1.6 XML相关技术 11
1.6.1 级联样式表 11
1.6.2 可扩展样式表语言 12
1.6.3 URL和URI 12
1.6.4 XLink和XPointer 12
1.6.5 Unicode字符集 13
1.6.6 如何将这些技术融合在一起 13
1.7 XML开发工具 13
1.7.1 XMLSpy 2007的主要功能 14
1.7.2 XMLSpy 2007的图形用户界面 16
1.7.3 XMLSpy 2007的安装 19
1.7.4 XMLSpy 2007的使用 21
1.8 本章小结 22
第2章 XML语法 23
2.1 XML文档结构 23
2.2 XML文档规则 24
2.2.1 格式良好的XML文档规则 24
2.2.2 格式良好的XML文档 28
2.2.3 有效的XML文档 28
2.3 XML声明 29
2.4 文档内容 32
2.4.1 XML元素 32
2.4.2 XML属性 36
2.4.3 注释 38
2.4.4 字符引用和实体引用 39
2.5 命名空间 41
2.5.1 命名冲突 41
2.5.2 解决命名冲突的方法 42
2.5.3 使用命名空间 42
2.6 XML文档高级应用 44
2.6.1 XML专用标记——处理指令 44
2.6.2 XML专用标记——CDATA节 44
2.7 本章小结 47
第3章 XML文档类型定义——DTD 48
3.1 什么是DTD 48
3.2 为什么要使用DTD 49
3.3 DTD声明 49
3.3.1 内部DTD 50
3.3.2 外部DTD 50
3.4 DTD语法 52
3.4.1 元素声明 52
3.4.2 属性声明 60
3.4.3 实体声明 68
3.5 本章小结 70
第4章 XML模式定义——XSD 71
4.1 Schema简介 71
4.2 为什么要使用Schema 72
4.3 Schema的文档结构 73
4.4 XSD的数据类型 78
4.4.1 简单数据类型 78
4.4.2 复杂数据类型 83
4.5 Schema中的元素声明 83
4.5.1 简单元素的声明 83
4.5.2 复杂元素的声明 84
4.5.3 匿名类型定义 89
4.6 Schema中的属性声明 91
4.7 全局元素和全局属性 96
4.8 在XML模式中创建元素和属性组 98
4.8.1 sequence元素 98
4.8.2 choice元素 100
4.8.3 group元素 102
4.8.4 all元素 104
4.8.5 attributeGroup元素 107
4.9 在一个XML模式中使用另一个模式 109
4.9.1 include元素 109
4.9.2 import元素 113
4.10 本章小结 117
第5章 XML文档的显示——CSS 118
5.1 样式表简介 118
5.2 级联样式表CSS 119
5.2.1 什么是CSS 119
5.2.2 样式表与文档的链接 120
5.2.3 级联过程 121
5.3 CSS语法 122
5.4 CSS属性 127
5.4.1 字体属性 127
5.4.2 文本属性 129
5.4.3 背景属性 131
5.4.4 定位属性 132
5.4.5 尺寸属性 133
5.4.6 布局属性 133
5.4.7 外补丁属性 135
5.4.8 轮廓属性 135
5.4.9 边框属性 136
5.4.10 内容属性 137
5.4.11 内补丁属性 138
5.4.12 列表属性 138
5.4.13 表格属性 139
5.4.14 其他属性 140
5.5 本章小结 142
第6章 XML文档的显示——XSL 143
6.1 XSL概述 144
6.2 XSLT 145
6.2.1 为什么要用XSLT 145
6.2.2 XSLT的历史 146
6.2.3 XSLT和CSS的比较 146
6.3 XPath 146
6.3.1 XPath定义 147
6.3.2 XPath数据类型 147
6.3.3 XPath表达式 149
6.3.4 XPath定位路径 152
6.3.5 XPath标准函数库 157
6.4 XSL文档结构 160
6.5 XSLT的元素语法 164
6.5.1 XSL模板 164
6.5.2 使用xsl:value-of获得节点值 169
6.5.3 使用xsl:for-each处理多个元素 176
6.5.4 默认的模板规则 181
6.5.5 对输出元素排序 182
6.5.6 选择 184
6.5.7 XPath表达式在XSL样式表中的使用方法总结 194
6.5.8 决定输出要包含的内容 199
6.5.9 使用xsl:copy复制当前节点 207
6.5.10 使用xsl:number为节点计数 211
6.5.11 使用xsl:variable定义常数 216
6.5.12 命名模板 218
6.5.13 参数及使用 219
6.5.14 删除和保留空白 224
6.5.15 合并多个样式表 224
6.6 本章小结 230
第7章 XML和Microsoft SQL Server 2000的集成 231
7.1 Microsoft SQL Server 2000对XML的支持 231
7.1.1 SQL Server 2000中的XML特征 231
7.1.2 SQL Server的XML体系结构 233
7.1.3 启用IIS对SQL Server XML的支持 233
7.2 使用存储在SQL Server中的数据生成XML文档 236
7.2.1 For XML Raw模式 237
7.2.2 For XML Auto模式 238
7.2.3 For XML Explicit模式 238
7.2.4 转义字符和特殊符号 239
7.3 对SQL Server数据库数据执行XPath查询 239
7.3.1 XDR架构元素 240
7.3.2 XPath查询的步骤 244
7.4 把XML数据插入到SQL Server数据库表中 246
7.5 本章小结 250
第8章 XLink和XPointer 251
8.1 XLink 251
8.1.1 链接 251
8.1.2 简单链接 253
8.1.3 扩展链接 254
8.1.4 外联链接 256
8.1.5 扩展链接组 256
8.2 XPointer 259
8.2.1 绝对位置项 260
8.2.2 相对位置项 264
8.2.3 字符串位置项 266
8.2.4 origin绝对位置项 267
8.3 本章小结 268
第9章 XML DOM编程模型 269
9.1 文档对象模型概述 269
9.2 XML解析器 270
9.3 DOM解析树 271
9.4 MSXML DOM模型结构 273
9.4.1 DOMDocument对象 274
9.4.2 IXMLDOMNode对象 276
9.4.3 IXMLDOMNodeList对象 277
9.4.4 IXMLDOMParseError对象 277
9.5 DOM编程步骤 277
9.6 本章小结 279
第10章 Java中的XML编程 280
10.1 使用DOM解析XML 280
10.1.1 Java DOM的API 281
10.1.2 Java DOM的应用 283
10.2 使用SAX解析XML 289
10.2.1 SAX中的事件 289
10.2.2 Java SAX的API 292
10.2.3 Java SAX的应用 293
10.3 使用JDOM解析XML 297
10.3.1 JDOM的API 297
10.3.2 JDOM的应用 299
10.4 本章小结 303
第11章 使用JavaScript操作XML文档 304
11.1 JavaScript语言概述 304
11.1.1 JavaScript的基本语法 305
11.1.2 JavaScript事件 306
11.1.3 JavaScript程序的编写及运行 308
11.2 使用JavaScript解析XML文档 309
11.2.1 创建DOM文档对象并载入XML文档 309
11.2.2 遍历XML DOM文档 311
11.2.3 在DOM中添加、删除和替换节点 315
11.3 使用JavaScript验证XML文档 318
11.3.1 使用DOM验证XML文档对于DTD的有效性 319
11.3.2 使用DOM验证XML文档对于XML模式的有效性 324
11.4 使用样式表实时处理XML文档 330
11.5 本章小结 340
第12章 .NET中的XML编程 341
12.1 使用流模式处理XML文档 342
12.1.1 读取XML文档 342
12.1.2 写XML文档 365
12.2 使用DOM处理XML文档 371
12.2.1 .NET W3C DOM类简介 371
12.2.2 使用DOM加载及保存XML数据 373
12.2.3 使用DOM浏览XML文档 374
12.2.4 创建新节点 397
12.2.5 修改和删除节点 408
12.3 ADO.NET与XML 418
12.3.1 ADO.NET简介 418
12.3.2 XML与DataSet对象的关系 419
12.3.3 使用DataSet对象访问XML文档 420
12.3.4 同步XML文档和DataSet对象 435
12.4 XML查询 437
12.4.1 XPathDocument对象 438
12.4.2 XPathNavigator对象 438
12.4.3 XPathExpression对象 441
12.5 XML转换 446
12.5.1 使用编程的方式实现XML转换 446
12.5.2 使用ASP.NET中的控件显示XML数据 449
12.5.3 扩展XSLT样式表 452
12.5.4 扩展对象 475
12.6 XML序列化 480
12.6.1 XML的序列化 481
12.6.2 使用XmlSerializer序列化对象 490
12.6.3 控制XML序列化 497
12.7 本章小结 506
第13章 .NET中的XML Web Service 507
13.1 XML web Service概述 507
13.1.1 什么是Web Service 507
13.1.2 Web Service软件的支持 508
13.1.3 XML Web Service的定义 508
13.1.4 XML Web Service的技术支持 510
13.2 创建和使用XML Web Service 513
13.2.1 创建XML Web Service 513
13.2.2 使用XML Web Service 520
13.3 本章小结 533
第14章 XML最新应用——Ajax 534
14.1 Ajax概述 534
14.2 Ajax技术基础 535
14.3 Ajax技术核心 536
14.3.1 创建XMLHttpRequest对象 536
14.3.2 XMLHttpRequest对象的方法与属性 537
14.3.3 Prototype框架 539
14.4 Ajax应用 552
14.5 本章小结 570