曝光台 注意防骗
网曝天猫店富美金盛家居专营店坑蒙拐骗欺诈消费者
式并作为b o d y元素的子元素出现。报头元素需要同一些相关的数据描述一起到达目的地,而b o d y元
素则是发送消息的原因。b o d y元素具有一个或多个子元素。每个子元素都是根据B i z Ta l k模式书写
的文档。一个购物车文档有超过一个这样的子文档。开发用于交互的模式决定了这些元素的内容。
下面是我们例子的主体:
程序清单1 2 - 4 9
556使用XML 高级编程
下载
我们的例子中包含了单一的文档,通过使用b l a n d _ c o _ o r d e r元素进行标记。我们已经声明了
一个命名空间以允许B i z Ta l k使主体可用。通常,你希望到B i z Ta l k的库中查找这个模式,但
B l a n d公司选择在他自己的主机上安装这个模式。
12.10.4 一个用于Wrox书店的BizTalk文档
现在我们将定义一个X M L文档的例子,该例子遵循B i z Ta l k框架版本0 . 8 1规则。我们将首先
定义一个遵循X M L数据精简模式标准( X M L - D R)的文档模式,该模式可以被存储在B i z Ta l k库
中。我们将使用该模式传送关于书的数据。
这个模式能够被用来为客户在电子商务网站或一个远程服务器请求关于特定书目的信息,
同时,也允许管理员或一个远程服务器去修改或提交关于书的信息。该模式显示如下:
程序清单1 2 - 5 0
第12章电子商务和XML使用557 下载
让我们仔细看看这个模式。所有的B i z Ta l k模式文档必须使用当前的X M L - D R模式草案,所
以我们将命名空间设为M i c r o s o f t的X M L - D R实现,这样频繁使用的模式数据类型将贯穿整个
B i z Ta l k文档。
程序清单1 2 - 5 1
由于BizTalk规范没有数据定义,所以在消息主体中没有防止数据定义的手段。
我们发布的文档需要允许提供书的成本,这样客户和零售商可以决定它的价格。我们首先
定义了一个字符串表示所使用的货币—这意味着可能有一个货币表示的菜单。然后使用了一
个数字类型的元素表示书的价格。
我们定义了一个元素类型叫做< B o o k C o s t >,它包含< C u r r e n c y >和< P r i c e >两个元素,这表明
当B o o k C o s t元素的模型设为c l o s e d时,它们是该元素下所有可以获得的元素。
程序清单1 2 - 5 2
模式中另一个重要的部分是定义书的详细信息。我们定义了一个名为< Ti t l e >的元素类型来
表示书名,以及< A u t h o r >、< I S B N >和< S u b j e c t >元素,它们的用法不言自明。
程序清单1 2 - 5 3
发布日期的元素由日期模式数据类型声明,其采用的是ISO 8601格式。这意味着指定的日
期将是
Y Y Y Y- M M - D D格式。
558使用XML 高级编程
下载
通常在定义一本书时附加参考的U R L,我们使用< R e f U R L >元素来实现,将其定义为一个数
据类型u r i—统一资源定义符。
我们接下来定义了一个父元素< Ti t l e D a t a >来包含这些元素。注意一本书可能有多个作者,
所以允许使用多个< Author >元素。
程序清单1 2 - 5 4
为了完成我们的文档模式,定义了一个根元素叫做< B o o k I n f o >,它被定义包含前面所说的
所有元素,以及两个新的元素叫做< B o o k N u m b e r >和< S u m m a r y >,前者维护书的内部I D,后者
包含一些书的内容概括。
程序清单1 2 - 5 5
这样,一个遵循该模式的X M L文档实例就可以出来了:
程序清单1 2 - 5 6
第12章电子商务和XML使用559 下载
为了能够使用定义在B i z Ta l k模式中的规则传输我们的文档,我们必须在实例上加入一些附
加的标签,这些标签我们在前面已经讨论过。B i z Ta l k的实例显示如下。注意该实例是如何将我
们的文档包含在B i z Ta l k标签中以及如何定义路由细节。
程序清单1 2 - 5 7
560使用XML 高级编程
下载
注意,我们忽略了包含在t o和f r o m元素中的状态元素。这是一个相当简单的例子,只是对交
易请求的信息响应,这样就没有交互的状态信息。
使用B i z Ta l k实现的解决方案
当前,同B i z Ta l k模式(在服务器端)一起工作的B i z Ta l k服务器正在开发,这样就发布了一
个J u m p s t a r t工具包以允许同B i z Ta l k文档协同工作,以感受这种共享模式背后的强大力量。当前
支持C O M和P e r l实现方式。
该工具包当前是早期版本,这样你会在使用时遇到不少问题。但使用它会获得有用的经验。
你需要在工作站上安装特定的软件,并使用提供的安装程序进行安装。由于尺寸和复杂度(需
要好几个章节才能将其讲明白),我们不需要运行整个工具包,但对它组件的概要介绍将会给你
一些好的认识。
J u m p s t a r t工具包可以自由下载: h t t p : / / w w w. b i z t a l k . o rg / R e s o u r c e s / t o o l s . a s p。这个压缩文件
包括对该工具安装的介绍以及要求预装的所有软件列表。
12.10.5 BizTalk Jumpstart工具包简介
模式是一个简单的在两个或更多程序间的界面规范。模式的实现要求一个服务器作为程序
间的媒介。这个服务器需要从一个程序接收消息,根据框架的标签检查它的内容,并将消息交
付给接收程序。如果模式没有使用这样一个中间服务器,我们将返回到当前的事务状态,这时
所有的集成必须被嵌入到参与程序的代码中。M i c r o s o f t事实上正在开发这样的一个服务器,叫
做Microsoft BizTa l k服务器。该服务器在本书的写作时( 1 9 9 9年冬天)是基于Wi n d o w s平台的。
既然B i z Ta l k模式在发布B i z Ta l k服务器前运行得很好,开发商需要一些软件以练习使用该模式。
这个软件就是M i c r o s o f t的B i z Talk Jumpstart工具包。在这个工具包中,开发商写的应用程序可以
将应用程序连接到J u m p s t a r t服务器软件。
虽然B i z Ta l k服务器将要求运行在Windows Microsoft 2000之上,J u m p s t a r t工具包可以运行
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:
XML高级编程下(20)