《XML示例程序导学 第2版》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:Benoit Marchal著;杨洪涛等译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2002
  • ISBN:7302058121
  • 页数:411 页
图书介绍:本书采用概念与实例紧密结合的方法,通过对示例代码的解析,使读者在编程过程中体会XML强大的WEB开发功能。

第1章 XML概述 1

1.1 简介 1

1.2 本书的适用范围 3

1.3 XML初步 3

1.3.1 没有预定义的标记 4

1.3.2 更严格的语法 4

1.4 文档结构初步 5

1.5 标记语言的历史 8

1.5.1 标记 9

1.5.2 过程标记 9

1.5.3 通用编码 10

1.5.4 标准通用标记语言 12

1.5.5 超文本标记语言 13

1.5.6 可扩展标记语言 18

1.6 XML的应用 20

1.6.1 文档应用 20

1.6.2 数据应用 21

1.7 伙伴标准 24

1.7.1 XML名称空间 24

1.7.2 样式表 25

1.7.3 DOM和SAX 26

1.8 XML软件 27

1.8.1 XML浏览器 27

1.7.4 XLink和XPointer 27

1.8.2 XML编辑器 28

1.8.3 XML解析器 28

1.8.4 XSL处理器 29

1.9 下一步 29

第2章 XML语法 30

2.1 XML基础语法 30

2.1.1 XML标记初步 30

2.1.2 元素的起始和结束标记 32

2.1.3 XML中的名称 33

2.1.4 属性 34

2.1.6 元素嵌套 35

2.1.5 空元素 35

2.1.7 根 37

2.1.8 XML声明 37

2.2 高级主题 38

2.2.1 注释 39

2.2.2 Unicode 39

2.2.3 实体 40

2.2.4 特殊属性 42

2.2.5 处理指令 42

2.2.6 CDATA节 43

2.3 XML的常见问题 43

2.3.1 代码缩进 44

2.3.2 为什么要使用结束标记 44

2.3.3 XML和语义 46

2.4.1 忘记结束标记 47

2.4 4种常见错误 47

2.4.2 忘记XML是区分大小写的 48

2.4.3 在元素名称中引入空格 48

2.4.4 忘记属性值使用引号 48

2.5 XML的两种应用 48

2.5.1 发布 49

2.5.2 电子商务 50

2.6 XML编辑器 52

2.7 下一步 54

3.1 名称空间所解决的问题 55

第3章 XML名称空间 55

3.2 名称空间 59

3.2.1 名称空间的名称 60

3.3 URI 61

3.3.1 URI的需求 61

3.3.2 URL和URN 62

3.3.3 名称是什么 63

3.3.4 注册域名 64

3.4 作用域 65

3.5 数字签名:一个名称空间实例 66

3.6 下一步 69

4.1 DTD和XML模式 70

第4章 XML模型 70

4.2 DTD语法 71

4.2.1 元素声明 73

4.2.2 加号、星号和问号的秘密 73

4.2.3 逗号和竖线的秘密 73

4.2.4 关键字 74

4.2.5 混合内容 74

4.2.6 无二义模型 74

4.2.7 属性 75

4.3 DTD和文档的关系 76

4.3.1 验证文档 77

4.4.1 内部子集和外部子集 78

4.4 DTD的高级概念 78

4.3.2 为什么使用DTD 78

4.4.2 公共标识符 79

4.4.3 独立文档 80

4.4.4 实体 80

4.4.5 常规实体和参数实体 80

4.4.6 内部实体和外部实体 81

4.4.7 已解析实体、未解析实体和符号 82

4.4.8 条件节 83

4.5 模式语法 83

4.5.1 简单类型定义 86

4.5.2 复杂类型定义 87

4.5.3 简单内容和复杂内容 88

4.5.5 全局元素声明 89

4.5.4 混合内容 89

4.6 名称空间和模式的其他高级概念 90

4.6.1 对全局元素的引用 93

4.6.2 名称空间和文档 94

4.6.3 批注 95

4.6.4 深入全局和本地元素 96

4.6.5 名称组 97

4.7 XML文档建模 98

4.7.1 尽量避免建模 98

4.8 使用对象模型对文档建模 99

4.8.1 元素和属性 105

4.8.2 DTD和模式 106

4.9 建模:从零开始 106

4.9.1 灵活性 107

4.9.2 对XML文档建模 108

4.9.3 元素命名 110

4.10 辅助工具 111

4.11 下一步 112

第5章 XSL转换 113

5.1 为什么需要样式 113

5.1.1 CSS 113

5.2.2 XSLT的概念 114

5.2.1 Xalan 114

5.1.2 XSL 114

5.2 XSL 114

5.3 XSLT的基础知识 115

5.3.1 在浏览器中查看XML 116

5.3.2 一个简单的样式表 118

5.3.3 stylesheet元素 122

5.3.4 output元素 123

5.3.5 模板元素 123

5.3.6 XPaths 123

5.3.7 属性匹配 124

5.3.9 匹配文本和函数 125

5.3.10 处理器操作 125

5.3.8 条件匹配 125

5.4 支持不同的标记语言 128

5.4.1 WML转换 130

5.5 何时何处使用样式表 132

5.5.1 特殊提示——Internet Explorer 5.0 133

5.5.2 修改样式表 137

5.6 高级XSLT 137

5.6.1 indent参数 140

5.6.2 使用参数 140

5.6.3 在输出文档中创建特殊节点 141

5.6.4 创建目录 143

5.6.5 优先级 145

5.7 下一步 145

6.1 不使用HTML显示XML 146

第6章 XSL格式化对象和层叠样式表 146

6.2 CSS和FO基础 148

6.3 简单的CSS 149

6.3.1 注释 152

6.3.2 选择符 152

6.3.3 CSS属性 153

6.4 简单的FO 153

6.4.1 FO元素 154

6.4.2 应用样式表 156

6.4.3 FO样式表概述 159

6.5.1 流对象 161

6.5.2 属性继承 161

6.5 流对象和区域 161

6.5.3 矩形区域或方框 162

6.6 属性取值 164

6.6.1 长度 164

6.6.2 百分比 165

6.6.3 颜色 165

6.7 方框属性 166

6.7.1 边距属性 166

6.7.2 补白属性 166

6.7.3 空白属性 167

6.7.4 边框样式属性 167

6.7.5 边框宽度属性 167

6.8 文本和字体属性 167

6.8.3 字体样式和粗细 168

6.8.1 字体名称 168

6.8.2 字体大小 168

6.8.4 文本修饰 169

6.8.5 文本对齐 169

6.8.6 文本缩进和行高度 169

6.9 一些高级功能 170

6.10 何时选择何种方案 176

6.11 下一步 177

第7章 解析器和DOM 178

7.1 什么是解析器 178

7.1.1 解析器 178

7.1.2 验证解析器和非验证解析器 179

7.2.1 XML程序的结构 180

7.2 解析器和应用程序 180

7.2.2 基于对象的接口 181

7.2.3 基于事件的接口 182

7.2.4 对标准的需求 183

7.3 文档对象模型 184

7.4 DOM初步 184

7.4.1 一个DOM应用程序 185

7.4.2 DOM节点 188

7.4.3 NodeList 190

7.4.4 NamedNodeMap 190

7.4.5 Document对象 191

7.4.6 Element对象 191

7.4.8 Text对象 192

7.4.7 Attr对象 192

7.4.9 遍历元素树 193

7.4.10 一个更标准的版本 195

7.5 状态管理 198

7.5.1 维护状态的DOM应用程序 199

7.5.2 关于结构的说明 203

7.6 常见错误及解决办法 203

7.6.1 XML解析器是严格的 204

7.6.2 错误消息 204

7.6.3 XSLT的常见错误 205

7.7 DOM和Java 205

7.7.2 一个Java版本的DOM应用程序 206

7.7.1 DOM和IDL 206

7.7.3 三个主要的差别 208

7.7.4 解析器 209

7.8 应用程序中的DOM 209

7.8.1 浏览器 209

7.8.2 编辑器 214

7.8.3 数据库 214

7.9 下一步 214

第8章 另一种API:SAX 215

8.1 为什么要使用另一种API 215

8.1.1 基于对象的接口和基于事件的接口 216

8.1.2 基于事件的接口 216

8.1.3 为什么要使用基于事件的接口 219

8.2 SAX:功能强大的API 220

8.2.1 SAX初步 220

8.2.2 编译示例程序 223

8.2.3 对事件处理器的逐步分析 224

8.3 常用的SAX接口和类 226

8.3.1 主要的SAX事件 226

8.3.2 XMLReader 227

8.3.3 XMLReaderFactory 227

8.3.4 InputSource 228

8.3.5 ContentHandler 228

8.3.8 DTDHandler 229

8.3.7 Locator 229

8.3.6 Attributes 229

8.3.9 EntityResolver 230

8.3.10 ErrorHandler 230

8.3.11 SAXException 230

8.4 状态维护 231

8.4.1 分层结构 239

8.4.2 状态 239

8.4.3 转换 241

8.4.4 经验教训 242

8.5 灵活性 243

8.5.1 建立灵活性 243

8.5.2 实施对结构的要求 243

8.6 下一步 244

9.1 解析器的反向组件 245

第9章 编写XML 245

9.2 使用DOM修改文档 246

9.2.1 插入节点 249

9.2.2 保存为XML 251

9.3 Netscape对DOM的支持 251

9.4 用于创建和修改文档的DOM方法 255

9.4.1 Document 256

9.4.2 Node 256

9.4.4 Element 257

9.4.5 Text 257

9.4.3 CharacterData 257

9.5 使用DOM创建新文档 258

9.5.1 创建节点 261

9.5.2 创建根元素和Document对象 262

9.5.3 显示结果 263

9.6 使用DOM创建文档 263

9.7 不使用DOM创建文档 264

9.7.1 非DOM数据结构 268

9.7.2 编写XML 268

9.7.3 隐藏语法 269

9.7.4 从非XML数据结构创建文档 270

9.8 XML文档的其他操作 271

9.8.1 将文档发送到服务器 271

9.8.2 保存文档 272

9.9 编写文档时考虑灵活性 273

9.9.1 使用XLST支持多种XML模型 274

9.9.2 调用XSLT 277

9.9.3 为文档选择哪种结构 278

9.9.4 XSLT和自定义函数的比较 278

9.10 下一步 279

第10章 重要的XML模型 280

10.1 结构化和可扩展性 280

10.1.1 超级模型方法 281

10.1.2 模块化方法 283

10.1.3 经验教训 289

10.2 Xlink 290

10.2.1 简单链接 291

10.2.2 扩展链接 292

10.2.3 XLink和浏览器 295

10.3 XHTML 295

10.3.1 什么是XHTML 295

10.3.2 XHTML的优势 296

10.4 电子商务、XML/EDI和ebXML 297

10.4.1 何种电子商务 297

10.4.2 XML和电子商务 298

10.4.3 电子商务的先驱 299

10.4.4 经验教训 299

10.5 恰当的抽象层次 299

10.5.1 破坏性和非破坏性的转换 300

10.5.2 标记 303

10.5.3 避免太多的选项 306

10.6 属性和元素的比较 310

10.6.1 使用属性 310

10.6.2 使用元素 311

10.6.3 经验教训 312

10.7 下一步 312

第11章 n层结构和XML 313

11.1 什么是n层应用程序 313

11.1.1 客户/服务器应用程序 314

11.1.2 3层应用程序 315

11.1.3 n层 316

11.2 XCommerce应用程序 316

11.2.2 为何如此麻烦 317

11.2.1 简化 317

11.3 XML如何提供帮助 318

11.3.1 中间件 318

11.3.2 交换文件 320

11.3.3 简单对象访问协议(SOAP) 321

11.4 SOAP编程 323

11.4.1 编写一个SOAP端点 323

11.4.2 编写一个SOAP客户机 327

11.4.3 关于灵活性的阐述 329

11.5 XCommerce体系结构 330

11.5.1 Web浏览器 330

11.6 服务器端编程语言 331

11.5.4 数据库 331

11.5.2 表现层服务器 331

11.5.3 中间层 331

11.6.1 Perl 332

11.6.2 JavaScript 332

11.6.3 Python 333

11.6.4 Omnimark 333

11.6.5 Java 333

11.7 下一步 333

第12章 整合:一个电子商务实例 334

12.1 创建Xcommerce 334

12.1.1 JDK 334

12.1.2 Classpath和属性 335

12.1.3 配置文件 336

12.1.4 编译和运行应用程序 340

12.1.5 一个更简单的方案 343

12.2 第1层:数据库 344

12.3 第2层:SOAP服务 355

12.3.1 Product类 361

12.3.2 ProductDetails类 362

12.3.3 OrderLine类 364

12.4 第3层:表现层Servlet 365

12.4.1 初始化 374

12.4.2 请求处理 375

12.4.3 doMall()和doProduct() 376

12.4.4 样式表 377

12.4.5 doCheckout() 379

12.4.6 doTakeOrder() 380

12.5 工具类:字符串比较 381

12.6 下一步 381

附录A Java速成 383

A.1 正确看待Java 383

A.1.1 服务器端应用程序 384

A.1.2 JavaBean 384

A.2 下载Java工具 384

A.2.1 Java环境 385

A.2.2 XML组件 385

A.2.3 servlet引擎 386

A.2.4 数据库和JDBC 387

A.3 你的第一个Java应用程序 387

A.3.1 理解classpath 390

A.3.2 流程控制 390

A.3.3 变量 391

A.3.4 类 392

A.3.5 创建对象 392

A.3.6 访问域和方法 392

A.3.7 static 392

A.3.8 方法和参数 393

A.3.9 构造函数 393

A.3.11 JAR文件 394

A.3.10 包 394

A.3.12 导入 395

A.3.13 访问控制 395

A.3.14 注释和Javadoc 396

A.3.15 例外 397

A.4 servlet 398

A.5 你的第一个servlet 399

A.5.1 servlet程序清单 399

A.5.2 servlet描述符 401

A.5.3 WAR文件 402

A.5.4 运行示例 402

A.5.6 doGet() 404

A.5.5 继承 404

A.5.7 地区和多语言应用程序 405

A.6 Java语言的更多概念 406

A.6.1 this和super 406

A.6.2 接口和多继承 406

A.7 下一步 407

附录B DTD和XML模式简单类型 408

B.1 DTD支持的简单类型 408

B.1.1 元素简单类型 408

B.1.2 属性简单类型 408

B.2 XML模式支持的简单类型 409

B.2.1 简单类型 409

B.2.2 Facet 410