999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

XML數據到關系數據的映射

2011-08-30 04:25:06洪欣陳維斌蹇崇軍
華僑大學學報(自然科學版) 2011年1期

洪欣,陳維斌,蹇崇軍

(1.華僑大學計算機科學與技術學院,福建 泉州 362021;2.華僑大學機電及自動化學院,福建 泉州 362021)

XML數據到關系數據的映射

洪欣1,陳維斌1,蹇崇軍2

(1.華僑大學計算機科學與技術學院,福建 泉州 362021;2.華僑大學機電及自動化學院,福建 泉州 362021)

為實現XML數據到關系數據的數據映射,提出一種模式抽取算法,通過XML2XDR模塊抽取XML模式,依據模式對XML數據分類.分析XML模式與關系模式的差異性,通過XMLdata2DB模塊建立XML數據到關系數據的映射規則,從而實現將XML數據映射到關系數據中.

關系數據;XML;映射規則;模式抽取

企業之間進行商務數據交換時,存在數據結構不同的問題,往往通過XML格式的數據進行數據交換,并將其導入企業原有的關系數據庫中[1].隨著大量XML文檔數據的出現,如何高效地存儲、管理和查詢這些XML數據,成為目前值得研究的重要課題.對XML數據庫系統的研究主要有兩個基本途徑一種是純XML數據庫系統,優點是充分考慮XML數據的特點,以一種自然的方式來處理XML數據,能較好地支持XML數據的存儲和查詢,但目前技術仍不成熟;另一種是在原關系數據庫系統或面向對象數據庫基礎之上擴充功能,實現XML數據的處理[2-5].本文提出一種XML模式抽取技術,抽取XML文檔的模式,將XML模式映射到關系模式中,從而實現企業間的電子商務數據交換[6].

1 抽取XML模式的必要性

在XML文檔中,模式不是必須的.對于帶模式的XML文檔,可以將XML模式直接映射為關系模式.對于不帶模式的XML文檔,如果直接映射為關系,即使XML文檔來自于同一模式,也可能映射為不同結果.如以下兩個XML文檔片斷A和B.

(1)XML文檔片斷A.

文檔片斷A直接映射生成的關系表如下:

(2)XML文檔片斷B.

文檔片斷B映射生成的關系表如下:

以上示例(1),(2)中可見,文檔片斷直接映射生成的關系表存在著差異.即采用不帶模式的映射,可能會生成多個具有重復字段卻并不完全相同的表,不僅浪費了存儲空間,而且不利于數據的管理.

如果首先抽取XML文檔片斷A與XML文檔片斷B的模式,然后通過模式進行映射,由于兩個文檔片斷是同源的,那么生成的關系表就是相同的.由此可見,如果XML文檔帶有模式,最好的方式就是依據模式來映射關系模式,這樣映射生成的關系表具有通用性.如果XML文檔不帶模式定義,則先為其建立XDR模式,然后再調用帶有模式的XML文檔的映射算法進行映射.

2 系統設計

2.1 映射框架

對不帶XDR模式的XML文檔的映射包含如下3個步驟.(1)生成XDR模式.(2)應用含有XDR模式的映射方法,對XML文檔進行映射生成關系表.(3)通過填入數據模塊,將XML文檔數據映射為關系數據庫數據.

圖1為系統流程.模塊結構包括XML文檔模式的抽取(XML2XDR模塊)、XDR模式到關系模式的映射(XDR2DB模塊)、XML數據到關系數據的映射(XMLdata2DBdata模塊).

圖1 系統工作流程Fig.1 Working flow of the system

2.2 XML文檔模式的抽取

XML文檔的模式有多種,選擇其中的XDR(XML Data Reduced Language,簡化XML數據定義語言)進行說明.基于XDR模式的XML文檔的抽取算法XML2XDR有如下7個步驟.

(1)讀取XML文檔.

(2)建立XDR文件頭.

(3)讀取XML數據建立根節點.

(4)生成元素聲明.

(5)如果元素有屬性,則讀取屬性值,建立屬性聲明.

(6)如果元素有子節點,則讀取子節點生成子元素,轉到(4),繼續分析子元素,建立子元素的元素及屬性聲明.

(7)是否還有同層節點,如果有則轉到(4),為該節點建立元素及屬性聲明;如果沒有則輸出XDR模式文件.

前例中的A文檔與B文檔經過模式抽取之后,生成的XDR模式如圖2所示.由于Star包含在minOccurs=“0”maxOccurs=“*”的group中,出現的次數是不定的,所以在XDR模式的實例中,Star元素可能出現零次、一次或多次,與文檔A及文檔B的情況相符.

圖2 XML文檔抽取的XDR模式Fig.2 XDR schema extracted from XML documents

2.3 XML模式到關系模式的映射算法

抽取XML模式之后,可以通過模式將XML的數據結構映射到關系數據的數據結構,建立模式映射算法XDR2DB.算法有如下5個步驟.

(1)讀取XDR模式.

(2)讀取ElementType元素聲明.

(3)消除遞歸,生成關系表XDR2DB-Recursion-Mapping.

(4)根據節點類型,進行相應的映射.如果子元素類型為屬性,調用元素屬性映射算法生成字段;如果子元素類型為元素,調用子元素映射算法生成字段及關系;如果子元素為group,調用模式組映射算法生成字段及關系.

(5)判斷是否到達XDR模式末尾,如果不是,則轉到(2);否則,生成表間聯系.

圖2所示生成的XDR模式,經過XDR2DB映射后,其結果如圖3所示.

圖3 XDR模式映射到關系數據庫的結果Fig.3 The results of XDR schema mapping to the relational database

2.4 XML數據到關系數據的映射算法

將XML模式映射為關系模式之后,需要將XML文檔的數據填充到所建立的關系表中.XMLdata2DB映射算法有如下5個步驟.

(1)讀取XML模式的根節點,建立表格.

(2)讀取模式的節點element,創建子表.

(3)如果element不含子節點,則轉到(5);如果element含有子節點,則分析子節點的類型.如果為屬性節點,則為該屬性節點對應的字段賦值;如果為元素節點,則判定是否還包含子節點,如果含有子節點則轉到(2);否則,為該子節點對應的字段賦值.

(4)判斷子節點是否還有未訪問的同層節點,如果是,則讀取下一節點轉到(3);否則,插入一條記錄到關系表中.

(5)查找是否還有未訪問的節點,如果有轉到(3);否則完成數據映射.

文檔A與文檔B的數據映射到關系數據庫中的結果,如圖4所示.

圖4 XML數據映射到關系數據的結果Fig.4 Results of XML data mapping to relational data

3 結束語

建立了一個數據交換框架,提出一種XML模式的抽取技術,并給出從XML數據到關系數據的映射算法.研究結果可為企業的商務數據交換提供一種可行的方法,方便企業之間在異構平臺上的實現數據交換.

[1]宋培義.XML與電子商務[J].北京廣播學院學報:自然科學版,2000,7(4):33-37.

[2]WANG Guo-ren,HAN Dong-hong,QI AO Ba i-you,et al.Extending XML schema with object-oriented features[J].Information Technology Journal,2005,4(1):44-54.

[3]WANG Guo-ren,LIU Meng-chi.Extending XML schema with nonmonotonic inheritance[C]//Proceedings of 1st International Workshop on XML Schema and Data Management.Chicago:Iustrotion,2003:402-407.

[4]LEE Dong-won,CHU W W.Comparative analysis of six XML schema language[J].ACM SIGMOD Record,2002 29(3):117-151.

[5]萬常選,林大海.基于關系數據庫分裂大型XML文檔到關系存儲[J].計算機應用研究,2004,21(8):166-167.

[6]洪欣.基于XDR模式的XML文檔與關系數據庫的映射技術研究[D].泉州:華僑大學,2004.

Mapping from XML-Data to Relational-Data

HONG Xin1,CHEN Wei-bin1,JIAN Chong-jun2
(1.College of Computer Science and Technology,HuaQiao University,Quanzhou 362021,China;2.College of Mechanical Engineering and Automation,Huaqiao University,Quanzhou 362021,China)

In order to realize the data mapping from the XML-data to the relational-data,this paper propose a model extraction algorithm,the XML2XDR model extract the XML model,according to the model the XML-data is classified.By analysing the differences between the XML schema and relational schema,the mapping rules from XML-data to relational data was established based on XML data2B,and the mapping from XML-data to relational-data was realized.

relational data;XML;mapping rules;pattern extraction

1000-5013(201101-0039-04

TP311.132.3;TP311.12

A

(責任編輯:錢筠 英文審校:吳逢鐵)

2010-04-23

洪欣(1977-),女,講師,主要從事數據庫領域的研究.E-mail:xinhong@hqu.edu.cn.

福建省青年人才項目資助(2007F3062);福建省泉州市科技計劃項目(2010G4);華僑大學高層次人才科研啟動項目(07BS403);華僑大學科研基金資助項目(08HZR18)

主站蜘蛛池模板: 97国产一区二区精品久久呦| 中文字幕在线不卡视频| 国产精品分类视频分类一区| 日韩欧美高清视频| 国产精品第一区在线观看| 国产麻豆aⅴ精品无码| 手机成人午夜在线视频| 国产精品网拍在线| 日韩免费无码人妻系列| 欧美特黄一免在线观看| 日本AⅤ精品一区二区三区日| 国产凹凸一区在线观看视频| 91综合色区亚洲熟妇p| 国产一级在线观看www色 | 亚洲码一区二区三区| 中文字幕1区2区| 91精品福利自产拍在线观看| 色综合婷婷| 亚洲欧美激情小说另类| 精品少妇人妻av无码久久| 九九热免费在线视频| 欧美在线视频a| 日本伊人色综合网| 色妞www精品视频一级下载| 国产高清在线观看| 亚洲国产日韩在线成人蜜芽| 婷婷色中文| 尤物特级无码毛片免费| 欧美高清国产| 一区二区影院| 狠狠躁天天躁夜夜躁婷婷| 99久久精品免费视频| 999国内精品久久免费视频| 九色在线观看视频| 欧美无专区| 熟女视频91| 色综合日本| 麻豆精品国产自产在线| 久久精品人人做人人爽| 极品国产在线| 亚洲中文字幕国产av| 丁香婷婷激情综合激情| 欧美日韩亚洲综合在线观看| 中文字幕亚洲精品2页| 国产精品视频公开费视频| 欧美国产中文| 国产迷奸在线看| 伊人久久福利中文字幕| 国产精品区网红主播在线观看| 日韩午夜片| 免费国产高清视频| 欧洲日本亚洲中文字幕| 国产成人h在线观看网站站| 欧美不卡视频在线| 青草午夜精品视频在线观看| 国产欧美在线| 亚洲综合中文字幕国产精品欧美 | 91丨九色丨首页在线播放| 四虎综合网| 幺女国产一级毛片| 日本成人福利视频| 日本成人在线不卡视频| 中国一级特黄大片在线观看| 成人精品免费视频| 国产在线专区| 91精品小视频| 久久情精品国产品免费| 久青草网站| 国产自在线播放| 精品天海翼一区二区| 中文字幕首页系列人妻| 免费看av在线网站网址| 欧美特黄一级大黄录像| 一级毛片免费的| 波多野结衣爽到高潮漏水大喷| 久久婷婷人人澡人人爱91| 国产96在线 | 欧美色视频日本| 青青国产成人免费精品视频| 亚洲一道AV无码午夜福利| AV网站中文| 亚洲欧美人成人让影院|