第1章 XML引言 1
1.1 XML的发展历史 1
1.1.1 标记语言的出现 1
1.1.2 标记语言的特点 3
1.1.3 RTF标记语言 4
1.1.4 HTML标记语言 8
1.1.5 标准通用标记语言(SGML) 13
1.1.6 可扩展标记语言(XML) 14
1.2 XML的一般概念 18
1.2.1 XML是什么 18
1.2.2 XML的设计目标 19
1.2.3 XML的样式语言 20
1.2.4 XML的链接语言 26
1.2.5 XML的名称空间 27
1.2.6 XML的文档对象模型(DOM) 27
1.2.7 XML的文档类型定义(DTD) 27
1.2.8 XML的文档类型模式 29
1.3 XML的应用 30
1.3.1 应用在科学和数学领域中的XML 30
1.3.2 应用在化学领域中的XML 32
1.3.3 矢量标记语言(VML) 33
1.3.4 音乐标记语言(MusicML) 34
1.3.5 资源描述框架(RDF) 35
1.3.6 人力资源标记语言(HRML) 35
1.3.9 无线标记语言(WML) 36
1.3.7 开放的金融交换标准(OFX) 36
1.3.8 可扩展表单描述语言(XFDL) 36
1.3.10 同步多媒体合成语言(SMIL) 37
小结 38
第2章 XML应用程序 39
2.1 良构的XML文档 39
2.1.1 问题的描述 39
2.1.2 使用记事本创建XML文档 40
2.1.3 结构良好的XML文档 42
2.2 XML文档中的中文编码问题 52
2.3 XML的解析器 54
2.4 文件的结构 58
2.4.2 文件格式定义 59
2.4.1 处理指令 59
2.4.3 XML文档的树状结构 60
2.4.4 标记的命名规则 61
2.4.5 XML文档的属性 62
2.4.6 XML文档中的注释 63
2.4.7 程序中的文字CDATA标记 64
2.5 项目开发 67
小结 72
第3章 使用CSS格式化XML页面 73
3.1 CSS技术简介 73
3.2 CSS文档的基本语法 74
3.2.1 样式的直接定义法 74
3.2.2 成组选择符 75
3.2.3 利用CLASS来定义样式 76
3.2.4 在CSS文件中使用ID 77
3.2.5 STYLE属性的使用 79
3.2.6 CSS中的继承特性 79
3.2.7 使用@import结合样式表单 80
3.2.8 !important声明 81
3.3 将CSS和XML结合的方法 82
3.3.1 外部样式文件 82
3.3.2 将样式语句嵌入到XML文件当中 84
3.3.3 混合的方法指定样式 86
3.3.4 使用多个样式文件 88
3.4.1 与文字相关的属性 90
3.4 CSS格式化XML文档 90
3.4.2 与定位相关的属性 93
3.4.3 与版式相关的属性 101
3.5 在XML中使用HTML标记 108
3.5.1 在XML文档中显示图形 109
3.5.2 在XML文档中使用超链接 110
3.5.3 XML中的换行分段标记 111
3.5.4 在XML文档中实现表格 112
3.5.5 在XML文档中显示表单 113
3.6 在XML文档中添加脚本语言 114
3.7 项目设计 115
3.7.1 学生信息样式的设计 117
3.7.2 课程信息的显示 119
3.7.3 教师信息的显示样式 121
小结 124
第4章 使用XSL显示XML页面 125
4.1 XSL的特点 125
4.2 使用XSL格式化XML页面的例子 126
4.3 XSL的模式语言 130
4.3.1 相对定位和绝对定位 131
4.3.2 XSL的路径匹配模式 135
4.3.3 XSL的控制语句 151
4.4 在XSL当中使用脚本语句 159
4.5 多模板XSL文件格式 160
4.5.1 多模板XSL程序的作用机理 163
4.5.2 多模板程序设计的方法 165
4.6 项目设计一 167
4.6.1 绘制整个系统的XML结构图 168
4.6.2 设计学生信息的XSL模板 169
4.6.3 设计课程信息的XSL模板 171
4.6.4 设计教师信息的XSL模板 173
小结 174
第5章 XML文档类型定义 175
5.1 文档类型定义 175
5.2 文档类型声明 175
5.2.1 内部DTD的声明 175
5.2.2 外部DTD的声明 177
5.2.3 外部DTD和内部DTD联合使用 178
5.3 元素声明的语法 179
5.3.1 #PCDATA型数据 180
5.3.2 ANY 180
5.3.3 声明子标记的一般语法 182
5.3.4 可选择的子标记 184
5.3.5 复合标记类型定义 185
5.3.6 混合型标记内容 187
5.3.7 空标记的定义方法 190
5.3.8 DTD中注释的使用语法 191
5.4 实体的声明和使用 192
5.4.1 内部一般实体 192
5.4.2 外部一般实体 195
5.4.3 内部参数实体 196
5.4.4 外部参数实体 199
5.5 属性的声明 200
5.5.1 属性的声明 201
5.5.2 属性的内容类型 205
5.6 项目设计(设计SCLML学生选课系统标记语言) 213
5.6.1 设计系统的DTD片段 214
5.6.2 设计系统DTD文档 215
5.6.3 系统的XML数据片段 215
5.6.4 系统的所有数据 217
小结 218
第6章 XML Schema 219
6.1 逻辑XML Schema的文档结构 219
6.2 元素的定义 220
6.2.1 元素内容类型的指定 222
6.2.2 标记的子标记的出现次数 223
6.2.3 标记的子标记出现的次序 225
6.2.4 子标记的分组 226
6.2.5 元素的开放性和封闭性 228
6.3 Schema中的注释 233
6.4 项目一(一个完整Schema应用程序) 235
6.4.1 程序源代码 235
6.4.2 样式文件代码分析 240
6.4.3 Schema文件代码分析 246
小结 247
7.2 名域的宣告 248
7.1 名域空间的基本概念 248
第7章 XML中的名域空间 248
7.3 名域的范畴 251
7.4 默认的名域 252
7.5 使用名域的属性 254
小结 255
第8章 XML的数据源对象(数据岛) 256
8.1 数据岛的一般概念 256
8.1.1 DSO的数据显示方法 256
8.1.2 内嵌的数据岛 257
8.1.3 外部调用数据的数据岛 259
8.2 数据岛的数据显示 261
8.2.1 通过简单表格来显示数据岛数据 261
8.2.2 通过嵌套表格来显示数据岛数据 262
8.3.1 创建一个记录集 268
8.3 通过记录集管理数据岛 268
8.3.2 通过记录集访问数据岛中各个标记的方法 270
8.3.3 操作记录集的方法 272
8.3.4 遍历记录集 274
8.3.5 对记录集进行分页 277
8.3.6 把记录取到数组中 280
8.4 数据源对象的属性和方法 282
8.4.1 数据岛文档的根 282
8.4.2 数据岛中的节点 283
8.4.3 带有数据类型的XML数据岛 285
8.4.4 节点数据类型的访问和设定 288
8.5.1 项目背景 290
8.5 项目开发(使用数据岛实现数据库查询的分页显示) 290
8.5.2 项目的实现 291
8.5.3 项目的实现代码 294
小结 296
第9章 使用DOM管理XML文档 297
9.1 声明一个DOM对象 297
9.2 使用DOM技术访问XML文档中的所有节点 300
9.3 节点对象的属性 302
9.3.1 和标记内容相关的属性 302
9.3.2 和标记及标记数据类型相关的属性 304
9.4 节点和属性的创建 308
9.4.1 创建一个标记 308
9.4.2 创建一个属性 310
9.4.3 生成复杂节点的方法 312
9.4.4 复制某一个子节点 313
9.5 节点的删除和编辑 316
9.6 节点的查询 318
9.7 项目开发(客户端分页技术) 321
小结 327
第10章 XML在ASP中的应用 328
10.1 使用DOM创建一个XML文档 328
10.1.1 在ASP文档中调用DOM的方法 328
10.1.2 由字符串生成XML文档 329
10.1.3 从一个XML文档生成另一个XML文档 330
10.2 在XML文件中定位的方法 331
10.3.2 生成新的属性 334
10.3 使用DOM在XML文档中添加标记和属性 334
10.3.1 在ASP中生成新的标记 334
10.4 在XML文件中进行查询 336
10.5 从数据库中提取XML文件 338
10.6 ADO的XML特性 343
10.6.1 Recordset对象 343
10.6.2 Response对象 346
10.6.3 Stream对象 347
10.7 XMLHTTP对象 349
10.8 XML的服务器端样式 351
10.9 项目开发(一个客户端的BBS) 353
小结 365