第1章 XML简介 1
1.1 XML是什么 1
1.1.1 XML简史 2
1.1.2 XML的目标 2
1.2 XML语法 3
1.2.1 合式的文档 4
1.2.2 标签和元素的不同 5
1.3 查看完整的XML文档 5
1.3.1 XML文档的结构 6
1.3.2 XML的命名规则 7
1.3.3 XML文档序言 7
1.3.4 XML文档元素中的段 9
1.4 XML的处理模型 13
1.4.1 XML处理方式 13
1.4.2 DOM解析 13
1.4.3 SAX解析 14
1.4.4 为什么有两种处理模型 14
1.5 一些XML工具 15
1.6 小结 15
第2章 XML相关推荐标准 16
2.1 XML命名空间的作用 16
2.1.1 在XML文档中加入命名空间 17
2.1.2 添加默认命名空间 18
2.2 定义XML词汇 19
2.2.1 文档类型定义 20
2.2.2 XML模式 23
2.2.3 DTD与模式的比较 29
2.2.4 其他模式类型 29
2.2.5 XML词汇 30
2.3 显示XML 31
2.3.1 XML和CSS 31
2.3.2 XSL 31
2.4 XPath 35
2.4.1 XPath表达式 36
2.4.2 标识特定节点 37
2.4.3 包含计算和函数 37
2.4.4 XPath小结 37
2.5 XML链接 38
2.5.1 简单链接 38
2.5.2 扩展链接 39
2.5.3 XPointer 40
2.5.4 XML链接小结 41
2.6 小结 41
第3章 Web词汇 42
3.1 XHTML 42
3.1.1 内容与表现的分离 43
3.1.2 XHTML构造规则 44
3.1.3 XHTML工具 53
3.1.4 合式与有效的XML文档 54
3.1.5 XHTML的模块化 58
3.2 MathML 58
3.2.1 表现型MathML 59
3.2.2 内容型MathML 61
3.3 SVG 62
3.3.1 矢量图形的形状 62
3.3.2 图像 64
3.3.3 文本 65
3.3.4 汇总 66
3.4 Web服务 69
3.4.1 WSDL 69
3.4.2 SOAP 74
3.5 其他Web词汇 78
3.5.1 RSS和新闻提要 78
3.5.2 VoiceXML 78
3.5.3 SMIL 78
3.5.4 数据库输出格式 79
3.6 小结 79
第4章 客户端XML 80
4.1 为什么使用客户端XML 80
4.1.1 处理客户端XML内容 80
4.1.2 在浏览器中为内容添加样式 81
4.1.3 在浏览器中处理XML内容 81
4.1.4 在Flash中处理XML 83
4.2 主流浏览器对XML的支持 83
4.2.1 W3C DOM 84
4.2.2 XSD 84
4.2.3 XSLT 84
4.2.4 微软IE 85
4.2.5 Mozilla 90
4.2.6 Opera 91
4.2.7 Adobe Flash 92
4.3 客户端和服务器之间的选择 93
4.3.1 使用客户端XML 93
4.3.2 使用服务器端XML 94
4.4 小结 96
第5章 使用CSS显示XML 97
5.1 CSS介绍 98
5.1.1 为什么使用CSS 98
5.1.2 CSS规则 98
5.2 使用CSS样式化XHTML文档 99
5.3 使用CSS样式化XML文档 104
5.3.1 附加样式表 105
5.3.2 选择器 105
5.4 使用CSS布局XML 106
5.4.1 W3C框模型 106
5.4.2 使用CSS定位 109
5.5 显示表格式数据 120
5.5.1 使用display属性 121
5.5.2 使用浮动元素 122
5.5.3 表格行的合并 124
5.6 XML文档之间的链接 124
5.6.1 Netscape和Firefox中的XLink 125
5.6.2 使用HTML命名空间来定义链接 126
5.7 在XML文档中添加图像 127
5.7.1 添加图像并在Netscape和Firefox中显示 127
5.7.2 使用CSS添加图像 128
5.8 使用CSS添加内容 129
5.9 处理属性内容 131
5.9.1 在选择器中使用属性 131
5.9.2 在文档中使用属性值 132
5.10 小结 133
第6章 XSLT简介 135
6.1 支持XSLT的浏览器 135
6.2 使用XSLT创建页眉和页脚 136
6.2.1 XHTML、XSLT和命名空间 138
6.2.2 创建XSLT样式表 138
6.2.3 样式表 138
6.2.4 转换<body>元素 139
6.2.5 应用转换 140
6.2.6 添加页脚 140
6.2.7 保持不变的转换 141
6.3 创建目录 141
6.3.1 使用<xsl:for-each>选择每一个行星 143
6.3.2 增加新的行星 144
6.4 使用XSLT表现XML 146
6.4.1 从XHTML转到XML 146
6.4.2 使用XSLT样式化XML 147
6.4.3 使用XSLT删除内容 149
6.4.4 XSLT中XPath的作用 149
6.5 包含图像 150
6.5.1 导入模板 151
6.5.2 包含模板 152
6.6 XSLT开发工具 152
6.7 小结 154
第7章 高级客户端XSLT技术 155
7.1 XML文档中的数据排序 155
7.2 使用JavaScript动态排序 159
7.3 添加扩展函数(IE) 165
7.3.1 深入理解命名空间 166
7.3.2 向样式表中添加扩展函数 167
7.3.3 支持IE之外的其他浏览器 169
7.4 使用命名模板 170
7.5 使用XSLT生成JavaScript 172
7.5.1 XSLT参数 174
7.5.2 空白和模式 174
7.5.3 onelinehtml模板 176
7.5.4 完成页面 177
7.5.5 在Mozilla中生成JavaScript 178
7.6 XSLT提示和问题解决方法 179
7.6.1 处理空白 179
7.6.2 在XSLT中使用HTML实体 181
7.6.3 检查浏览器类型 181
7.6.4 利用现有成果 182
7.6.5 XSLT最佳实践 182
7.7 小结 182
第8章 在浏览器中编写脚本 183
8.1 W3CXML DOM 183
8.1.1 主要的DOM接口 184
8.1.2 MSXML提供的额外功能 192
8.2 浏览器对W3C DOM的支持 194
8.2.1 使用xDOM封装库 195
8.2.2 xDOM注意事项 198
8.3 使用JavaScript操作DOM 199
8.3.1 创建DOM文档对象和装载XML 200
8.3.2 XSLT操作 202
8.3.3 获取原始XML内容 204
8.3.4 操作DOM 204
8.4 实际应用 207
8.4.1 理解应用程序 207
8.4.2 代码详细介绍 208
8.4.3 处理大XML文档 212
8.5 小结 213
第9章 在浏览器脚本中使用Ajax方法 214
9.1 理解Ajax 214
9.1.1 解释Ajax组件的作用 215
9.1.2 XMLHttpRequest对象 216
9.2 汇总 223
9.2.1 使用XMLHttpRequest对象进行用户名验证 223
9.2.2 使用Ajax方法的通信录 225
9.3 使用跨浏览器的库 230
9.4 其他Ajax框架和工具包 232
9.4.1 Backbase 232
9.4.2 Bindows 232
9.4.3 Dojo 232
9.4.4 Interactive Website Framework 232
9.4 5 qooxdoo 232
9.5 对Ajax的批评 232
9.5.1 提供视觉提示 233
9.5.2 更新界面 233
9.5.3 预加载数据 233
9.5.4 提供状态链接和启用返回按钮 234
9.6 Ajax最佳实践和设计原则 234
9.6.1 最小化服务器流量 234
9.6.2 使用标准界面方法 235
9.6.3 使用包装或库 235
9.6.4 合理使用Ajax 235
9.7 小结 235
第10章 用Flash显示XML 236
10.1 XML类 237
10.1.1 加载XML文档 237
10.1.2 XML类 239
10.1.3 XMLNode类 240
10.2 在Flash中加载和显示XML内容 243
10.2.1 在Flash中更新XML内容 245
10.2.2 从Flash中发送XML内容 249
10.3 使用XMLConnector组件 249
10.3.1 加载XML文档 250
10.3.2 数据绑定 251
10.3.3 使用数据组件更新XML内容 253
10.4 Flash安全 254
10.5 小结 254
第11章 服务器端XML 255
11.1 服务器端与客户端的XML处理过程 255
11.2 服务器端语言 256
11.2.1 ASP.NET 256
11.2.2 PHP 258
11.3 简单范例 260
11.3.1 XML文档 260
11.3.2 转换XML 260
11.3.3 添加新的DVD 267
11.3.4 修改已有的DVD 273
11.3.5 删除DVD 279
11.4 小结 281
第12章 实例:用.NET开发XML应用程序 282
12.1 理解应用程序 282
12.1.1 设置环境 283
12.1.2 新闻应用程序的组件 284
12.2 小结 308
第13章 实例:使用PHP开发XML应用程序 309
13.1 理解应用程序 309
13.1.1 设置环境 309
13.1.2 天气网站应用程序的各个部分 314
13.2 小结 337