当前位置:早雪网网络学院编程文档XML技术 → 电子商务应用体系结构分析

电子商务应用体系结构分析

减小字体 增大字体 作者:未知  来源:从互联网收集并转载  发布时间:2005-2-10 21:48:02
作者:胡朝晖  

我们这里来讨论一个完整的基于Internet的销售系统的构建,假设你是一个系统的设计者,你需要设计一个系统在最终客户、商品提供者和商品运送者之间建立桥梁,也就是说最终客户可以通过网络找到相应的商品提供者和运送者并下订单,以后所有的事情就由系统负责解决,比如把订单分别发送给商品提供者和商品运送者,并且接受它们要求更新和维护系统数据的请求。对这么一个系统,我们还有如下的一些要求。

  1. 它必须是一个通用的程序能够使用各种类型的数据。

  2. 它可以很方便的添加新的商品

  3. 供应商之间可以采用不同的硬件和软件平台进行通讯

  4. 完全基于浏览器实现

  实际上,在系统包括两种类型的供应商和各种客户,这两种类型是数据提供者和订货完成者。作为数据提供者,它关心网站的内容,比如,一个数据提供者负责提供一个可以出售的书籍的目录。他需要保证来自不同出版社的数据是同步的、最新的和正确无错误的。订货完成者需要确保货物被发送到客户处,这包括确定被订购的货物是否在仓库中有货、管理运货过程,把货物交到用户手中。作为客户的角色是当他们浏览网站的时候,需要找到合适的供应商和货物发运商并下订单。下面是系统的体系结构图:

在构建系统的时候,我们需要注意以下几点。

  1. 需要在客户、数据提供者和订货完成者之间提供一个统一的术语的用法

  2. 不管合作伙伴使用什么样的硬件或者软件都能够进行通讯

  因为实际上所有合作伙伴之间的通讯都是通过XML文档来进行的,而且XML标准是和软硬件无关的,所以只要双方都基于XML标准来定义数据的话,他们之间的信息交换就可以独立于不同的软硬件环境。

  在构建了系统的体系结构以后,我们需要来定义XML文档的数据结构,我们需要确定的XML文档有以下几种:

  1 对信息内容的请求,发送给数据提供者(比如用XML列出所有的书籍)

  2 站点信息内容内容,来自于数据提供者(比如这是用XML列出的所有的书籍)

  2 运货指令,发送给订单完成者(比如把这些书发送给令狐冲先生)

  2 运货确认,来自于订单完成者(比如,令狐冲先生将能够收到他订的三本书中的两本)

  当文档定义完成以后,下一步就是对需要交换的信息进行处理。当然,对XML文档内容的定义是关键的,它确保了所有的合作伙伴能够阅读并理解其他合作伙伴发送过来的内容。实际上,DTD提供了对文件格式进行定义的机制,我们可以通过XML解析器对文档合法性(validity)的检查来确认它是否符合DTD标准。当然另外一种选择是采用Schema来定义文档。这里我们决定采用DTD标准来定义文档格式,在决定采用DTD定义文档格式以后,你还可以决定是采用标准的DTD(在公共领域已经发表的关于某一行业数据交换的标准的DTD)还是创建自己的DTD。当然标准的DTD相对结构比较复杂,如果你的应用相对比较简单的话,你可以创建自己的DTD。需要注意的是,当你创建完DTD以后,你需要让你的所有合作伙伴都遵守这个标准。这里我们采用自己建立DTD标准的形式。

  我们建立的DTD标准如下所示:

  <?xml version="1.0" encoding="GB2312"?>
  <!-- edited with XML Spy v3.5 NT (http://www.xmlspy.com) by HZH (worldcompany) -->
  <!ELEMENT 图书集合 (书+)>
  <!ELEMENT 书 (标题, 作者, 价格)>
  <!ELEMENT 标题 (#PCDATA)>
  <!ELEMENT 作者 (#PCDATA)>
  <!ELEMENT 价格 (#PCDATA)>
  <!ATTLIST 书 id ID #REQUIRED>

  一个典型的书籍清单的例子如下:

  <?xml version="1.0" encoding="GB2312"?>
  <?xml-stylesheet type="text/xsl" href="displayproducts.xsl" ?>
  <!DOCTYPE 图书集合 SYSTEM "B2BDTD.dtd">
  <图书集合>
  <书 id="S001">
  <标题>ATL开发指南</标题>
  <作者>Tom Armstrong</作者>
  <价格>56</价格>
  </书>
  <书 id="S002">
  <标题>Inside Server-Based Application</标题>
  <作者>Douglas J.Reilly</作者>
  <价格>98</价格>
  </书>
  <书 id="S003">
  <标题>Understanding and Programming COM+</标题>
  <作者>Robert J.Oberg</作者>
  <价格>55</价格>
  </书>
  </图书集合>

其显示结果如下:


1 2 页
[数据载入中...] [返回上一页] [打 印]