第1章 XML进化论 1
1-1 标记式语言进化论 2
1-1-1 标记式语言 2
1-1-2 走过SGML 2
1-1-3 数据类型定义语言DTD 5
1-1-4 XML的诞生 6
1-2 XML的特性与优势 7
1-2-1 XML的特性 7
1-2-2 XML的优势 10
1-3 XML的相关软件 14
1-3-1 XML的编辑工具 14
1-3-2 XML的解译工具 16
1-3-3 XML的浏览工具 17
1-4 XML的应用 17
1-4-1 出版业的应用 18
1-4-2 数据库的应用 18
自我突破练习 19
第2章 XML的编写规则 21
2-1 仔细打量XML 22
2-1-1 XML的结构 22
2-1-2 元素 25
2-1-3 属性 28
2-1-4 XML中的注释 31
2-1-5 格式良好的XML文件 33
2-1-6 有效的XML文件 34
2-2 编写第一份XML文件 34
2-3 编写XML文件的注意事项 38
2-3-1 缩排的程序代码 38
2-3-2 特殊字符的显示方式 39
应用秘笈 40
自我突破练习 41
第3章 用DTD规划XML 43
3-1 用DTD为XML塑模 44
3-1-1 DTD 44
3-1-2 DTD的起始声明 44
3-1-3 DTD的元素声明 45
3-1-4 可调换顺序子元素的声明 46
3-1-5 零与无限个子元素的声明 47
3-1-6 最多只能有一个子元素的声明 48
3-1-7 最少有一个子元素的声明 48
3-1-8 EMPTY元素 49
3-1-9 ANY元素 50
3-1-10 为元素设置数据类型 50
3-1-11 DTD中的属性 51
3-1-12 属性默认值的限制条件 54
3-1-13 空白属性类型 55
3-2-1 内部DTD 56
3-2 高级的DTD 56
3-1-14 语系属性类型 56
3-2-2 外部DTD 58
3-2-3 实体 60
3-2-4 外部实体 62
3-2-5 参数实体 63
3-2-6 DTD中的开关 63
自我突破练习 64
第4章 命名空间与XML Schema 65
4-1 命名空间 66
4-1-1 什么是命名空间 66
4-1-2 什么是URI 67
4-1-3 使用Namespaces 68
4-2 XML Schema 71
4-2-1 XML Schema的概念 71
4-2-2 DTD与XML Schema 72
4-2-3 XML Schema的结构 72
4-2-4 XML Schema与命名空间 74
4-2-5 简单类型元素 74
4-2-6 高级的简单类型元素 76
4-2-7 注释说明元素 80
4-2-8 复杂类型元素 80
4-2-9 为复杂类型元素加入属性 82
应用秘笈 83
自我突破练习 84
第5章 CSS与XSLT样式表 85
5-1 用样式表显示XML文件 86
5-1-1 什么是样式表 86
5-1-2 串接样式表CSS 86
5-1-3 为XML套用CSS 87
5-2 可扩充样式表语言XSL 89
5-2-1 认识XSL 90
5-2-2 撰写XSL的事前准备 90
5-2-3 XSLT的特点 91
5-2-4 XSLT的基本架构 93
5-2-5 XSLT的根元素 93
5-2-6 使用转换程序 94
5-2-7 声明显示模板 97
5-2-8 取得XML中的数据 98
5-2-9 套用显示模板 99
5-2-10 一个完整的范例 100
5-2-11 自动转换XML 103
5-2-12 隐藏元素 104
自我突破练习 104
第6章 XSLT的高级技巧 107
6-1 串行型元素与属性 108
6-1-1 串行型元素 108
6-1-2 读取属性 111
6-1-3 添加属性 113
6-2 数据查询 116
6-2-1 元素查询 116
6-2-2 属性查询 118
6-2-3 单一条件式查询 119
6-2-4 多条件查询 121
6-3 XSLT与脚本式语言 123
自我突破练习 125
第7章 把XML转换成PDF文件 127
7-1 FO与PDF 128
7-1-1 可携式文件格式PDF 128
7-1-2 格式化对象FO 128
7-1-3 FO的优点 129
7-1-4 FO的处理方式 130
7-1-5 FO的文件结构 130
7-1-6 撰写FO的事前准备 131
7-1-7 使用XML Spy 2005转换FO 136
7-2 撰写FO样式表 138
7-2-1 Root元素 138
7-2-2 layout-master-set元素 140
7-2-3 simple-page-master元素 141
7-2-4 page-sequence元素 143
7-2-5 flow元素 145
自我突破练习 148
第8章 文件对象模型DOM 151
8-1 跨平台应用程序接口DOM 152
8-1-1 什么是DOM 152
8-1-2 DOM的使用对象 152
8-1-3 DOM的架构 153
8-1-4 DOM的规格内容 154
8-2 用DOM产生XML文件 155
8-2-1 事前的准备 155
8-2-2 C#中的命名空间 156
8-2-3 创建一份空的XML文件 156
8-2-4 添加子元素 160
8-2-5 设置元素内容 161
8-2-6 添加属性 163
8-2-7 加入注释 166
8-3 用DOM读取XML文件 168
8-3-1 加载XML文件 168
8-3-2 读取元素内容 169
8-3-3 读取属性内容 171
8-3-4 读取串行型元素 172
自我突破练习 174
第9章 SAX 175
9-1 SAX简介 176
9-1-1 什么是SAX 176
9-1-2 如何使用SAX 176
9-1-3 虚拟的SAX 178
9-1-4 SAX的运行方式 179
9-1-5 SAX的优点 180
9-2 SAX界面介绍 182
9-3 实作SAX程序 183
9-3-1 ContentHandler界面 183
9-3-2 取得元素内容 193
9-3-3 取得属性内容 195
9-3-4 使用ErrorHandler接口 197
9-4-1 XmlReader类别 201
9-4-2 XmlReader家族 201
9-4 模拟的SAX程序 201
9-4-3 XmlNodeReader类别 202
9-4-4 使用XmlNodeReader 203
自我突破练习 206
第10章 XHTML 207
10-1 XHTML简介 208
10-1-1 HTML的问题 208
10-1-2 XHTML的规格 209
10-2 XHTML文件格式 210
10-2-1 文件的开头声名 210
10-2-2 文件的编码方式 211
10-2-3 XHTML的DTD 211
10-2-5 XHTML的根元素 212
10-2-4 使用命名空间 212
10-2-6 XHTML的title元素 213
10-2-7 文件格式 214
10-3 XHTML的文件内容规则 215
10-3-1 一些重要的规则 216
10-3-2 XHTML与样式表 218
10-4 高级XHTML 219
10-4-1 使用自定义选项卡 219
10-4-2 指定样式表集合 220
10-5-1 什么是ScriptLet 223
10-5-2 制作自己的ScriptLet 223
10-5 组件化的ScriptLet 223
10-6 用VML绘制向量图形 224
10-6-1 什么是VML 225
10-6-2 在网页上绘制椭圆 225
10-6-3 浮起来的文字 227
自我突破练习 229
附录 命令索引表 231
DTD命令 232
DTD属性类型 233
DTD属性修饰词 233
XML Schema命令 234
FO命令 235
习题解答 241