首頁>>廠商>>軟件開發(fā)商>>穎科公司

穎科XML2DB白皮書

InfOnCall XML2DB

2001/12/05

1.術語

  Map, XML2DB, DTD,

2.簡介

  InfOnCall XML2DB實現(xiàn)了從XML數(shù)據到傳統(tǒng)關系數(shù)據庫的轉化。XML2DB的主要原理是通過一個map文件來描述數(shù)據庫中的域或表和XML樹型結構之間的對應關系。在作XML數(shù)據到Database之間轉化時通過對map文件的分析為XML中的每一個節(jié)點找到對應的字段或表。這種轉化工具支持多種后臺數(shù)據庫類型,可以采用的數(shù)據庫包括Oracle,DB2等。

3.背景

  InfOnCall的DB2XML產品已經實現(xiàn)了從關系數(shù)據庫中得到結構化的XML文檔,而且DB2XML工具還提供了非常靈活、易于使用的樹型結構查詢工具,讓你能夠從復雜的數(shù)據中選取出你所需要的數(shù)據,并且非常方便地發(fā)布為和應用有關的XML或者HTML格式的數(shù)據。

  但是在很多場合下,比如用戶信息的輸入以及數(shù)據存儲還必須依賴于數(shù)據庫來完成。也就是需要建立XML和數(shù)據庫之間的雙向轉換,因此還必須提供從XML到數(shù)據庫的轉換工具。InfOnCall的XML2DB產品就是穎科公司為滿足該需求而開發(fā)的最新產品。InfOnCall的XML2DB產品能夠將XML文檔中的層次結構數(shù)據和數(shù)據庫之間建立相互的映射關系,并且通過該映射關系將實際的XML文檔數(shù)據導入到目標數(shù)據庫中。

4.系統(tǒng)架構

  InfOnCall XML2DB軟件包包括了兩個圖形化工具(Map Generator和Parser Engine)和一個提供給Java應用開發(fā)人員的XML2DB開發(fā)包。

  其中Map Generator的功能如下:首先用戶只須提供一個描述作為數(shù)據源的XML的DTD(文檔類型定義文件)。Map Generator可以從根節(jié)點開始對DTD進行分析,并得到XML父節(jié)點和子節(jié)點元素之間的各種對應關系(一對一或一對多)。對于其中一對一的關系則將相應子元素 對應于表中的字段,而對于其中的一對多關系則將相應的子元素對應于數(shù)據庫中的一張表。并將分析結果保存到一個用于指導Parser Engine工作的Map文件。并產生一個.sql文檔用于提示用戶可能需要創(chuàng)建的表。

  Parser Engine的實質是一個Map文件的解釋器。它的工作就是對Map文件進行分析根據Map文件中的標簽執(zhí)行相應的具體操作。作為結果,它將整個XML中的數(shù)據添加到數(shù)據庫中的一張或多張表中。



 

  除了直接采用軟件包中包括的兩個圖形化工具以外,用戶還可以根據自己的需要用xml2db.jar提供的接口來開發(fā)自己的應用程序、中間件或Javabean組件等。

5.產品特點

  與其他同類產品相比,InfOnCall的XML2DB工具更完整的實現(xiàn)了XML到數(shù)據庫之間的轉化。這種完整性主要體現(xiàn)在以下方面。

6.應用前景

  由于XML2DB工具的運行獨立于不同的數(shù)據庫平臺,也獨立于不同的數(shù)據庫版本,比如在遇到數(shù)據庫要進行升級或數(shù)據轉移的情況時,如果原有的數(shù)據不能直接轉移到目標數(shù)據庫中,這時XML2DB和DB2XML工具將提供你完整的解決方案:通過DB2XML工具可以將需要轉移的數(shù)據表格轉換到中間的XML文檔,然后再通過XML2DB工具轉換到目標的數(shù)據庫中。

  目前很多的網站將基于XML或者XHTML,在信息發(fā)布時通過XML的實現(xiàn)已經比較成熟的方便(如通過DB2XML和XSL等)。但是同樣還存在信息傳遞和交互的需要。如果是中間的信息交互,可以交給應用程序去處理,但是如果是需要后臺記錄和存儲的數(shù)據,比如用戶信息、登記表格等,如果按照傳統(tǒng)的處理方法效率不是很高,尤其是隨著Xforms標準的完善,交互的信息或者表但格式本身就遵循XML規(guī)格,這時利用InfOnCall的XML2DB工具就能快速有效地解決從XML到數(shù)據庫后臺的存儲。對于大型的靜態(tài)文檔,可以通過可視的圖形界面來完成轉換,而對于動態(tài)的數(shù)據,可以利用xml2db.jar開發(fā)包來進行應用開發(fā),實現(xiàn)自動的數(shù)據轉換。

  InfOnCall的XML2DB工具使得你能以可視化和可配置的方式來定義XML和數(shù)據庫之間的映射方式。該產品將和InfOnCall的DB2XML一起為用戶提供完成的數(shù)據庫和XML的解決方案,提供雙向的轉換,既解決基于XML的發(fā)布,又能提供從XML數(shù)據到數(shù)據庫的存儲機制,因此該系列產品將是數(shù)據庫整合、交換以及新一代Web發(fā)布的核心工具。你可以通過它在任何的平臺中連接到任何存在的數(shù)據庫,提供多個數(shù)據源的數(shù)據獲取以及從XML數(shù)據到不同數(shù)據庫的轉換。

穎科公司供稿 CTI論壇編輯