(海南省國土環境資源信息中心,海口,570206)
數據交換存在於系統中,與“金土工程”相關的上下級之間的數據和信息傳遞。基於XML的數據交換形式可以解決數據交換的安全性、可靠性、靈活性和開放性,為“金土工程”提供了壹種簡單高效的數據交換方式。
關鍵詞:“金土工程”;XML數據交換;數據總線
“金地工程”是國土資源信息化建設的框架工程,數據將是該工程的核心內容之壹。由於“金地工程”涉及的數據內容、數據類型和數據格式的異構性,數據交換必然是“金地工程”不可或缺的壹部分。基於XML技術的數據總線模式將為系統間、數據間、上下級間、甚至系統與數據間的交換提供壹個松耦合、清晰、可擴展、易維護、開放、統壹的數據交換平臺。
1“金土工程”數據交換系統
“金土地工程”將采用面向服務的技術框架和電子政務平臺的思想,強調技術的實用性、通用性、可靠性和安全性,確保系統的可擴展性、可維護性、開放性和統壹性。
在數據資源建設上,采用主流的GIS平臺、面向對象的數據庫等技術,按照統壹標準建設和整合各類數據庫,通過集中與分布式管理相結合、多級備份和相對獨立的數據管理機制,實現數據的統壹管理和維護。
在應用系統建設方面,要統籌規劃,通過電子政務平臺建設國土資源業務應用系統。
無論是數據資源還是應用系統內部或之間,都必須進行數據交換,形成數據交換系統。數據交換系統包括基礎數據庫同步和備份的交換系統,各級業務信息傳遞的交換系統,外部數據共享的交換系統,甚至系統內部模塊之間的數據交換。
基礎數據庫同步備份交換系統主要實現下級數據庫對上級數據庫的及時自動同步更新。
各級業務信息傳遞的交換系統主要用於實現垂直業務系統中上下級業務流程之間的業務數據交換、統計數據上報、物料上報或分發。
對外數據共享交換系統主要實現國土資源系統與其他部門之間基礎數據相關業務數據的交換。
它面向系統中模塊間的數據交換,主要實現模塊間數據計算和處理過程中的數據交換。
數據交換系統必須解決數據交換的安全性、可靠性、靈活性和開放性,采用XML技術作為“金土工程”數據交換系統的基礎是壹個較好的選擇。
2 XML的發展及特點
2.1 XML的開發
到目前為止,用HTML編寫的網頁占了相當大的比例。HTML易學、通用、簡潔、語法緊湊,表格、框架、腳本等擴展功能使其在Web主頁上大顯身手。然而,隨著Web的應用越來越廣泛,HTML過於簡單的弱點也越來越明顯。
(1)鏈接丟失後無法自動更正。因為很多頁面的URL地址變化比較頻繁,所以在瀏覽這些頁面的時候,會遇到404 URL地址找不到的惱人信息。妳要壹個壹個手動更改鏈接頁面的URL地址,大大增加了網頁的維護工作量。
(2)動態內容下載的部分太多。目前用HTML創建的頁面外觀屬性無法更新,比如顏色、字體、背景等。只有新的頁面或Java部分可以再次下載。但是Java保存的數據搜索引擎是無法訪問的,所以用Java在HTML頁面中顯示動態內容並不是萬能的。
(3)搜索時間長。由於HTML頁面沒有類似數據庫的結構,所以在這類文檔中搜索目標時需要掃描所有頁面的所有內容,往往會檢索到大量與關鍵詞無關的內容。這是因為HTML不能區分信息和元信息。而且HTML不支持信息嵌套架構,限制了全文檢索功能。
(4) HTML缺乏對雙字節或多語言字符的支持,或者支持不夠。比如中文信息頁面的格式在不同平臺下會參差不齊。
(5)HTML擴展性差科學家無法用HTML寫出數學公式、化學方程式和分子晶體結構。
為了解決這些缺點,可擴展標記語言(簡稱XML)應運而生。
1998年2月,萬維網協會(W3 C)發布了標準XML1.0。XML是壹種元標記語言,它提供了壹種描述結構化數據的格式,是W3C為優化網絡傳輸而定義的SGML(通用標記語言標準ISO 8879: 1986)的子集。XML確保結構化數據是壹致的,並且獨立於應用程序或程序。
2.2 XML的特點
XML自問世以來,以其標準化、接口協議、簡化和封裝等優點被譽為信息標準化過程中的有力工具,基於XML的標準將成為未來信息標準的主流。
2.2.1標準化
與其他服務技術相比,標準化是XML的特點之壹。XML為系統間傳輸數據提供了壹種標準格式。萬維網聯盟(W3C)管理XML標準並將其發布給世界各地的XML技術提供商,這確保了XML產品的兼容性。除了XML引擎和產品,還有XML語法。每種XML語法都是在特定問題領域格式化數據的標準方法。通過遵循和采用XML語法,任何人都可以標準化兩個應用系統之間通信的數據格式。
2.2.2接口協議
當編程壹個接口時,它通常被稱為協議。從編程的角度來看,接口提供了壹個編程結構,而沒有公開實現。如果使用DTD(文檔類型定義)和schema,那麽XML也有類似的特性。DTD和outline都用來描述XML文檔的結構和建立XML文檔的規則。壹個(或多個)相關的DTD(或大綱)可以用來組織這樣壹組規則,這就是所謂的XML語法。
XML語法不僅可以用來規範應用程序之間的通信,還可以為開發人員提供壹個接口協議。換句話說,在創建需要使用XML文檔結構的應用程序時,開發人員不需要知道文檔是如何實現的(即實際的XML文檔)。DTD和outline描述了文檔的結構,可以用作開發的接口協議。對DTD的任何改變也會改變協議。
簡化
XML文檔的另壹個重要方面是它的簡化,這意味著XML的概念和壹般方法是簡單的。例如,XML基於文本文檔,這簡化了打開XML文檔和查看其內容的過程。
用XML簡化Web服務模型既方便又重要。Web服務本質上比單獨的XML更復雜。假設XML和CORBA同樣復雜,其他Web服務技術也同樣復雜,那麽Web服務技術就會變得非常繁瑣。然而,通過使用簡單的構建塊,如XML和SOAP,Web服務的復雜性可以被控制在壹個可容忍的範圍內,因此用它創建的應用程序將不難控制。
包裝
封裝是XML的特性之壹,尤其是在開發Web服務時。本質上,封裝指的是獲得壹個或多個數據塊並將它們組裝成壹個簡單對象(而不是幾個獨立的對象)的概念。封裝類似於聚合,但兩者有壹個重要的區別,即封裝壹般意味著它沒有外部依賴性。
您可以創建具有外部依賴關系的XML文檔,但是在事務性Web服務模型中,使用封裝更為明智。通過設計壹個包裝依賴關系的XML解決方案,通常可以消除事務處理中的問題。尤其是在外部數據變化頻繁的情況下,強行在事務中定位外部數據並使之與XML數據壹致的方法是有害的。如果數據用XML語法封裝,就可以通過交易獲得正確的數據。
3 XML數據總線的應用分析
3.1 XML構建“金土工程”數據交換總線
通過開放式XML數據總線技術,實現了“金土工程”各系統、各層次之間的數據交換。XML數據總線由四部分組成:發布、集成、分發和自動化,如下圖所示。
XML數據總線圖
發布數據總線是根據不同的用戶需求,在客戶端以不同的形式呈現相同的數據內容的數據交換。數據顯示通過數據總線與內容分離,XML定義的數據允許指定不同的顯示方式,使數據更加合理。XML是對HTML的補充,逐漸被廣泛用於描述用戶界面,形成了HTML描述數據,而XML描述數據本身的外觀。
本地數據可以通過客戶配置、用戶選擇或其他標準決策來動態顯示。CSS和XSL為數據顯示提供了壹種發布機制。通過XML,數據可以以粒度的形式更新。每次數據的壹部分發生變化,沒有必要重新發送整個結構化數據。更改後的元素必須從服務器發送給客戶,並且可以顯示更改後的數據,而無需刷新整個用戶界面。HTML模式已被更改。只要有壹條數據發生變化,就必須重新構建整個頁面,這嚴重限制了服務器的性能。
此外,還可以在通過XML總線發布的數據中添加其他數據,添加的數據可以進入現有頁面,而不需要瀏覽器再次發送新頁面。
集成數據總線是系統間兩個或多個異構數據庫之間的數據交換。
系統通過XML標準語言與這些不同復雜格式的數據庫進行交互,這是由於XML的可定制性和可擴展性,使其足以表達各種類型的數據。接收到數據後,系統可以對其進行處理或在不同的數據庫之間進行傳輸。XML解決了數據交換的統壹接口問題。
XML賦予了系統強大的功能和靈活性。例如,進行更有意義的搜索,數據由XML唯壹標識。如果沒有XML,搜索工具必須了解每個數據庫是如何構建的,但這實際上是不可能的,因為幾乎所有的數據庫都以不同的格式描述數據。由於不同來源數據的整合問題,現在實際上已經無法搜索各種不兼容的數據庫。通過XML數據總線可以方便地集成不同來源的結構化數據,在中間層服務器上集成後端數據庫和其他系統的數據,然後將數據發送給客戶或其他服務器進行進壹步的收集、處理和分發,從而實現數據庫之間的數據交換。
分布式數據是壹種通過數據總線將大部分處理負載從服務器轉移到客戶端的數據交換方式。
客戶可以根據自己的需要選擇和制作不同的應用系統來處理數據,服務器只需要發送相同的XML文件。例如,按照傳統的“客戶機/服務器”工作模式,客戶機向服務器發出不同的請求,服務器分別響應,這不僅增加了服務器本身的負載,還需要網絡管理員事先調查不同的用戶需求,以做出相應的不同方案。但是如果用戶的需求復雜多變,把所有的業務邏輯都集中在服務器上是不合適的,因為服務器端的服務系統可能無法滿足眾多的應用需求,跟不上需求的變化,雙方都很晚了。XML數據總線的應用把處理數據的主動權交給了客戶。服務器所做的就是將數據盡可能完美準確地封裝成XML文件,並通過總線進行交換,形成各自的需求,各司其職。利用XML的自解釋特性,客戶端在接收數據的同時可以理解數據的邏輯結構和含義,從而擴展了廣泛而通用的分布式計算模式。
自動數據總線是遵循同壹數據交換標準的壹種方式,使應用程序具有壹定的自動處理能力,從而實現對獲得的信息進行編輯、增刪,以滿足用戶的需求,從而提高工作效率。開發壹個典型的國土資源管理應用智能代理程序的步驟如下:①程序向上壹級國土資源管理部門的數據交換系統發送數據更新請求,自動連接回復中提供的同級國土資源部門的所有站點;(2)搜索預定數據的信息,並針對該內容按照壹定的規則比較獲得的不同站點的信息;(3)得到所需結果,自動向該站點國土資源管理部門發送數據更新通知。
3.2 XML數據總線的特點
數據交換的安全性
在數據交換中心的設計中,采用XML文檔作為數據交換的媒介。現在文檔加密已經有非常成熟的方法,所以整個XML文檔都可以加密,經過數字簽名認證後安全地發送給壹個或多個接收者,數據接收者收到XML數據文檔後就可以使用了。
系統的可靠性
在數據交換中心的設計方案中,考慮到整個數據交換中心作為壹個獨立的應用服務組件存在於國土資源管理部門的信息系統環境中,不依賴於任何獨立的信息系統,系統不會受到信息系統意外崩潰的影響。
交換中心與數據庫分離,即正常情況下,數據交換中心不與任何信息系統或其他專業系統的數據庫互操作,所有數據處理由數據的所有者和請求者負責。這種設計方法既保證了各個系統的獨立性和安全性,又保證了系統之間的交互性。
數據交換中心存在於應用服務器環境中,可以利用應用服務器環境提供的動態負載均衡和故障恢復功能,保證數據交換中心的長期可靠運行。
系統的靈活性
數據交換中心提供兩種數據交換模式:基於消息的數據交換模式和數據交換中心直接讀寫數據,以適應各種系統環境。
基於消息的數據交換是數據交換中心的首選,其中數據交換中心與支持消息機制的系統異步交換數據。數據交換的發起者將XML格式的消息提交給數據交換中心,並繼續執行其他任務,直到從數據交換中心收到數據交換完成的消息,然後處理所需的數據。在基於消息的數據交換模式下,數據交換中心管理消息的全過程,保證消息的接收順序和數據的正確性。
數據交換中心還提供壹種數據交換模式,在這種模式下,數據由數據交換中心直接讀取。在這種模式下,數據交換中心主要與被動提供數據的系統進行交互。那些系統只需要提供數據,不需要數據,系統結構比較簡單。
系統的開放性
數據交換中心提供消息控制API和數據轉換協議定制工具,只要通過數據轉換協議定制工具給數據交換中心添加數據轉換協議,任何系統都可以使用數據交換中心提供的消息控制API與數據交換中心進行數據交換。
由於XML標準具有可擴展性和強大的自描述功能,它改進了傳統的數據表示方法,不僅非常適合數據交換和信息發布,而且將日益成為顯示和索引的基礎。現在幾乎所有的數據庫都已經提供了XML轉換工具,所以XML文檔非常適合在跨系統、跨平臺的“金地工程”中進行數據交換。隨著XML作為交換數據的標準方式的出現,基於XML的應用程序將變得更簡單、更高效。
參考
[1]國土資源部。國土資發[2004]23號《關於印發全國金土工程建設總體規劃的通知》。2006
[2]金元基,蔡啟俊。"基於組件的知識工程架構."JOOP,1999
[3]Ritter,D.《D2B電子商務中缺失的壹環》。智能企業,1999
[4]高波,王燕,本昌。Oracle,XML開發手冊,北京:機械工業出版社,2001。
[5] XML中國論壇。《XML高級實用教程》。北京:清華大學出版社,2001。
王中,陳曉鷗。基於XML的數據交換和訪問技術研究。計算機工程與應用,2001。
[7]徐天心,金曄,李.基於XML的對稱Web-EDI系統的設計與實現,計算機集成制造系統- CIMS,2001。
[8]何榮,方,。基於XML的電子商務訂單處理管道設計。計算機應用,2002