XML入门经典(第4版)

XML入门经典(第4版)
作 者: 亨特 拉夫特 福思特 吴文国
出版社: 清华大学出版社
丛编项:
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: XML
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《XML入门经典(第4版)》作者简介

内容简介

创建XML文档必须遵循的规则,如何创建和使用XML标记,提取信息并将其换为HTML或其他格式的方法,存储和读取XML文档的策略,如何使用DOM和SAM操作XML文档,使用Ajax技术、RSS和SOAP提升XML通信性能的技巧,如何使用CSS为XML文档添加可视化效果。《XML入门经典(第4版)》读者对象:《XML入门经典(第4版)》适用任何对XML用法感兴趣的程序员使用,当然也适合广大的XML初学人员入门。如果具有一定的Web编程或数据转换经验,阅读起来将更为容易。

图书目录

第Ⅰ部分 引言.

第1章 什么是XML

1.1 数据、文件和文本

1.1.1 二进制文件

1.1.2 文本文件

1.1.3 标记语言的简史

1.2 什么是XML

1.2.1 XML能给我们带来什么好处

1.2.2 HTML和XML——苹果与鲜艳可口的苹果

1.2.3 信息的层级结构

1.2.4 什么是文档类型

1.2.5 究竟什么是文档类型

1.3 XML标准的诞生

1.3.1 万维网联盟

1.3.2 XML的组成

1.4 XML的应用

1.4.1 减轻服务器负荷

1.4.2 Web站点内容

1.4.3 分布式计算

1.4.4 电子商务

1.5 小结

1.6 习题

第2章 良构的XML文档

2.1 解析XML文档

2.2 标签、文本和元素

2.3 属性

2.4 注释

2.5 空元素

2.6 XML声明语句

2.6.1 version属性

2.6.2 encoding属性

2.6.3 standalone属性

2.7 处理指令

2.8 非法的PCDATA字符

2.8.1 转义字符

2.8.2 CDATA文本段

2.9 XML中的错误

2.10 小结

2.11 习题

第3章 XML名称空间

3.1 为什么需要名称空间

3.1.1 使用前缀

3.1.2 为什么XML不直接使用这些前缀

3.2 XML名称空间的运行机制

3.2.1 默认的名称空间

3.2.2 不同的符号就一定不同吗

3.2.3 名称空间和属性

3.3 理解URI

3.3.1 URL

3.3.2 URN

3.3.3 为什么用URL而不是URN表示名称空间

3.3.4 名称空间URI的真实含义

3.3.5 RDDL

3.4 什么时候使用名称空间

3.5 小结

3.6 习题

第Ⅱ部分 验 证

第4章 文档类型定义

4.1 运行实例

4.1.1 准备工作

4.1.2 文档类型声明

4.2 词汇共享

4.3 解剖一个DTD

4.3.1 元素声明

4.3.2 属性声明

4.3.3 实体

4.4 开发DTD定义

4.5 DTD的局限性

4.5.1 DTD语法

4.5.2 XML名称空间

4.5.3 缺少数据分类

4.5.4 受限的内容模型描述

4.6 小结

4.7 习题

第5章 XML Schema

5.1 XML Schema的优点

5.1.1 XML Schema使用XML语法

5.1.2 XML Schema支持名称空间

5.1.3 XML Schema的数据类型

5.1.4 XML Schema的内容模型

5.2 我们还需要DTD吗

5.3 XML Schema

5.3.1 XML Schema文档

5.3.2 实例运行

5.3.3 (schema)声明

5.3.4 (element)声明

5.3.5 (complexType)声明

5.3.6 (group)声明

5.3.7 内容模型

5.3.8 (attribute)声明

5.3.9 (attributeGroup)声明

5.3.10 用简单内容和属性创建元素

5.3.11 数据类型

5.3.12 (simpleType)声明

5.4 创建一个来自多个文档的模式

5.4.1 (import)声明

5.4.2 (include)声明

5.5 XML Schema的开发文档

5.5.1 注释

5.5.2 来自其他名称空间的属性

5.5.3 注解

5.6 小结

5.7 习题

第6章 RELAX NG

6.1 XML与紧凑型语法

6.2 RELAX NG样式

6.3 样式和语法的组合、重用

6.3.1 命名样式

6.3.2 组合命名的样式定义

6.3.3 用include指令实现模式的模块化

6.3.4 重定义插入的命名样式

6.3.5 用notAllowed属性删除样式

6.3.6 扩展和限制

6.3.7 嵌套语法

6.4 RELAX NG的其他特性

6.4.1 名称空间

6.4.2 名称类

6.4.3 数据类型

6.4.4 表样式

6.4.5 注释与分区

6.5 资源链接

6.6 小结

6.7 习题

第Ⅲ部分 处 理 过 程

第7章 XPath

7.1 XML文档的表示方法

7.2 XML文档的模型

7.3 可视化XPath

7.3.1 理解上下文

7.3.2 什么是XPath的结点

7.3.3 XPath 1.0的类型

7.4 简写语法和详写语法

7.5 XPath 1.0轴

7.5.1 子轴

7.5.2 属性轴

7.5.3 祖先轴

7.5.4 祖先自身轴

7.5.5 子孙轴

7.5.6 子孙自身轴

7.5.7 后继轴

7.5.8 后继兄弟轴

7.5.9 名称空间轴

7.5.10 双亲轴

7.5.11 前驱结点

7.5.12 前驱兄弟轴

7.5.13 自身轴

7.6 XPath 1.0的函数

7.6.1 布尔函数

7.6.2 结点集函数

7.6.3 数值函数

7.6.4 字符串函数

7.7 谓词

7.8 XPath表达式的结构

7.9 XPath 2.0

7.9.1 改进的XPath 数据模型

7.9.2 W3C XML Schema 数据类型

7.9.3 XPath 2.0新增的函数

7.9.4 XPath 2.0特性

7.10 小结

7.11 习题

第8章 XSLT

8.1 什么是XSLT

8.1.1 重构XML

8.1.2 显示XML文档

8.2 XSLT处理器的处理过程

8.3 实例运行

8.3.1 Saxon XSLT 处理器简介

8.3.2 Saxon XSLT 处理器的安装

8.4 过程性语言与描述性语言

8.4.1 过程性语言

8.4.2 描述性语言

8.5 XSLT的基本元素

8.5.1 (xsl:stylesheet)元素

8.5.2 (xsl:template)元素

8.5.3 (xsl:apply-templates)元素..

8.6 从源树中读取信息

8.6.1 (xsl:value-of)元素

8.6.2 (xsl:copy)元素

8.6.3 (xsl:copy-of)元素

8.7 用(xsl:output)元素控制输出

8.8 条件处理

8.8.1 (xsl:if)元素

8.8.2 (xsl:choose)元素

8.9 (xsl:for-each)元素

8.10 (xsl:sort)元素

8.11 XSLT模式

8.12 XSLT变量和参数

8.13 命名模板和(xsl:call-template)元素

8.14 XSLT函数

8.15 XSLT 2.0

8.15.1 XSLT 2.0的分组元素

8.15.2 非XML输入源和字符串处理

8.15.3 多文档输出

8.15.4 用户自定义函数

8.15.5 xsl:value-of的变化

8.16 小结

8.17 习题

第Ⅳ部分 数 据 库

第9章 XML查询语言——XQuery

9.1 为什么出现XQuery

9.1.1 历史因素

9.1.2 技术因素

9.1.3 现状

9.2 XQuery 工具

9.2.1 Saxon简介

9.2.2 X-Hive.com在线帮助

9.2.3 X-Hive数据库

9.2.4 Tamino数据库

9.2.5 微软的SQL Server 2005

9.2.6 Oracle

9.3 XQuery实例

9.3.1 输入函数

9.3.2 检索结点

9.3.3 元素构造器

9.3.4 XQuery序体

9.3.5 XQuery序体(续)

9.3.6 计算构造器

9.3.7 语法

9.4 XQuery数据模型

9.4.1 与XPath 2.0和XSLT 2.0共享的数据模型

9.4.2 结点类型

9.4.3 结点集序列

9.4.4 文档顺序

9.4.5 项与结点的比较

9.4.6 XQuery的数据类型

9.4.7 XQuery的轴

9.5 XQuery的表达式

9.6 XQuery函数

9.6.1 concat()函数

9.6.2 count()函数

9.7 在XQuery查询命令里使用参数

9.8 用户自定义函数

9.9 展望

9.9.1 升级功能

9.9.2 全文搜索

9.10 小结

9.11 习题

第10章 XML与数据库

10.1 对有效的XML数据存储的需求

10.1.1 日益增大的XML数据量

10.1.2 比较基于XML的数据和关系数据

10.2 存储XML的方法

10.2.1 把XML保存到文件系统里

10.2.2 XML与传统数据库

10.2.3 原生XML数据库

10.3 原生XML数据库的使用

10.3.1 获取并安装eXist

10.3.2 交互操作eXist

10.4 XML在商业化的RDBMS数据库里的作用

10.4.1 SQL Server 2000的XML功能

10.4.2 支持Web服务

10.5 在开放源代码RDBMS中使用XML

10.5.1 安装MySQL

10.5.2 在MySQL里添加信息

10.5.3 MySQL查询命令

10.5.4 用MySQL更新XML数据

10.5.5 在MySQL里使用XML

10.5.6 客户端对XML的支持

10.6 选择一个存储XML的数据库

10.7 未来展望

10.8 小结

10.9 习题

第Ⅴ部分 程 序 设 计

第11章 文档对象模型(DOM)

11.1 XML DOM的作用

11.2 W3C与文档对象模型

11.3 显示DOM结点的两种方法

11.4 运行实例的工具软件

11.5 结点对象

11.5.1 Node对象的属性

11.5.2 Node对象的方法

11.5.3 装入XML文档

11.5.4 文本结点的效果

11.5.5 NamedNodeMap对象

11.5.6 NodeList对象

11.5.7 DOMException对象

11.6 Document接口

11.7 在InfoPath 2007中应用XML DOM

11.8 小结

11.9 习题

第12章 XML简单API

12.1 SAX的本质和作用

12.1.1 SAX简史

12.1.2 从哪里下载SAX软件

12.1.3 设置SAX

12.2 接收SAX事件

12.2.1 ContentHandler接口

12.2.2 ErrorHandler接口

12.2.3 DTDHandler接口

12.2.4 EntityResolver接口

12.2.5 特性与属性

12.2.6 扩展接口

12.3 SAX的利与弊

12.4 消费者、生产者和过滤器

12.5 其他语言

12.6 小结

12.7 习题

第Ⅵ部分 通 信

第13章 RSS、Atom和内容聚合

13.1 聚合与元数据

13.1.1 聚合系统

13.1.2 RSS的起源

13.1.3 RSS-DEV和RSS 1.0

13.1.4 UserLand与RSS 2.0

13.1.5 Atom格式

13.2 新闻feed

13.2.1 新闻阅读器

13.2.2 数据质量

13.3 一个简单的聚合器

13.3.1 feed模型

13.3.2 程序流程

13.3.3 实现程序

13.3.4 用XSLT转换RSS格式

13.4 几个有用的网站地址

13.5 小结

13.6 习题

第14章 Web服务

14.1 什么是远程过程调用

14.2 RPC协议

14.2.1 DCOM

14.2.2 IIOP

14.2.3 Java RMI

14.3 新的RPC协议——Web服务

14.3.1 XML-RPC

14.3.2 网络传输

14.4 使用REST规范

14.5 Web服务的堆栈技术

14.5.1 SOAP

14.5.2 WSDL

14.5.3 UDDI

14.5.4 相关规范

14.6 小结

14.7 习题

第15章 SOAP和WSDL

15.1 SOAP基础

15.2 在Windows 2003、XP和2000操作系统里运行实例

15.3 RPC新协议——SOAP

15.3.1 使用REST

15.3.2 基本的SOAP消息

15.3.3 比较复杂的SOAP交互

15.4 定义Web服务语言——WSDL

15.4.1 (definitions)

15.4.2 (types)

15.4.3 (messages)

15.4.4 (portTypes)

15.4.5 (binding)

15.4.6 (soap:body)

15.4.7 (service)

15.4.8 其他绑定方式

15.5 小结

15.6 习题

第16章 Ajax

16.1 异步更新的最初尝试

16.1.1 微软与Mozilla之间的较量

16.1.2 跨浏览器解决方案

16.2 基本的发送步骤

16.3 服务器的传输和处理过程

16.3.1 JSON

16.3.2 信用卡验证程序

16.3.3 AutoSuggest下拉框

16.4 服务器端的代理

16.5 小结

16.6 习题

第Ⅶ部分 显 示

第17章 样式表(CSS)

17.1 为什么使用样式表

17.2 CSS简介

17.2.1 CSS属性

17.2.2 继承

17.2.3 把样式表插入到XML文档

17.2.4 选择符

17.3 CSS用于XML文档的布局

17.3.1 盒模型

17.3.2 样式表的定位

17.4 设计表格数据

17.5 XML文档中的链接

17.5.1 Firefox对XLink的支持

17.5.2 用XHTML名称空间建立超链接

17.6 在XML文档里插入图像

17.7 通过样式表给文档添加内容

17.8 属性内容

17.8.1 属性选择符

17.8.2 在XML文档里使用属性值

17.9 小结

17.10 习题

第18章 XHTML语言

18.1 样式与内容相互独立

18.2 XHTML 1.x

18.2.1 XHTML的文档类型定义

18.2.2 设计XHTML文档的基本变化

18.2.3 格式化XHTML文档

18.2.4 严格型文档处理速度更快

18.2.5 XHTML工具

18.2.6 验证XHTML文档

18.2.7 文档验证存在的陷阱

18.2.8 MIME类型存在的陷阱

18.3 XHTML模块化

18.3.1 模块实现程序

18.3.2 XHTML 1.1

18.3.3 XHTML基本型

18.4 XHTML的未来趋势

18.5 小结

18.6 习题

第19章 可缩放矢量图形(SVG)

19.1 什么是SVG

19.1.1 可缩放、矢量和图形

19.1.2 启动SVG

19.1.3 SVG工具软件

19.2 SVG初步

19.2.1 视图和单位

19.2.2 画家模型

19.2.3 组

19.2.4 坐标变换

19.2.5 路径命令

19.2.6 图像

19.2.7 文本

19.2.8 注释(Comments)、说明(Annotation)和元数据(Metadata)

19.2.9 脚本设计

19.2.10 网站上的SVG

19.3 Tangram——一个实例程序

19.3.1 XHTML包装器

19.3.2 SVG图形

19.3.3 Tangram脚本程序

19.4 阅读材料

19.5 小结

19.6 习题

第20章 XForms

20.1 XForms对HTML表单的改进

20.2 XForms工具

20.3 一个演示性的XForms实例

20.4 XForms表单控件

20.4.1 xforms:input元素

20.4.2 xforms:secret元素

20.4.3 xforms:textarea元素

20.4.4 xforms:output元素

20.4.5 xforms:upload元素

20.4.6 xforms:range元素

20.4.7 xforms:trigger元素

20.4.8 xforms:submit元素

20.4.9 xforms:select元素

20.4.10 xforms:select1元素

20.5 XForms实例的约束条件

20.5.1 xforms:bind元素

20.5.2 在XForms中使用W3C

XML Schema

20.5.3 Schema或Bind元素:两者择其一

20.6 XForms事件

20.7 XForms动作模型

20.8 其他方法

20.8.1 微软的InfoPath

20.8.2 Adobe LiveCycle表单设计器

20.8.3 HTML表单

20.9 小结

20.10 习题

第Ⅷ部分 案 例 研 究

第21章 案例研究——抵押贷款计算器

21.1 抵押贷款计算

21.2 准备工作

21.3 在线贷款计算器

21.3.1 嵌入Web计算服务

21.3.2 用SVG改善贷款计算器的外观

21.3.3 给主页添加框架

21.4 小结

第22章 案例研究——基于Ruby on Rails架构的抵押贷款计算器

22.1 抵押计算器

22.2 准备工作

22.3 建立项目

22.4 建立一个在线贷款计算器

22.4.1 开发Web主页

22.4.2 嵌入Web计算服务

22.4.3 添加Ajax的支持

22.4.4 用SVG改进显示效果

22.5 小结

附录A 习题参考答案

附录B XPath参考

附录C XSLT参考

附录D XML文档对象模型

附录E XML Schema元素与属性

参考手册

附录F XML Schema数据类型

附录G SAX 2.0.2参考手册