[摘 要] 針對目前我國電子政務信息系統分布式異構的特點所帶來的信息共享問題,本文提出了基于CORBA和XML技術構建分布式異構數據集成系統,從而實現網絡環境下的政府部門間的信息共享,滿足用戶對信息集成的需求。
[關鍵詞] 電子政務系統;分布式;異構;CORBA;XML;信息集成
[中圖分類號]C931.6[文獻標識碼]A[文章編號]1673-0194(2008)03-0108-04
1 引 言
21世紀是一個以計算機技術、網絡技術和現代通信技術為核心的信息化時代。隨著計算機技術和網絡技術的高速發展,特別是因特網在全球的廣泛應用,電子政務已被聯合國經濟社會事務部確立為“信息高速公路”的五大應用(電子政務、電子商務、遠程教育、遠程醫療、電子娛樂)領域之首。通過電子政務系統的建立,可以使公共管理組織在政務活動中,全面應用現代信息技術、網絡技術以及辦公自動化技術等進行辦公、管理,為社會提供公共服務。
我國的電子政務系統建設雖然起步較晚,但由于政府高度重視,近年來發展迅速,陸續實施了“金橋”、“金關”、“金卡”、“金稅”等信息化重大工程。各地各政府部門紛紛建立起政務網站,不僅實現了向社會發布信息,還可以提供在線服務。這些電子政務系統中存儲了大量的基礎信息資源,然而,豐富的信息資源由于建設時期不同、開發部門不同、設備不同、技術發展階段不同和應用能力水平不同等多種原因,政府信息資源存儲管理極為分散,造成了數據冗余和數據不一致,形成了分布式異構的政務系統應用環境,使得存儲于各分散的政務系統中的信息資源難以查詢訪問,政府決策部門、企業經營者和公民個人等都無法獲得有效的信息資源支持。目前,各類信息使用者要了解不同部門的信息,就必須在錯綜復雜的信息“迷宮”中穿梭,效率極為低下。
在這種分布式異構環境下,為了能對信息資源進行繼承和一體化管理,實現網絡環境下的政務系統間的信息共享,滿足用戶對信息集成的需求,就必須解決一系列兼容性問題,如跨平臺、跨操作系統、跨語言、跨協議和跨版本等。采用CORBA和XML技術可以解決分布式異構環境下電子政務系統的數據集成問題。
2 分布式異構電子政務系統數據集成策略
CORBA(Common Object Request Broker Architecture,又稱公共對象請求代理體系結構)是由OMG(Object Management Group)組織制定的一個工業標準規范,通過CORBA可以使基于對象的軟件在分布異構環境下具有更好的可重用性、可移植性和互操作性,從而在異構環境中建立分布應用系統。基于CORBA的異構數據的集成,可以為最終用戶提供一個統一的友好的數據庫應用接口,并屏蔽各種網絡中數據庫管理系統、網絡操作系統,硬件平臺以及網絡拓撲結構等異構成分,使用異構數據庫的數據將像使用單個的數據庫的數據一樣方便。
另外,由于各電子政務系統所存儲的異構數據以多樣化的數據形式表現,從而阻礙了信息集成與交換。而XML(eXtensible Markup Language,擴展標記語言)是一種元標記語言,也是面向內容的自描述性語言,它以一種統一的信息描述標準去定義各種數據源中的數據,可以屏蔽它們的平臺、系統環境、內部數據結構等方面的異構性,并進行無縫連接,實現異構數據源的信息集成與各系統間的相互查詢和檢索。
基于以上兩種思想,本文提出一方面可以運用CORBA技術來消除分布式異構政務系統結構上的異構性;另一方面,可以運用XML技術消除各政務系統數據模式上的異構性。
3 基于分布式異構電子政務系統的數據集成模型
3. 1CORBA的體系構架
CORBA是由OMG(Object Management Group)組織制定的一個工業標準,是OMA(Object Management Architecture)的一個重要組成部分。CORBA的核心思想是采用標準的接口定義語言IDL(Interface Definition Language)及其映射將軟件接口與對象實現分離。CORBA的核心組成部分是ORB,它的主要功能是支持客戶端靜態樁(Stub)和服務端靜態構架(Skeleton)之間的消息發送和接收,它屏蔽了對象實現位置、實現方式、對象狀態和通信機制等細節。基于CORBA中間件的4層模型如圖1所示。

ORB核心提供了客戶—對象之間的透明通信的方法,它可以屏蔽對象位置、實現方法、狀態和通信機制等,在客戶和服務器之間來回傳遞方法調用和信息。
對象適配器位于ORB核心和對象實現之間,負責服務對象的注冊、對象引用的創建和解釋、對象實現的服務進程的激活和凍結以及客戶請求分發。
IDL Stub(存根)負責對客戶的請求進行編碼,并把請求發送到服務端,然后對接收到的處理結果進行解釋,把結果或錯誤信息返回給客戶。
IDL Skeleton(框架)對客戶的請求進行編碼,調用所請求的對象的方法,并執行該方法,同時把執行結果或錯誤信息編碼后返回給客戶。
IDL Stub使客戶端程序與客戶端ORB相連接,IDL Skeleton使服務器端程序與服務器端ORB相連接。這兩個處于不同地址范圍、不同安全策略等條件之下的ORB之間必須實現互操作,才能保證通信及數據交換的正常。ORB提供在不同機器上的應用之間的互操作性,即客戶機和服務器對象在不同的ORB內透明地發出和接收請求。為實現互操作性,客戶端與服務器端的ORB之間用GIOP(General Inter ORB Protocol,通用ORB間協議)和IIOP(Internet Inter ORB Protocol,Internet ORB間協議)進行通信,協議指定了ORB通信所必須使用的傳送語法和一系列信息格式。
3. 2集成系統模型體系結構
分布式異構電子政務系統的信息集成模型是依托現有網絡布局、利用目前已完成或建設中的電子政務系統數據資源,建立在分布的、異構的數據庫系統模型之上的。該集成模型的體系結構如圖2所示。

系統模型體系結構主要由網絡、數據庫、ORB、Web服務器和客戶組成。系統使用現有網絡,無需另行設計、集成新的網絡環境。各數據庫系統由各政務系統自行管理維護,它們可以是建立在不同操作系統、不同數據庫管理系統之上的異構數據庫系統。用戶和Web應用服務器以及數據庫系統可以存在于網絡中的任何一個地方,符合了目前各電子政務系統的網絡分布情況。ORB負責完成客戶端和服務器對象之間的透明通信。用戶可以通過網絡透明訪問各電子政務系統的信息。同時各部門可以自行管理自己的政務系統,不受其他因素的制約。
3. 3數據模式的轉換
(1)XML的相關概念
可擴展標記語言XML是一種用來描述結構化數據,實現異構系統間的數據交換的標記語言,它是WWW聯合會(W3C)于1992年制定的一種通用語言規范,是適于Internet應用而優化的SGML的子集。
XML文檔的邏輯結構包括4部分:聲明、元素、屬性、注釋。聲明中定義文檔類型,即文檔的元素類型集合。元素是XML文檔的基本單元,包括一個起始標記、一個結束標記以及兩者之間的數據,元素具有屬性和屬性值。元素間可以相互嵌套,還可以通過屬性建立各種相互關聯。正是用這種相互關聯的元素集,XML文檔能描述復雜的結構化數據。但是與其他編程語言定義的數據結構不同,它們使用存儲結構、指針、數組下標等方法,對平臺依賴性強,不能跨平臺交換數據。而使用XML定義的結構化數據,全部字符串化,在任何平臺上都可以處理,且字符串易于通過網絡傳輸。
當兩臺計算機使用XML文檔交換數據時,它們不需要知道對方的數據格式,而只要把自己的數據轉換為XML文檔,傳遞給對方。收到XML文檔的一方,對文檔進行解析,提取有用的信息,構造出自己格式的數據即完成了交換。解析XML文檔就是按照文檔聲明中定義的自描述信息把XML文檔中的字符串轉換為一定結構的數據。這一過程使用XML解析器,W3C已經標準化了XML解析器的應用程序接口(API),稱之為文檔對象模型(DOM)。DOM獨立于平臺和編程語言。通過DOM,應用程序可以動態修改XML文檔的內容和結構。
總結起來,可擴展標記語言XML具有以下特點和優點:
① XML是不同數據結構的文本化描述語言,甚至借助類似于XML編譯器的工具,可使文檔在文本和二進制形式之間互相轉換。
② 適于異構應用系統間的數據共享,適于通過網絡傳輸。
③ 可擴展性好,XML中的標記不是預先定義的,使用者可根據需要設計標記。
④ 開放性好,XMLL獨立于系統平臺和編程語言,很多公司的產品都支持XML應用。
⑤ XML定義的是數據本身,而不是顯示特性,這與HTML不同。顯示特性可以由樣式表來定義。
應用XML技術的機制同傳統的機制比較,最為重要的一點區別是各層間傳輸過程中數據流的XML化,實質是數據的標準化,使之能夠描述不同復雜程度的數據,實現異構數據源的集成。XML提供了數據的結構化表示,并且易于操作,可以被用來標記普通文檔、結構化記錄、具有數據和方法的對象、數據庫查詢記錄、圖形顯示等。這使得XML在異構數據結構源聯合使用中有廣泛的前景。因為新的數據源的出現是不可預測的,而XML可以以一種統一的數據模式描述來自不同數據源的數據,屏蔽數據源中應用環境和數據結構的異構性,實現異構數據源的集成。
(2)數據模式的轉換
目前應用程序端大多采用Web瀏覽器形式,如Internet Explore、Netscape等瀏覽器。這些瀏覽器大都能夠通過XSL對XML文檔進行格式轉換和界面設計。HTTP作為通信協議、XML作為結構化資料格式的服務請求和數據表示在分布式系統的客戶機和服務器中間進行傳輸。XML與IDL之間的轉換通過ORB通信機制調用IDL編譯的專用數據庫接口完成:由IDL編譯器產生專用數據庫接口負責按發送方的格式接收數據,并將其表示成接收方所需的數據格式。OMG已經推出的DOM/VALUE映射規范解決了從XML DTD到CORBA IDL的轉換,還推出MOF(Meta Object Facility)與XMI(XML Metadata Interchange)完成IDL到XML轉換。數據模式處理如圖3所示。

4 結束語
基于分布式異構電子政務系統的數據集成是各政務系統信息互用和數據處理的需求,存在廣闊的應用開發前景和理論研究價值。利用CORBA和XML技術具有的語言和平臺無關性,開發出的分布式數據系統有較好的可維護性、可擴展性和開放性,相信這兩種新興的、不斷發展的技術的結合對分布式數據庫技術的發展會有更大的促進作用。
主要參考文獻
[1] 姚國章. 電子政務原理[M]. 北京:北京大學出版社,2005.
[2] 趙鳴,吳曉紅. CORBA在異構數據庫集成上的應用研究[J]. 現代電子技術,2003,(20).
[3] 達飛鵬,孟廣猛. 分布式數據庫異構消解研究[J]. 計算機工程與應用,2004,(6).
[4] 張志柳,李曉明,張蓮梅. 基于CORBA的異構電力信息系統的集成與數據交換[J]. 軟件應用,2004,25(8).
[5] 高鵬,李懷香. 一個基于CORBA的異構數據庫集成查詢系統[J]. 微機發展, 2001,(3).
[6]Robert Orfali, Dan Harkey, Jeri Edwards. 智能CORBA[M]. 北京:電子工業出版社,1999.