基于UBL和純XML數(shù)據(jù)庫的EDI系統(tǒng)設計與實現(xiàn)_第1頁
基于UBL和純XML數(shù)據(jù)庫的EDI系統(tǒng)設計與實現(xiàn)_第2頁
基于UBL和純XML數(shù)據(jù)庫的EDI系統(tǒng)設計與實現(xiàn)_第3頁
基于UBL和純XML數(shù)據(jù)庫的EDI系統(tǒng)設計與實現(xiàn)_第4頁
基于UBL和純XML數(shù)據(jù)庫的EDI系統(tǒng)設計與實現(xiàn)_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

基于UBL和純XML數(shù)據(jù)庫的EDI系統(tǒng)設計與實現(xiàn)

如一個訂艙報文,里面有船舶名稱、發(fā)貨人名稱、收貨人名稱、貨物名稱、港口、備注等信息,這些信息單元都是基于UBL中定義的基本商業(yè)信息實體。我們也可以把幾個相關的基本業(yè)務信息實體組成一個集合商業(yè)信息實體,如訂艙貨物信息可以由貨物名稱、包裝類型、件數(shù)、體積、毛重、凈重這六個基本業(yè)務信息實體組成一個集合業(yè)務信息實體,稱CargoLineItem。最后一個訂艙報文的形成就可以通過把有關的基本商業(yè)信息實體或集合商業(yè)信息實體按一定順序拼在一起。同時,這些基本/集合商業(yè)信息實體都是可以在其他報文中重用的。只要我們建立起了這些組件庫,我們的中間XML報文格式定義就像拼裝零件一樣簡單,這樣我們的報文格式也易于管理和維護。在UBL版本中也給出了許多可重用的基本組件庫,下圖是以XMLSchema形式給出的Party信息實體,在實際的報文中如發(fā)貨人、收貨人、通知人等的定義都是以Party信息實體為基礎,并進行定制而成的,我們也可以把自己定制而成的信息實體根據(jù)需要放入自己的基本組件庫。另外,我們把每一個基本信息實體當作一個小模塊,用XSL語言把每個小模塊定義好在WEB上的顯示方式。當我們要以WEB方式顯示一個報文時,可以把用到的信息實體對應的XSL模塊重新在jsp或asp中構建一起,根據(jù)需要調(diào)整各模塊間的順序或格式大小,這樣一個報文就可以方便以WEB方式展現(xiàn)給客戶。報文交換平臺需要提供給客戶報文查詢功能,按照這樣方式,客戶查詢出的報文可以直接以WEB方式顯示,而且實現(xiàn)簡單,可以達到顯示風格統(tǒng)一。我們需要在EDI系統(tǒng)中建立一套UBL定義的報文格式標準,作為EDI系統(tǒng)中的中間報文格式,利用UBL的特性,我們建立和維護這套報文標準就方便許多。用戶的報文格式都轉換成中間的報文格式,然后再把中間的報文格式轉換成接收方可以接收的格式。NativeXMLDB又稱純XML數(shù)據(jù)庫,它把一個XML文檔作為基本的邏輯存儲單元。如現(xiàn)在的Oracle10g就支持NativeXML數(shù)據(jù)庫,并且定義XMLType作為一種數(shù)據(jù)類型,它使數(shù)據(jù)庫可以理解含有XML的列或表,就像DATE數(shù)據(jù)類型使數(shù)據(jù)庫可以理解含有日期的列,它可以同其它數(shù)據(jù)類型一樣使用。NativeXMLDB的簡單使用可以按照下面操作首先把某個報文類型相應的XMLSchema報文標準,注冊到NativeXMLDB,Oracle可以通過調(diào)用DBMS__SCHEMA()的PL/SQL過程來注冊Schema。當基于該Schema的實際報文存儲入庫時,可以用XMLType數(shù)據(jù)類型提供的方法isSchemaValid()和schemaValidate()來驗證報文是否滿足報文標準的定義。然后創(chuàng)建表,類似其他建表的方法,SQLcreatetableXML_DOCUMENT_TABLE2(3FILENAMEvarchar2(50),4XML_DOCUMENTXMLType5)或者,當有XMLSchema已經(jīng)向數(shù)據(jù)庫注冊后,可以用以下方法來創(chuàng)建表,SQLcreatetableXML_DOCUMENT_TABLEofXMLType2xmlschema"http:///demo/"3element"Booking";

最后,用這種方式存儲XML文件,直接查詢XML某個節(jié)點下的值變成很方便,如查詢訂艙報文中的訂艙號可以用如下方法SQLselectextractValue(OBJECT_VALUE,‘/Booking/BookingNumber/Number‘)2fromXML_DOCUMENT_TABLE;EXTRACTVALUE(OBJECT_VALUE,‘/Booking/BookingNumber/Number‘)------------------------------------------------------------------------------------------------TOS_BK_8781991對EDI系統(tǒng)的建設,本文僅是拋磚引玉,描述了一個大體框架,其中用到的UBL和NativeXMLDB兩種新技術可供參考,具體的實現(xiàn)讀者可以參考相關資料完善。參考文獻1..ThinkingXML:通用商業(yè)語言.http:///developerworks/cn/xml/rdf/part16/2.UBLTC..http:///ubl//3.江代有.電子數(shù)據(jù)交換——EDI.現(xiàn)在電子技術,20034.SeanDillon.WhichStorageXML.http:///technology/tech/xml/20055.OracleWhitePaper.MasteringXMLDBStorageinOracleDatabase10gRelease2.http:///technology

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論