第1章 XML概述 1
1.1 XML简介 1
1.1.1 XML的发展历史 1
1.1.2 XML与HTML的比较 2
1.1.3 XML简介 4
1.2 XML的用途 5
1.3 XML的技术规范 7
1.3.1 XML基本规范 7
1.3.2 XML关联技术规范 7
1.4 XML解析器与浏览器 10
1.5 XML编辑软件 12
1.5.1 XMLSpy 12
1.5.2 XMLWriter 12
本章小结 13
思考与练习 13
第2章 XML语法规则 15
2.1 一个结构完整的XML文档 15
2.2 XML标记语法 16
2.2.1 标记的命名规则 16
2.2.2 标记的使用规则 17
2.3 XML文档的结构 18
2.3.1 XML声明 19
2.3.2 XML注释 20
2.3.3 处理指令 20
2.3.4 文档类型声明 21
2.3.5 XML元素 21
2.3.6 XML属性 22
2.3.7 实体 23
2.3.8 CDATA节 24
本章小结 25
思考与练习 25
第3章 文档类型定义 28
3.1 XML文档的有效性 28
3.2 DTD概述 29
3.2.1 文档类型声明与文档类型定义的区别 29
3.2.2 文档类型声明 29
3.2.3 DTD与XML实例文档之间的关系 32
3.2.4 DTD的用途 32
3.2.5 DTD所包括的内容 33
3.3 DTD对元素的声明 33
3.3.1 元素声明语法 33
3.3.2 元素内容模式 34
3.3.3 元素声明中的正则表达式 36
3.3.4 元素声明综合示例 36
3.4 DTD对属性的声明 37
3.4.1 属性声明的语法 38
3.4.2 属性类型 39
3.4.3 属性默认值 43
3.4.4 属性声明综合示例 44
3.5 实体的声明与引用 45
3.5.1 实体的概念与分类 45
3.5.2 普通实体 46
3.5.3 参数实体 51
本章小结 54
思考与练习 54
第4章 XML验证技术Schema 57
4.1 命名空间 57
4.1.1 命名空间的概念 57
4.1.2 使用命名空间解决命名冲突问题 58
4.1.3 默认的命名空间 58
4.1.4 使用命名空间 59
4.2 XML Schema介绍 60
4.2.1 XML Schema与DTD的关系 61
4.2.2 XML Schema的内容 61
4.2.3 XML Schema两种模型及Schema引用 61
4.3 W3C XML Schema完整的示例 63
4.4 W3C XML Schema的数据类型 64
4.4.1 W3C Schema内置数据类型 64
4.4.2 简单数据类型 65
4.4.3 复杂数据类型 70
4.5 元素和属性的定义 76
4.5.1 元素的定义 76
4.5.2 属性的定义 77
4.5.3 元素、属性定义的综合示例 78
4.6 引用W3C XML Schema模式的方法及相关知识 79
4.6.1 XML文档引用W3C XMLSchema模式的方法 79
4.6.2 elementFormDefault属性的作用 81
本章小结 82
思考与练习 83
第5章 可扩展样式单语言 87
5.1 在XML中使用CSS 和XSL 87
5.2 层叠样式单简介 89
5.2.1 CSS语法 89
5.2.2 CSS的选择器 90
5.2.3 CSS的属性集 91
5.3 XSL概述 92
5.3.1 CSS与XSL的区别 93
5.3.2 XSL的组成及工作原理 93
5.3.3 XML文档结构树 94
5.3.4 XSL文档的基本结构 95
5.4 XSL的模板 96
5.4.1 定义模板元素 96
5.4.2 调用模板元素 97
5.5 XPath初步介绍 98
5.6 XSL的元素语法 99
5.6.1 选择模式元素 99
5.6.2 测试模式元素 103
5.6.3 其他模式元素 105
本章小结 108
思考与练习 109
第6章 XML高级语法 111
6.1 XPath 111
6.1.1 XPath基本概念 112
6.1.2 XPath定位路径 115
6.1.3 XPath函数 119
6.1.4 XPath 1.0与XPath 2.0的区别 121
6.2 XQuery 123
6.3 XLink和XPointer 128
6.3.1 XLink简介 128
6.3.2 XPointer简介 130
本章小结 131
思考与练习 132
第7章 XML应用编程 135
7.1 XML编程接口与XML解析器 135
7.2 DOM接口 136
7.2.1 DOM与XML DOM 136
7.2.2 DOM节点树 136
7.2.3 DOM常用接口 138
7.2.4 DOM树的遍历 143
7.2.5 动态创建XML文档 150
7.2.6 DOM节点树的修改与删除 154
7.3 SAX接口 157
7.3.1 SAX接口概述 157
7.3.2 SAX工作原理 159
7.3.3 使用SAX 160
7.3.4 SAX错误的处理 167
7.3.5 DOM接口与SAX接口的结合使用 167
7.4 XML与数据库 170
7.4.1 DOM与数据库 170
7.4.2 SAX与数据库 174
本章小结 177
思考与练习 177
第8章 XML数据岛 180
8.1 数据岛基本概念 180
8.1.1 数据岛定义 180
8.1.2 数据岛的引入方式 181
8.2 数据岛的数据绑定 182
8.2.1 能与XML数据岛绑定的HTML标记 183
8.2.2 数据绑定与DSO对象 185
8.2.3 数据绑定方式 185
8.2.4 绑定多层XML文档 188
8.2.5 XML标记属性的处理 190
8.3 DSO对象 191
8.3.1 DSO对象对XML文档的操作 192
8.3.2 DSO的ADO记录集 194
8.4 动态选择XML文档的显示样式 196
本章小结 199
思考与练习 200
第9章 XML的Web应用实例 202
9.1 应用实例需求概述 202
9.2 XML与数据库 204
9.2.1 实例中所使用的数据库及数据源 205
9.2.2 实例中所使用的XML文档 206
9.3 JSP介绍 207
9.3.1 JSP的配置 208
9.3.2 JSP的内置对象简介 210
9.4 查询信息模块的实现 210
9.4.1 显示查询提示信息的页面 211
9.4.2 在数据库中查询信息 214
9.4.3 采用不同的样式显示查询结果 218
9.5 管理信息模块 220
9.5.1 在客户端对数据岛的操作 221
9.5.2 AJAX简介 224
9.5.3 在服务器端的数据保存 227
本章小结 230
附录 实验 232
实验1 结构良好的XML文档 232
实验2 XML文档及其DTD 233
实验3 XML文档及其Schema 235
实验4 为XML文档编写可扩展样式单XSL 237
实验5 DOM编程实验 239
实验6 SAX编程实验 241
实验7 XML数据岛实验 242
实验8 XML网页编程实验 243
参考文献 244