文档库 最新最全的文档下载
当前位置:文档库 › XML在企业信息交换中的应用

XML在企业信息交换中的应用

XML在企业信息交换中的应用
XML在企业信息交换中的应用

XML在企业信息交换中的应用

摘要:

XML由于其固有的优点,现在已经逐渐成为Internet上数据表示与交换的标准,本文从企业对外界信息的及时需求的角度出发,分析了传统的EDI技术的不足之处,讨论了XML在企业信息交换中的应用,讨论了目前应用XML进行企业信息交换的两种思路,并提出了一种用XML作为消息传送中间件的企业信息交换的实现方式。

关键词:

XML EDI 数据交换

Abstract:

With his intrinsic merits,XML now becoming a new standard for data representation and data exchange.From the viewpoint of the fact that the enterprise needs to access the information from outside timely,this paper analyzes the shortcomings of traditional EDI,discusses the application of XML in enterprise information exchange,and discusses two ideas that using XML in present application,finally submit a solution that using XML as a MOM in enterprise information exchange.

Keywords:

XML EDI data—exchange

第一部分背景

计算机,通信,电子技术的飞速发展为人们充分利用信息技术提供了基本的保证,信息技术已成为促进国民经济发展的重要力量。随着世界竞争的加剧,企业对信息有了进一步的需求。产生了CRM,SCM等概念。于是出现了新的问题,就是怎样把企业外部信息与企业内部应用系统进行集成。即互联网上的信息交换。传统的分布对象技术采用了DCOM与CORBA等,但是,当这两种方法当应用在Internet上时,便产生了不可避免的缺陷。DCOM最大的缺点在于它是依赖于WINDOWS平台的,无法满足异构环境下应用的要求。

而CORBA主要的缺点在于:CORBA的体系结构庞大而复杂,并且技术和标准的更新相对较慢。然而基于XML的RPC及XML SOAP协议却很好的解决了这方面的不足。而且,由于XML的简单性以及其开放性,基于XML的信息交互技术也解决了传统的用EDI方式进行数据交换方面的不足。下面将讨论两种数据集成的方法,并提出了一个用XML作为数据中间转换格式的集成系统。

第二部分用传统的EDI进行企业间信息交互的方式

2.1 EDI的概述

EDI(Electronic Data Interexchange)是一种计算机应用技术,其目的在于通过计算机网络,对需要进行的数据进行自动的交换与处理,EDI已发展成为集计算机软硬件技术,商业规则,安全保密等于一体的标准体系。国际标准化组织对EDI的定义如下:“为商业或行政事物的处理,定义一个公认的标准,形成结构化的事物处理或消息报文格式,从计算机到计算机的数据传输方法”。1980年至1985年美国与欧洲都制定了一套标准分别是ANSIXl2与TDI/GTDI标准,此后两大标准统一为UN/EDIFACT成为国际统一标准。

2.2 EDI标准的结构

由于UN/EDIFACT已经成为实际的国际标准所以下面主要讨论UN/EDIFACT的结构,根据联合国贸易数据交换手册(UNTDID)和贸易数据电子交换统一实

施规则(UNCID),UN/EDIFACT标准的主要内容如下9个方面:

(1)数据元目录EDED

(2)复合数据元目录

(3)代码目录(EDCU)

(4)段目录(EDSD)

(5)标准报文格式(UNSM)

(6)应用语法规则(IS09735)

(7)语法应用指南

(8)报文设计指南

(9)贸易数据交换格式构成总览(UNCID)

其中应用语法规则(IS09735)定义了EDI交换中交换信息的语法规范。其中IS09735—2定义了EDlI数据结构,ISO9735—3定义了EDI数据的传输规范。

2.3用EDI进行企业间信息交互的实现过程:

用EDI系统在企业间进行数据的交互与传输,可以在企业内构建EDI服务器,将所有EDI与客户系统及企业内部ERP系统的接口软件以及各EDI专用软件都放于EDI服务器端,企业间EDI报文通过增值网(VAN)进行数据的传送。其大致框图如图1所示:

其中,用户界面是提供给用户的通过EDI服务器与企业内部各应用系统交互的接口程序可以是WEB页面。由于企业内部各个系统有着其特定的数据格式而EDI数据格式由于受到在VAN上的带宽的限制,因而是一种紧密压缩的标准格式,所以需要设立转换程序(翻译软件)主要起将EDI格式的文件转换成企业内部应用程序格式的数据及将企业内部应用程序格式的数据根据EDI标准转换成EDI格式的数据的作用。数据映射程序主要起提取企业内部格式数据并与企业内部应用系统接口交互,实现与企业内部系统的集成的作用。通讯模块作用是使自己的计算机把数据传送到一个中央网络,由这个中央网络负责把EDI信息传到

目的地,另一方面也从这个网络接收信息。中央网络为每个加入到其中的用户开设一个邮箱。贸易伙伴交换信息时,发送方只要把信息送入对方的电子邮箱,接收方从自己的邮箱中接收信息即可。可以利用增值网络(VAN)建立。

这种模型的主要缺点在于:

1)EDI编码格式复杂,是一种非自描述的格式,因而晦涩难懂。这是由于受到增值网的带宽限制,所以EDI数据格式采用了一种高度压缩的,隐含的信息格式。不便于人们阅读,理解。

2)EDI是基于严格的事务处理并包含了一定的商业规则,因而是一种受限的,低可扩展性的数据交换,进行商业活动的双方一旦有一方退出,或有新的合作伙伴加入,那么另一方就要重新修订业务逻辑,而企业的商业活动在于对市场的敏捷反映,因而,EDI这种模式不适合于企业对信息的需求。

3)EDI需要专门的通讯网络,因而代价高。不适合目前中,小企业的发展。

由上可见用纯EDI的方式实现企业间的信息集成并不是一种有效的方法。然而随着xml技术的发展,EDI有了其新的发展空间,如WEB/EDl,lNTERNET /EDI。

第三部分XML在企业信息化中的应用

随着Internet技术的不断发展,WWW已经成为了一种重要的信息发布与信息查询的载体,I998年W3C发布了作为Internet上数据表示与数据交换的新的标准XML,它突破了传统的标记语言的缺点,为Internet上的信息共享与信息的交互提供了强有力的支持。

3.l XML简介:

eXtensible Makeup Language是一种可以对信息进行自我描述的语言,它允许你定义一套符合自己需要的标记。作为信息传输的载体。标记用于界定内容,XML语法允许自行定义任意复杂的标记结构。XML都是使用普通的文本,而不是二进制的数据格式,所以其天生就具有跨平台的优点。XML的优点在于:

1)规范,简单。XML文档有着一套严谨而简洁的语法结构。这为XML解析器获取文档所含信息提供了前提。

2)可扩展性。应用者可以按照需求定义自己的标记,而不象HTML一样其标记都是预先定义的。

3)自描述性,自描述性使其非常适用于不同应用间的数据交换,而且这种交换是不以预先规定一组数据结构定义为前提,因此具备很强的开放性。

4)XML的意义在于它可以把所有信息都存在于XML文档中,可以以http的方式传输,而远程的应用程序又可以从中提取其需要的信息。

3.2目前使用XML的两种方式

目前,在企业信息系统中使用XML作为数据传递及处理的格式有两种基本思路:

第一种思路是:利用现有技术对XML提供的支持,将XML作为各个分系统共同支持的标准,定义一个流程化的基于XML的完整的业务流程解决方案,使XML的应用与系统整体构架紧密关联,并提供对XML文档有效性验证及不同数据格式转换的应用工具,实现企业用户自定义业务流程的自动化处理。在这个方面的突出例子是微软visutal stdio.net平台的应用服务器Biztalk Serve r.Biztalk server目标是简化与B2B解决方安案相关的开发与维护工作,该产品可以从外部来源接受XML文档,并在这个基础上使这些文档可以供内部应用程序进行自动化处理,这种解决方案充分地利用了现有的技术与工具,建立在分布式多层体系结构上,以SQ L server做为后台数据层,企业的各种应用服务从数据层提取信息,加工处理,形成企业的业务信息,作为中间应用层。以IIS组件构建WEB服务器,作为企业与外界的接口,即用户层。图2描述了由BIZTALK 建立的系统构架。

在这种系统构建方法中,关键步骤在于:1)正确地设置其消息管理模块,当文档发送到BIZTALK时,BIZTALK首先由消息处理模块接受文档,在这个模块中对文档进行格式的转换(由BIZTALK CHANNEL完成),根据输入一输出文档的schema定义把EDI格式的文档转换成XM L文档格式,或者把企业外部XML数据转换成本企业内部XML数据,以供企业内部应用系统使用,相当于EDI方式中的翻译软件。并可以根据接受到的XML数据,把它传送给不同的目的地或各个业务处理模板。(由BIZTALK PORT完成)。2)正确的构建企业业务处理模板,消息处理模块接收到外部文档后,经过格式转换后发送给业务处理模块,在这个模块中定义了企业的业务流程,可以提取文档内部信息,并调用COM /DCOM服务完成整个数据的处理。

这种思路的优点在于:

1)成本较低,充分应用了企业的现有资源。

2)能够提高系统的整体性能,可以同企业现有的业务系统集成,包括SAPPR /3与EDI。

3)不同数据格式的转换方便。通过Biztalk Editor与mappe r 工具可以方便快捷地创建与编辑XML,并实现不同数据格式的转换。

4)网络传输协议支持:包括HTTP,HTTPS,FTP,SMTP,SMB(file transfer),Microsoft Message Queue Server(MSMQ) and Microsoft Exchange.

5)可靠的安全性:提供加密、数字签名、公开密钥等技术,使得Internet上离保密性资料的传输具有很强的安全性。

种种不足之处是:

1)这是一种纯XML的解决方案,而XML技术有待于进一步的发展。

2)目前各个行业的XML schema 标准还不完善。

3)这种模式目前还处于初级阶段,有待于在具体的应用中进一步的发展。

第二种思路是:XML仅仅起中间的数据表示与消息传输作用,即企业内部各个模块可以在不同的平台上采用不同的语言与工具开发,利用XML封装各个模块与外部的接口。外部系统把自己所需调用的方法名以及方法参数,通过XML 进行封装,并采用http post的方法传给远程服务器,即利用XML RPC或SOAP 协议访问远程对象,实现数据的共享。利用这种方式的主要是考虑到1)其调用的

方法名与参数使用基于XML的编码方式,利用了XML在数据交换上的强大能力。2)其传输的协议使用了http的方式,因而可以穿透防火墙的限制。3)它提供了一种松散耦合的远程方法调用方式,在传统的紧密耦合的系统中,要求理解在其中传递的消息的格式,比如是否在这些消息中使用了OCOM或者

CORBA(IIOP)。而在Internet的体系结构上,在并不知道任何关于共享的分布对象结构的条件下,这种信息显然是未知。

在实际的企业应用系统中,第二种方式应该更加有力,更有利于重要企业原有的各个部门分系统,保护原有的投资。而且以后的业务扩展打下基础。

3.3基于XML的企业信息集成的框架

在实际的应用中,我们构建了一个基于XML的企业信息集成系统。主要部分在于提供了一个企业内部系统与企业外部系统交互的接口。其目的是:1 `)

对于消除不同企业系统存在的数据表达的差异,使外部数据对于企业内部的应用来说是透明的。2)对于外部的请求调用合适的服务,并对服务返回的数据按照XML规范编码,返回其请求源目的地。3)对企业内部各应用系统发出的请求利用SOAP协议用HTTP POST方法发送到外部企业的服务器。

其大体结构如图3所示:

格式转换模块:提供了与企业WEB服务器的接口与格式转换的功能。在这个系统中,由于不同的企业有着对数据的不同表示方法,所以,首先要对数据进行格式化转化。比如说在企业A中对产品的描述可能是:

<原料信息原料lD =“”>

<原料名称> </原料名称>

<原料价格> </原料价格>

<入库日期> </入库日期>

<库存量> </库存量>

</原料信息>

而在其原料供应商中的相关数据有可能是:

<产品产品名称=“”单价=“”生产日期=“”库存=“”>

</产品>

经过格式转换,使对于企业来说,外部信息的格式是透明的。由于在XML 文档中这种格式的差异体现在与之相关的DTD/Schema的差异上。因而需要提供将XML消息中的变量名相互绑定的机制,并与企业所提供的各种服务的接口参数相关联。

XML文档分新模块:这部分的主要工作是,分析由格式转换模块送来的文档,提取文档中的各个标记所含的信息,如请求方法的方法名,请求参数等等,并把这些参数与后台的应用系统接口相关联,接受外部请求。

XML生成模块:这部分的主要工作是将企业内部的应用系统返回的信息,以XML的格式组织起来,并发送到格式转换模块进行文档格式的转换。

3.4企业信息集成框架的工作过程:

1)请求过程。首先,企业B通过其内部应用系统向企业A发送调用请求,企业B的XML生成模块将这些调用请求翻译成XML文档,其中应该包括调用请求名,请求参数,企业标识等等并对文档进行加密,之后XML消息发送给企业B的web服务器,由其用http post的方法,把这个调用请求发送到企业A的web 服务器。

2)应答过程。企业A的WEB服务器接收到发送来的请求信息以后,将其递交给企业的信息服务器,由信息服务器对请求信息进行身份认证,通过认证以后,对文档进行解码。并交给格式转换器,由格式转换器把文档内容转换成本企业内部信息格式,并交给文档分析模块进行进一步处理。文档分新模块提取XML文档信息,与企业内部应用系统提供的服务进行对比与绑定,如果提供了相应的服务,则通过应用接口将信息传送给企业内部系统,由其处理。如果没有提供相应的服务,则返回报错信息。

结束语:

目前我们正在做的南京市科委企业信息化集成平台课题研究,我们已经初步建立了系统的整体框架,实现了企业内部各个系统的集成。下一步准备按照上述的构架,实现企业间的信息交互与共享。

参考资料:

I)http://www.w3c.org

2)http://microsoft.co m/biztalk

3)http://www.biztalk.com

4)《XML高级编程》机械工业出版社李喆等译

5)基于XML的Internet EDI郝颖等华南理工大学学报(v01.29 No.6 2001年)

6)http://www.xmlrpc.com/spec

7)《XML and SOAP Programming for BizTalk Servers》Brian E.Travis copyright by Micorsoft Corporation

8)http://www.w3.org/TR/SOAP

图3基于XML一的企业信息集成的实现方式

来源:《信息化新模式》李海峰 2003-7

基于XML的数据交换共享平台模型

!""#$%%%&%%’( )#$$&***+,#清华大学学报-自然科学版. /012345678329-":2;0<:5.= *%%+年第(+卷第$期 *%%+=>?@A(+=#?A$ *B,+C $%’&$%C=$$D 基于E FG的数据交换共享平台模型 章明=许青松=沈锡臣 -清华大学计算机与信息管理中心=北京$%%%B(. 收稿日期H*%%$&$$&*+ 基金项目H清华大学I九八五J项目 作者简介H章明-$D C B&.=男-汉.=浙江=硕士研究生K 通讯联系人H沈锡臣=副教授=L&M72@H:71N:O P1234567A

xml数据交换安全解决方案

互联网技术的发展,大大提高了信息流通的速度和效率,吸引了越来越多的企业、个人通过网络从事其相关活动,基于网络的数据交换和业务协作越来越频繁。XML作为一种用来描述数据的标记语言,具有对数据进行统一描述的强大功能;同时可扩展性、结构化语义以及平台无关性的特点充分满足了互联网和分布式异构环境的需求,成为网络数据传输和交换的主要载体,有力地推动了电子商务等网络应用的发展。 作为一个开放的平台,由于资源的共享性和互操作性,互联网也面临着各种各样的安全威胁,如信息窃取、恶意欺骗、伪装、非法修改以及各种扰乱破坏等。针对网络的信息安全问题,人们提出了一些安全措施,比如安全套接字(SSL)、IP层安全标准(IPSec)、安全/多功能因特网邮件扩展(S/MIME)等,在一定程度上缓解了网络信息安全的困境。随着XML技术的广泛应用和深入发展, XML语言自身具有的结构化特征,对数据信息安全技术提出了新的要求,如XML加密解密、XML数字签名和确认、XML文档局部数据的安全性要求等,这些是现有的安全技术和协议无法做到的。 1、基于XML数据交换的安全问题 在开放环境下进行XML数据交换,确保信息的安全性是XML应用顺利开展的首要条件。没有可靠的安全控制体系,重要文档和敏感信息的明文存储和传输都是非常危险。 数据交换涉及的安全性内容包括以下几点: 1、身份验证:要求数据交换双方的身份可鉴别,防止第三者假冒。 2、访问控制:对不同的用户,能控制其对数据的访问权限。 3、数据的机密性:防止未授权的用户窃取数据。 4、数据的完整性:确认数据在传输过程中没有被篡改。 5、非否认服务:保证收发双方无法否认已接收或发送数据这一事实。 由于XML文档的结构化和可读性,对来自外部的数据交换请求或访问请求,首先必须有相应的身份认证和访问控制机制;其次, XML数据经常作为公文或流程数据,以合作的形式流转,因此需要有细粒度的加密和签名支持;另外,针对XML应用系统的特性,必须有相关的密钥管理设施为用户提供密钥管理。通过这些问题的解决,建立一个可信任的网络环境,保证基于XML数据交换活动中信息的保密性、完整性、可鉴别性、不可伪造性和抗抵赖性。 2、XML安全标准概述 为了促进上述问题得解决,推动XML应用和安全服务的发展,国际标准化组织W3C和OASIS提出了一系列新的XML安全服务标准,来为以XML作为数据交换载体的应用提供安全性保障。这些标准包括:XML加密(XML Encryption)、XML数字签名(XML Signature)、

基于XML的数据交换

实验一基于XML的数据交换 一、实验目的 (1)通过本实验,使学生能够了解基于XML数据交换的基本原理 (2)掌握基于SQL Server进行XML数据发布的方法 (3)掌握基于XML数据交换的基本方法 二、实验要求 (1)基于HTTP实现基于SQL Server的查询(结果以XML格式返回) (2)使用ADO实现基于SQL Server的数据交换 三、实验环境 实验环境:配置有windows记事本、写字板或XMLSpy 2006开发环境、IIS、SQL Server开发环境的计算机设备 四、实验原理 1、利用关系数据库发布XML数据 2、发布为XML格式的数据可以进行交换 实验步骤 (1)配置IIS服务器:建立用于映射虚拟目录的文件夹;创建通过IIS访问的数据库;配置虚拟目录。 (2)使用HTTP查询SQL Server 直接在浏览器地址输入带有查询语句的URL,以对SQL Server数据库执行查询操作,并将查询结果返回到浏览器中,如图所示 (3)查询SQL Server 2000 pubs数据库中的Astock_cus表内容,并以XML格式返回http://localhost/sqliis?sql=select * from Astock_cus for xml auto&root=A_H_stockinfo http://localhost/sqliis?sql=select * from Astock_cus for xml auto,elements&root = A_H_stockinfo

(4)返回结果还可包括schema内容 http://localhost/sqliis?sql=select * from Astock_cus for xml auto,xmldata,elements &root=A_H_stockinfo&outputencoding=gb2312 (5)首先建立一个数据查询界面,它由HTML网页实现;当点击查询界面中的执行按钮时,查询语句作为参数被传送至服务器端调用一个ASP程序来处理,该程序通过ADO 接口与指定数据库联接,执行查询语句,并按XML格式将查询结果返回到客户端浏览器中

相关文档