本书提出了一个企业应用程序问题并介绍了如何设计程序来解决该问题,旨在详细说明XML的强大功能。书中的每章都讲解了该项目设计的一部分内容,逐步引导您合理设计其解决方案。掌握这些内容后,您就能开发出更高级的XML处理方法。
本书介绍了最适合使用XML解决的各种常见业务和技术需求。此外,还深入介绍了一些日常应用程序和Web服务,并且解释了如何处理XML标记。在本书最后,您将理解如何利用XML应用程序构建功能完备的、端对端的XML解决方案。
本书主要内容
·如何与内部和外部用户共享XML数据
·如何样式化XML以用于浏览器显示
·使用XSLT(XML转换语言)联机转换XML内容的技术
·如何搜索、合并和转换XML文档
·使用XML、工作流引擎和业务过程管理系统设计企业解决方案的策略
·如何创建PDF输出和产生RSS反馈
本书读者对象:本书适合于希望掌握XML并想理解其潜在用途的程序员。
第1章 XML与企业
1.1 提出问题
1.2 分析问题
1.2.1 XML的简要历史
1.2.2 了解XML基础
1.2.3 以葡萄酒酿造厂为例使用标记
1.2.4 决定葡萄酒酿造厂的XML信息模型
1.2.5 XML解决的问题
1.3 解决方案
1.4 小结
第2章 格式良好的XML
2.1 提出问题
2.2 分析问题
2.2.1 生成格式良好的XML文档
2.2.2 介绍有效的XML
2.2.3 开发结构
2.3 解决方案
2.4 小结
第3章 为共享信息创建和分配结构
3.1 提出问题
3.2 分析问题
3.2.1 创建文档结构(信息模型)
3.2.2 在刚开始时验证结构
3.2.3 修订结构
3.3 解决方案
3.4 小结
第4章 直接显示XML
4.1 提出问题
4.1.1 在线促销产品
4.1.2 产品的相关数据
4.1.3 提取需求
4.2 分析问题
4.2.1 技术动机
4.2.2 设计的结构
4.2.3 适用的技术
4.2.4 设计结果
4.3 解决方案
4.3.1 产品线框架
4.3.2 产品数据——原始XML
4.3.3 葡萄酒列表,草案初稿
4.3.4 葡萄酒列表,修改后的草案
4.3.5 最后的修改
4.4 小结
第5章 联机转换XML内容
5.1 提出问题
5.1.1 介绍综合视图
5.1.2 相关的葡萄酒数据
5.1.3 目标
5.2 分析问题
5.2.1 技术动机
5.2.2 设计的结构
5.2.3 适用的技术
5.2.4 设计结果
5.3 解决方案
5.3.1 产品数据:原始的XML
5.3.2 联机数据表
5.3.3 联机数据表,第二个草案
5.3.4 最后的修改
5.4 小结
第6章 呈现XML到打印输出
6.1 提出问题
6.1.1 显示高度逼真的图像
6.1.2 目标
6.2 分析问题
6.2.1 设计的结构
6.2.2 适用的技术
6.2.3 设计结果
6.3 解决方案
6.3.1 产品数据——页面布局
6.3.2 葡萄酒小册子格式化对象
6.4 小结
第7章 面向顾客
7.1 提出问题
7.2 分析问题
7.2.1 xml:lang属性
7.2.2 实体
7.2.3 xml.lang的XPath功能
7.2.4 相关的XML数据
7.2.5 适用技术
7.3 解决方案
7.3.1 确定转换参数
7.3.2 准备阶段
7.3.3 查找表
7.3.4 筛选
7.3.5 改进
7.3.6 特定领域语言
7.3.7 更多资源
7.4 小结
第8章 搜索与合并XML文档
8.1 提出问题
8.2 分析问题
8.2.1 XQuery的工作方式
8.2.2 一些可选工具
8.2.3 XQuery概念
8.3 解决方案
8.4 小结
第9章 将XML与其他数据集成
9.1 提出问题
9.2 分析问题
9.2.1 用SQL/XML从关系数据中创建XML
9.2.2 XQuery和关系数据
9.2.3 理解原生 XML与增强XML的关系数据库
9.2.4 支持XML扩展的SQL
9.3 解决方案
9.3.1 从关系数据中生成XML
9.3.2 在XQuery查询内包含关系数据
9.3.3 在SQL查询中包含XML
9.4 小结
第10章 转换业务文档
10.1 提出问题
10.1.1 转换XML目录
10.1.2 转换其他业务文档
10.2 分析问题
10.2.1 自定义软件解决方案
10.2.2 通用语言
10.2.3 行业标准
10.3 解决方案
10.3.1 自定义应用程序
10.3.2 转换表格
10.3.3 XML管道
10.3.4 管道实现
10.4 小结
第11章 利用Web服务和联合使用数据
11.1 提出问题
11.2 分析问题
11.2.1 理解Web服务
11.2.2 Web服务以及万维网
11.2.3 RSS
11.2.4 REST Web服务
11.2.5 SOAP Web 服务标准
11.3 解决方案
11.3.1 集成RSS feed
11.3.2 从Web应用程序中使用Amazon Web服务
11.3.3 将eBay Web服务与库存系统集成
11.3.4 使用合作者Web 服务
11.4 小结
第12章 提供Web服务
12.1 提出问题
12.2 分析问题
12.2.1 RSS feed
12.2.2 创建REST风格的服务
12.2.3 SOAP/WSDL Web服务
12.2.4 面向服务的体系结构
12.2.5 互操作性
12.3 解决方案
12.4 小结
第13章 联结目录
13.1 提出问题
13.1.1 联结结构化关系数据
13.1.2 联结XML文档
13.2 分析问题
13.2.1 合并XML数据:Big Bang方法与Wave方法
13.2.2 保证来自每个数据源的内容
13.2.3 选择合并点
13.3 解决方案
13.3.1 数据库集成
13.3.2 应用程序集成
13.3.3 面向服务的体系结构
13.3.4 内容集成
13.4 小结
第14章 集成和自动化业务处理
14.1 提出问题
14.1.1 合作关系的价值主张
14.1.2 集成数据和系统所面临的挑战
14.1.3 业务过程集成和工作流
14.1.4 业务过程集成
14.2 分析问题
14.2.1 业务过程再设计
14.2.2 用于业务过程集成的模式
14.2.3 平衡用于过程集成的技术
14.3 解决方案
14.3.1 葡萄酒酿造厂操作
14.3.2 供应链
14.3.3 集成和自动化的益处
14.4 小结
附录A 工具
附录B 额外阅读材料
附录C 在线资源
术语表
如果您正在阅读本书,您可能正准备使用可扩展标记语言(Extensible Markup Language,XML),并在寻求一些指导。
本书介绍了XML以及在为商业问题设计基于XML的解决方案时所遇到的相关问题。本书以案例研究的方式展开讨论,每一章针对主项目的一部分进行讲解,并设计了一个解决方案。这样,在本书结束时,您将能使用XML来设计商业问题的各个方面。
在对XML技术进行概括介绍之后,本书研究了各种使用XML解决典型的商业和技术需求的方案。书中讨论了如何处理XML标记——更具体地说,是一种用于日常应用软件和网络服务的标记。通常用可用资源来表示XML标记的概念,但如何通过这些资源获取可用信息,如何通过XML传递有用信息呢?本书强调结构化标记的基本原理,并使用XSLT和脚本等常用技术来构建示例。对于XML模式语言的讨论仅限于在示例框架中比较和对照主要方法。
本书对开发XML应用程序给予了详细指导,其中一些应用程序甚至对于您来说是完全陌生的。这些应用程序包括XML 1.0,以及与XSLT、XQuery和XPath等相关的技术。本书的讨论重点是如何使用XML实现企业的信息共享。
XML初级读本有助于初学者快速入门。然后逐步增加深度,每一部分都比前一部分涉及更深层次的XML。对XML基础知识较熟悉的读者可以直接跳到XML的具体应用部分。
本书读者对象
本书适用于想要掌握XML使用方法的初学者。如果您是一位商业管理人员或者分析人员,可能想要掌握一些XML知识来作决策。也可能您是一位对XML感到十分陌生的商家,理解XML的相关知识已超出您的职业范围,您最初并不需要使用它,但现在已成为不可避免的需要。这时就需要对不同的XML领域有一个较好的了解。最重要的是,您必须对该主题比较熟悉。
也许您是一个正在找工作的英语专业的学生,一个转到结构编辑处理部门的技术作者,一个长久没有接触编程的编程人员,一个技术不够熟练的软件配置管理员,一个只懂得PHP和HTML标记的网页制作人员,一个没有完全掌握工时配置的主管人员,或者是一个负责培训的公司职员——不管您属于哪一类从业者,本书都将帮助您掌握XML标记的概念,指导您使用XML功能解决实际问题。
本书组织结构
本书前3章介绍了XML概念。第1章初步介绍了XML,对与合作伙伴共享XML数据的问题进行了概述。本书中的项目都涉及到了新酿酒厂示例。
第2章讲解了格式良好和有效的XML,讨论了验证酿酒厂数据的计划。在末尾部分进一步细化了信息模型。
第3章介绍了如何创建和发布细化后的结构,使内外部都能使用酿酒厂数据。
接下来的4章为显示和发布技术提供了坚实的基础。第4章介绍如何呈现XML,如何为浏览器显示设计样式。您可以在自己的计算机上运行示例。
第5章进一步讨论样式表,使用XML转换语言,即XSL,为在线转换XML内容提供数据。
第6章介绍如何显示XML及如何打印输出。本章中使用XSL-FO技术产生可打印的数据表单,并介绍了将XML转换为PDF的常用方法。
第7章如何将项目面对顾客,以及如何处理商标和个别发布问题。并探讨了数据处理、排序和检索问题。
第8~10章介绍操作策略。第8章介绍如何查找和合并XML文档,另外还介绍了XQuery。
第9章介绍了XML与其他商业数据的集成,并讨论了关系数据和数据库的问题。
第10章讲解转换XML文档的不同策略,并为转换常用商业文档提供示例。
最后4章着眼于企业集成战略,从介绍Web服务的第11章开始,您将学习一些访问Web服务和合并RSS反馈到网站中的常见需求。
第12章介绍如何为酿酒厂目录的访问者提供Web服务。
第13章讲解了策略和组合XML文档的数据合并点。
最后,第14章介绍了使用XML、工作流引擎和业务过程管理系统来设计企业解决方案的策略。
另外,还包括3个附录和1个术语表,以帮助您完成学习过程。附录A描述了处理XML的工具,附录B提供了您可能会感兴趣的额外参考资料,附录C显示了可能会用到的XML资源与链接。
使用本书需要的工具
要使用设计和处理XML的基本原则,需要一个文本编辑工具。随着XML的深入使用,会需要一个数据库、其他编辑工具、文件管理工具、分析器等。本书中使用了不同的软件工具。这些工具在附录A中有描述。
源代码
在练习本书中的示例时,读者可以手动输入所有的代码,也可以从本书合作站点中下载源代码。本书中的所有源代码均可在www.wrox.com或www.tupwk.com.cn/downpage站点下载。登录Web站点www.wrox.com后,只需找到本书的标题(可以使用Search功能或标题列表)并单击显示本书详细内容的页面上的Download Code链接即可获取源代码。
由于很多书籍的名称类似,因此通过ISBN查找可能会更容易一些,本书的ISBN号是0-471-79119-9。
在下载源代码之后,只需使用最喜欢的解压缩工具对其进行解压缩即可。另一个途径是到Wrox代码下载主页面http://www.wrox.com/dynamic/books/download.aspx,这里有本书及其他所有Wrox书籍的源代码。
勘误表
我们尽最大努力确保本书在叙述和代码中没有错误。然而,没有人是完美的,错误时有发生。如果您在本书中发现什么错误,例如拼写错误或编码错误,我们将会非常感谢您能反馈给我们。通过将错误添加到勘误表中,您可以为其他读者节约数小时的时间,也可以帮助我们提供更高质量的书籍。
请给wkservice@tup.tsinghua.edu.cn发电子邮件,我们就会检查您的信息,如果是正确的,我们将在本书的后续版本中采用。
要找到本书的勘误表,可以登录Web站点http://www.wrox.com,搜索本书的书名或者使用标题列表。然后,在本书的详细内容页面上,单击Book Errata链接。在这个页面上读者可以查看到所有已提交的、由Wrox的编辑发布的错误信息。也可以在www.wrox.com/ misc-pages/booklist.shtml页面找到一个完整的标题列表,这个列表包含了每本书的勘误表链接。
无封面