编程人生

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

BizTalk是由微软公司率先开发的产品,旨在推广可扩展标示语言(XML)。可扩展标示语言应用于互联网电子商务中公用数据的交换和应用程序之间的集成。该开发小组并不是一个标准组织,但他们想借此机会将常见的XML信息传送体系和操作系统结合起来。随着电子商务的逐步发展,各种商业平台使用不同的计算机技术,这就要求一种解决方法来实现数据的共享。BizTalk开发小组将XML语言作为描述计算机之间传送数据的中间平台,并提供技术支持,如BizTalk结构框架,如何在XML中发布schema(标准数据结构),如何使用XML消息来集成软件程序等等。  

除了微软,SAP和CommerceOne等厂商也提供对BizTalk的支持。微软还发布了BizTalk Server2000服务器,可以实现对基于XML的数据的集成。

XML为我们提供了一个解决方案。它能解决前面我们遇到的问题。有了XML就有了一种通
用的标准。XML是一个国际通用的标准,它从一开始就得到了广泛的支持。不光是微软,
还有微软的竞争对手都支持它。认证它的不是一家公司,而是W3C(万维网联盟)。各家
公司互相竞争的是它的框架,是它的Schema。XML文件能实现数据和计算的分离,也就会
让胶水层中的Business logic一层一层的分离出来,减轻胶水层的编码负担。
XML框架是驾驭XML文件的结构。它是一种高层次的结构控制。通过XML框架,Business
logic被转移到胶水层之外,真正实现了数据与计算的分离。只有通过框架,XML文件才
能实现通信的自由与高效。否则XML文件只是小范围内的自娱自乐工具。
现在已经有多少XML框架呢?可能在几个月之前,您还可以说“好像就只有BizTalk一家
”。但现在您会发现有出了许许多多。BizTalk是微软支持的,现在已被运用到了微软的
整个解决方案框架中。微软把XML看成它的未来核心战略。它把BizTalk一手扶植起来就
是为了这个战略服务。除此之外,联合国(UN/CEFACT)和OASIS来联合99年底推出了EB
XML动议。它已吸引了全球包括XMLSolutions的许多组织的支持。发展前途不可小视。除
此之外,一些范围较小的框架还有HR-XML。我相信在短期内,各种局部的框架会涌现出
许多。从现在的情况来看,BizTalk是最成功的。但现在的成功决不代表未来的成功。B
izTalk已经受到了挑战。
BizTalk是什么?其实它包括的范围不只是框架。BizTalk包含有框架部分,有BizTalk
Server,还有网上的接口:www.BizTalk.org。BizTalk还为业界提供了一个免费Schema
库。BizTalk的范围是广泛的,它提供的服务是全方位的。它已经被微软加入到了它的整
个解决方案架构当中。从某种意义上说,微软在冒险。因为W3C并没有完全推出XML, X
ML Schema 的说明,微软是在用它已存在的影响力推销它自己的理念。
BizTalk免费Schema库是由支持BizTalk的业界企业制定的。它们把制定好的Schema提供
给BizTalk认证。经过认证后的Schema被加入到Schema库中,在线免费下载。这实质上是
给一个特定的产业树立了一个目标。这个业界中的其它企业可以直接引用这些Schema。
换取话说,微软想要用它来扩充尽可能多的支持者,扩充微软的阵容。
我们的重点放在BizTalk框架之上。在1999年12月6日BizTalk Framework 1.0 Specific
ation 已经正式面世了。
发送消息。
消息是在软件发送的一种文件。消息区别文件的地方在于它期望得到回应,或是含有操
作的意图。每当一个特定的应用发出一个消息,都是产生一个加头的XML文件。这是一个
符合特定Schema的XML文件,是一个符合BizTalk框架的XML文件。当然BizTalk希望这个
Schema是BizTalk Schema 库中的。而且在它所加的头中,信息定义结构必须是符合Biz
Talk框架定义的。这个加头的XML文件被应用送到发送BizTalk Server,由发送BizTalk
Server加上一些传输特定参数后,被打包发送到接收BizTalk Server。接收BizTalk S
erver收到消息包后会做一些相应的处理,送消息到目的应用。
符合BizTalk 框架的文件结构
文件根tag
<biztalk_1
xmlns="urn:schemas-biztalk-org:biztalk/xxxxx.xml">
</biztalk_1>
这个tag以及它内部的名域(namespce)是说明文件是符合BizTalk框架1.0版本的。这个
tag名是不能有改动的。有了它,BizTalk Server才会认识它。
文件头tag
<header>
<!-- Header and processing information is contained here -->
</header>
头信息被包含在这个tag中。它其实就是Business logic中被提取出来的一部分。
文件体tag
<body>
<!-- Business transaction information is contained here -->
</body>
这是应用实实在在想传输的内容。
所以总的看,一个完整的符合BizTalk的文件是这样的:
<biztalk_1 xmlns="urn:schemas-biztalk-org:biztalk/xxxxx.xml">
<header>
<!-- Header and processing information is contained here -->
</header>
<body>
<!-- Business transaction information is contained here -->
</body>
</biztalk_1>
我向大家关心的应该在文件头tag中。让我们来仔细看看吧,下面是以给完整的头tag:

<header>
<delivery>
<message>
<messageID>8230948204820</messageID>
<sent>1999-01-02T19:00:01+02:00</sent>
<subject>New Purchase Order</subject>
</message>
<to>
<address>http://www.fabrikam.com/recv.asp
<state>
<referenceID>123</referenceID>
<handle>7</handle>
<process>yourprocess</process>
</state>
</to>
<from>
<address>mailto:foo@contoso.com
<state>
<referenceID>123</referenceID>
<handle>7</handle>
<process>myprocess</process>
</state>
</from>
</delivery>
<manifest>
<document>
<name>fabrikam_PO_1</name>
<description>Purchase Order</description>
</document>
<attachment>
<index>1</index>
<filename>product.bmp</filename>
<description>Product Image</description>
<type>bitmap</type>
</attachment>
</manifest>
</header>
上面的例子是一个完整的BizTalk框架1.0版本文件。有些tag是必须要的,有些是可缺省
的。各个tag的作用容易从它的名称知道。具体的一些细节这就不多说了。如果要了解具
体的tag的缺省情况,请参看BizTalk的具体版本说明。我也会在相关的连载中作详细的
说明。
我们关注的是文件头tag解决了什么。文件头tag把许多Business logic的部分从原来的
胶水层中提取了出来。这可以省去大量的编码,使得胶水层便薄。如果您研究过BizTal
k框架0.81版本,您会发现1.0版本的头tag比0.81版本大的多。下面是一个BizTalk框架
0.81版本的头tag,请注意它的名称和形式:
<Route>
<From locationID="111111111" locationType="DUNS"
process="" route="" handle="45"/>
<To locationID="222222222" locationType="DUNS"
process="" route="" handle="93"/>
</Route>
不同之处有二:一是信息量小,而是属性变为了元素。事实上,BizTalk框架的演变就是
Business logic不断被提取出来的过程。它实现的是数据和计算的分离。它把很大的编
码负担转移出来。使得应用间传输消息变得自由高效。非常显然的是这对大范围的网络
应用整合是非常有用的。它为新的应用的加入提供了方便的接口。在微软的眼里,未来
的应用之间就是通过BizTalk Server控制基于BizTalk框架的XML文件。实现应用的协同
合作。
BizTalk框架实现的是什么?微软在争夺什么?这是我所希望让大家明白的。天下绝不只
有微软的BizTalk一家。事实上竞争正在加剧。站在中国XML联盟的角度上,我们是在向
您介绍最新的技术动态,绝无推销产品之意。在我相关的连载的文章中将向您介绍更多
的其它动态。
参考资料:http://www.cnpaf.net/Class/b/05102610345939418867.htm
posted on 2007-01-18 15:55  choice  阅读(2013)  评论(0编辑  收藏  举报