專利名稱:一種基于多樣性xml文檔近似查詢方法
技術(shù)領域:
本發(fā)明屬于計算機設計與應用技術(shù)領域,涉及計算機軟件、信息檢索技術(shù)、半結(jié)構(gòu)化數(shù)據(jù)處理技術(shù)、人工智能技術(shù)以及XML描述語言,特別涉及一種基于多樣性XML文檔的近似查詢方法。
背景技術(shù):
近年來,隨著XML(Extensible Markup Language)的出現(xiàn),針對XML文檔半結(jié)構(gòu)化數(shù)據(jù)的查詢算法的研究逐漸引起了國內(nèi)外信息檢索領域人們的關(guān)注。XML文檔具有靈活的表達能力,而這種靈活的表達能力使得不同組織和個人建立的XML文檔,難以遵照一個統(tǒng)一的數(shù)據(jù)模式,即使內(nèi)容完全相同的文檔,不同的組織和個人也很難按照統(tǒng)一的標準來建立結(jié)構(gòu)和標識內(nèi)容完全相同的XML文檔,從而造成了XML文檔數(shù)據(jù)的多樣性。如何針對WEB上的大量的多樣性的XML數(shù)據(jù)進行有效的信息提取成為了XML數(shù)據(jù)管理研究的重要課題。
目前,已有的XML查詢方法的研究主要關(guān)注單DTD下XML文檔集的精確查詢和近似查詢,解決方法主要采用了以樹模型匹配作為理論基礎的結(jié)構(gòu)化連接算法等相關(guān)技術(shù),并取得了較好的查詢效果。而當針對多樣性XML文檔集時,則效果并不理想。
針對基于多樣性XML文檔的近似查詢方法,申請人經(jīng)過查新,檢索到與本發(fā)明緊密相關(guān)的專利1個,國內(nèi)文獻1篇,國外相關(guān)文獻1篇 (一)相關(guān)專利(名稱、申請人或發(fā)明者)1個 1.專利名稱XML流數(shù)據(jù)的復雜小枝模式查詢匹配方法 專利申請人復旦大學 (二)國內(nèi)相關(guān)文獻(標題、作者或機構(gòu)、出處)1篇 1.標題XML查詢中DTD的排序技術(shù) 刊名計算機研究與發(fā)展,2003,40(11)1579~1585. (三)國外相關(guān)文獻(標題、作者或機構(gòu)、出處)1篇 1.TitleSchema-Driven Evaluation of Approximate Tree-Pattern Queries Author(s)Torsten Schlieder. Source8th International Conference on Extending Database Technology, Prague,Czech Republic,March 25-27,2002514-532. 對上述文獻分析如下 在專利1中,發(fā)明人提出了一種XML流數(shù)據(jù)的復雜小枝模式查詢匹配方法。通過定義的緊湊小枝模式查詢樹,將復雜的AND/OR謂詞作為單獨的抽象語法樹來處理,同時,將所有小枝模式查詢組合成單個可共享公共前綴的查詢樹,利用提出的基于運行棧的算法,結(jié)合自頂向下和自頂向上過程,單遍、高效處理基于XML流的任何復雜小枝查詢。
國內(nèi)文獻[1]中,對“候選DTD定位”,“候選DTD與用戶查詢結(jié)構(gòu)的距離排序”等技術(shù)進行了研究。在對候選DTD與用戶查詢結(jié)構(gòu)的距離進行接近線性時間復雜性的排序運算時,提出了以“樹間亞距離排序”代替“樹間距離排序”的觀點,即以查詢結(jié)構(gòu)與查詢在候選DTD中的上下文之間的距離,代替查詢結(jié)構(gòu)與候選DTD之間的距離參與排序,提高了候選DTD排序的準確性。但文中沒有進一步給出排序后的DTD對用戶的查詢結(jié)構(gòu)進行重構(gòu)的方法以及結(jié)合該DTD排序技術(shù)的XML近似查詢算法框架。
國外文獻[1]中,提出了一種XML近似查詢語言-ApproXQL以及基于該語言的近似查詢算法。為了獲得和查詢最近似的K個結(jié)果文檔,該文從樹編輯距離的角度出發(fā),通過對查詢表達式進行基于代價的查詢變異來評估用戶查詢和XML文檔之間的近似度,最后按XML文檔所對應的查詢變異代價總和來決定最好的K個查詢結(jié)果文檔。但查詢的實現(xiàn),需要人工設定查詢結(jié)構(gòu)中各結(jié)點的插入、重命名等變異操作的代價,并且在變異查詢數(shù)量很多的情況下,求解最優(yōu)的K個結(jié)果文檔的效率并不高,另外,該文并沒有考慮多DTD下XML文檔查詢的多樣性問題。
發(fā)明內(nèi)容
為了克服上述現(xiàn)有技術(shù)存在的缺陷或不足,本發(fā)明提供了一種基于多樣性XML文檔的近似查詢方法,能夠?qū)Χ郉TD下的XML文檔集按照一種統(tǒng)一的方式提出查詢,并通過兩次查詢重寫準確地查詢出滿足用戶查詢需求XML文檔序列,并按近似度高低進行排序。
本發(fā)明的技術(shù)方案是這樣實現(xiàn)的 XML文檔多樣性處理模塊采用基于PTO模型的映射規(guī)則自動生成算法將用戶在全局查詢模式下提出的原始查詢重寫為不同DTD下的重寫查詢樹;單DTD下XML文檔近似查詢模塊利用重寫查詢樹,結(jié)合基本變異操作,通過對變異查詢樹的多次精確嵌入實現(xiàn)了單DTD下XML文檔集的近似查詢;查詢代價評估模塊采用基于XML樣本數(shù)據(jù)分布統(tǒng)計的方法,計算了每一個查詢結(jié)果的查詢代價;Top-K問題求解模塊通過對結(jié)點進行區(qū)間編碼,并借助最優(yōu)變異查詢樹的預先估計,最終實現(xiàn)了對多樣性XML文檔查詢的Top-K求解。
XML文檔多樣性處理模塊的實現(xiàn)步驟如下 1)依據(jù)基于本體的全局查詢模式,按照面向?qū)ο蟛樵冋Z言提出原始查詢; 2)依據(jù)PTO模型(v1,v2)->c1.role,c2.inverse(role)|c3.attribute,按如下步驟建立DTD和全局查詢模式之間的映射規(guī)則集 (1)廣度優(yōu)先遍歷DTD樹TDTD,抽取TDTD中每條有向邊對應的結(jié)點v1和v2,若已遍歷結(jié)束,轉(zhuǎn)步(4);否則,轉(zhuǎn)步(2); (2)查找v1和v2在全局查詢模式圖G中對應的概念結(jié)點v1和v2或?qū)傩詀ttribute,若找到,轉(zhuǎn)步(3);否則,把二元組(v1,v2)加入集合Set1中,轉(zhuǎn)步(1); (3)如果找到的是兩個概念結(jié)點c1和c2,則生成規(guī)則(v1,v2)->c’1.role,c’2.inverse(role),轉(zhuǎn)步(1);如果找到的是一個概念結(jié)點c1和屬性attribute,則生成規(guī)則(v1,v2)->c1.attribute,轉(zhuǎn)步(1); (4)對Set1集合中的二元組使用規(guī)則(x,y),(y,z)|-(x,z)進行擴展,將新生成的擴展二元組放入集合Set2; (5)遍歷集合Set2,抽取其中每一個元組中的結(jié)點v1和v2;若已遍歷結(jié)束,則終止算法;否則,轉(zhuǎn)步(6); (6)查找v1和v2在全局查詢模式圖G中對應的概念結(jié)點c1和c2或?qū)傩詀ttribute,若找到,轉(zhuǎn)步(7);否則,轉(zhuǎn)步(5); (7)如果找到的是兩個概念結(jié)點c1和c2,生成規(guī)則(v1,v2)->c’1.role,c’2.inverse(role)轉(zhuǎn)步(5);如果找到的是一個概念結(jié)點c1和屬性attribute,生成規(guī)則(v1,v2)->c1.attribute轉(zhuǎn)步(5); 3)利用生成的映射規(guī)則集按模式路徑,概念和角色逐一映射的方式將原始查詢改寫為不同DTD下的結(jié)構(gòu)謂詞集,并由結(jié)構(gòu)謂詞集進一步構(gòu)成為重寫查詢樹形式。
單DTD下XML文檔近似查詢模塊按如下步驟進行實現(xiàn) 1)用重命名結(jié)點,刪除結(jié)點和插入結(jié)點這幾種基本變異操作組成可能的基本變異操作序列。
2)應用基本變異操作序列對重寫查詢樹進行變異,生成變異查詢樹。
3)將變異后得到的所有變異查詢樹根據(jù)其對應的嵌入代價構(gòu)成查詢閉包Q*; 4)從查詢閉包中取出當前嵌入代價最小的變異查詢樹對XML文檔集中的XML文檔樹依次進行精確嵌入; 5)如果滿足精確嵌入條件的結(jié)果個數(shù)大于或等于用戶指定的K個,則K個最優(yōu)解已形成,查詢終止;否則,若查詢結(jié)果集的個數(shù)小于K個,就按嵌入代價由低到高從查詢閉包中選取新的變異查詢樹,接著繼續(xù)進行精確嵌入,直到符合精確嵌入的結(jié)果個數(shù)大于等于K個為止。
在查詢代價評估模塊中,按如下步驟對查詢代價進行計算 1)按公式o(p)=tf(sp)*idf(sp)計算模式路徑p的罰分,其中,tf(sp)為模式路徑謂詞頻,idf(sp)為模式路徑逆文檔頻; 2)按公式計算語詞間的相似度sim(v,c),其中,MinLen(v,c)代表語詞間的最短路徑長度,Depth()代表語詞在WordNet中的深度; 3)按公式d(r)=[2-sim(v1,c1)-sim(v2,c2)]*tf(sp)計算映射規(guī)則r的罰分,其中,v1,v2和c1,c2分別代表規(guī)則r兩端不同的語詞; 4)按公式計算重寫查詢樹Qs的重寫代價Cr(Qs),其中,P代表在得到重寫查詢樹Qs的查詢語句到DTD的映射過程中丟掉的模式路徑集; 5)按公式計算重命名結(jié)點操作代價,其中,w(vi)代表結(jié)點vi的權(quán)重,α為平衡因子,βnaming為重命名因子; 6)按公式Cdel(vi)=α*βdel*(wmax-w(vi))計算刪除結(jié)點操作代價; 7)按公式Cinse(vi)=α*βinse*w(vi)計算插入結(jié)點操作代價; 8)按公式計算變異查詢樹Q’的嵌入代價Ce(Q’),其中,c(zi)代表應用某種基本變異操作zi的代價; 9)按公式CQ=Cr(Qs)+Ce(Q’)對查詢代價CQ進行計算。
Top-K問題求解模塊按如下步驟實現(xiàn)了對多樣性XML近似查詢過程中Top-K個查詢答案的順序求解 1)對XML文檔樹中的結(jié)點按如下方式進行編碼regionCode=(begin,end,pathcost,Cinse),式中,begin代表對文檔樹進行前序遍歷時結(jié)點的序號,end是遍歷完該結(jié)點的所有子孫結(jié)點后再一次訪問該結(jié)點時的序號,pathcost是該結(jié)點所有祖先結(jié)點的插入代價的總和,Cinse是該結(jié)點的插入代價; 2)利用公式Cinse(v1,v2)=pathcost(v2)-pathcost(v1)-Cinse(v1)計算在變異查詢樹的精確嵌入過程中它所包含的AD關(guān)系的結(jié)構(gòu)謂詞(v1 ,v2)嵌入到文檔樹中所需插入到v1和v2之間的結(jié)點代價之和,其中,v1是v2的祖先結(jié)點; 3)對精確嵌入所需滿足的條件擴展為在查詢樹中指定為PC關(guān)系的結(jié)構(gòu)謂詞在文檔樹中進行嵌入時,可以擴展為祖先后代關(guān)系進行完全匹配; 4)從查詢閉包Q*中按如下條件Min(|Answer(Qi’)-K|)=|Answer(Qb’)-K|(1<i<n),選取最優(yōu)變異查詢樹Qb’,其中,Qi’代表Q*中的任意變異查詢樹; 5)對Q*中的所有的Q’按CQ從低到高排序,并從Q*中彈出Qb’作為當前變異查詢樹。
6)對當前變異查詢樹和文檔集Ds執(zhí)行精確嵌入。在精確嵌入過程中,擴展為AD關(guān)系的結(jié)構(gòu)謂詞(在變異查詢樹中被指定為PC關(guān)系)所在的文檔樹也將被保留,同時計算在PC關(guān)系的結(jié)構(gòu)謂詞嵌入過程中所需的插入代價Cinse。如果有滿足精確嵌入的四個條件的查詢結(jié)果,就將其放入查詢結(jié)果集中,并用Cinse和CQ之和來衡量當前查詢結(jié)果的匹配近似度; 7)如果Q*為空,則返回步4),否則轉(zhuǎn)一下步; 8)如果當前查詢結(jié)果集中的結(jié)果個數(shù)小于K,則從Q*中的當前位置順序彈出下一棵變異查詢樹Q’作為當前變異查詢樹,并轉(zhuǎn)步7);否則轉(zhuǎn)下一步; 9)從查詢閉包中按查詢代價從小到大順序彈出Qb’之前的變異查詢樹,并對步7)中累積得到的結(jié)果文檔集逐次進行精確嵌入,同時用這些變異查詢樹的Cinse和CQ的代價之和來進一步確認每次精確嵌入后返回的查詢結(jié)果和查詢Q的近似程度,并按其近似度值插入到查詢結(jié)果集的適當位置中去,最后返回K個按近似度由高到低排列的結(jié)果文檔序列給用戶。
采用本發(fā)明,可實現(xiàn)一種基于多樣性XML文檔的結(jié)構(gòu)化查詢系統(tǒng)。該系統(tǒng)可廣泛應用于各種領域中基于XML文檔格式描述的信息內(nèi)容的結(jié)構(gòu)化查詢。在利用該系統(tǒng)進行查詢時,基于全局查詢模式,用戶能夠以統(tǒng)一的方式提出查詢,最后返回給用戶按查詢近似度由高到低排列的查詢結(jié)果序列。并且,通過使用基于樣本數(shù)據(jù)分布統(tǒng)計的代價計算方法,從而將專家的先驗知識和后臺樣本的統(tǒng)計信息的后驗知識結(jié)合在了一起,使得系統(tǒng)針對多樣性XML文檔集進行查詢時具有較高的查準率,查詢結(jié)果的近似度更加接近用戶的語義要求;通過采用TRAXQ算法的兩階段查詢方式,使得系統(tǒng)針對多樣性XML文檔集進行查詢時具有較高的查全率;通過采用Top-K問題求解的優(yōu)化方法使得系統(tǒng)在理想情況下只對后臺XML文檔集掃描一次就能完成一次查詢,從而具有較高的查詢效率。
圖1為本發(fā)明組成結(jié)構(gòu)圖; 圖2為本發(fā)明用戶全局查詢模式圖; 圖3為本發(fā)明全局查詢模式和DTD之間的映射規(guī)則集示意圖; 圖3(a)表示數(shù)據(jù)源S1下的DTD及其映射規(guī)則集; 圖3(b)表示數(shù)據(jù)源S2下的DTD及其映射規(guī)則集; 圖4為本發(fā)明基于PTO模型的映射規(guī)則集示意圖; 圖5為本發(fā)明重寫查詢樹示意圖; 圖6為本發(fā)明帶有區(qū)間編碼的XML文檔樹示意圖; 下面結(jié)合附圖對本發(fā)明的內(nèi)容作進一步詳細說明。
具體實施例方式 圖1中XML文檔多樣性處理模塊采用基于PTO模型的映射規(guī)則自動生成算法將用戶在全局查詢模式下提出的原始查詢重寫為不同DTD下的重寫查詢樹;單DTD下XML文檔近似查詢模塊利用重寫查詢樹,結(jié)合基本變異操作,通過對變異查詢樹的多次精確嵌入實現(xiàn)了單DTD下XML文檔集的近似查詢;查詢代價評估模塊采用基于XML樣本數(shù)據(jù)分布統(tǒng)計的方法,計算了每一個查詢結(jié)果的查詢代價;Top-K問題求解模塊通過對結(jié)點進行區(qū)間編碼,并借助最優(yōu)變異查詢樹的預先估計,最終實現(xiàn)了對多樣性XML文檔近似查詢的Top-K求解。
圖2顯示了一個關(guān)于書籍出版領域XML數(shù)據(jù)集成系統(tǒng)的全局查詢模式。它用一個標記圖來描述。其中方框表示概念,實線箭頭表示角色或?qū)傩裕摼€箭頭表示繼承關(guān)系,String則是屬性的類型。每一個角色同時給出其逆角色,用圓括號加以標注。
圖3顯示了書籍出版領域的兩種不同的DTD及其和圖2所示的全局查詢模式之間的映射規(guī)則集。其左邊部分是數(shù)據(jù)源S1下的DTD及其映射規(guī)則集,右邊部分是數(shù)據(jù)源S2下的DTD及其映射規(guī)則集。數(shù)據(jù)源S1下的映射規(guī)則共有7條,每條的左邊部分是XPath路徑,右邊部分是全局查詢模式圖中的概念或角色。數(shù)據(jù)源S2下的映射規(guī)則共有7條,每條的左邊部分是XPath路徑,右邊部分是全局查詢模式圖中的概念或角色。
圖3(a)顯示了數(shù)據(jù)源S1下的DTD及其和圖2所示的全局查詢模式之間的映射規(guī)則集。圖中上半部分表示數(shù)據(jù)源S1下的一種DTD,下半部分表示該DTD和全局查詢模式圖之間的映射規(guī)則集。映射規(guī)則共有7條,每條的左邊部分是XPath路徑,右邊部分是全局查詢模式圖中的概念或角色。
圖3(b)顯示了數(shù)據(jù)源S2下的DTD及其和圖2所示的全局查詢模式之間的映射規(guī)則集。圖中上半部分表示數(shù)據(jù)源S2下的一種DTD,下半部分表示該DTD和全局查詢模式圖之間的映射規(guī)則集。映射規(guī)則共有7條,每條的左邊部分是XPath路徑,右邊部分是全局查詢模式圖中的概念或角色。
圖4顯示了數(shù)據(jù)源S1下的DTD與全局查詢模式之間的,基于PTO模型的映射規(guī)則集。其中,映射規(guī)則共有7條,每條的左邊是結(jié)構(gòu)謂詞,右邊是一條或多條模式路徑。
圖5顯示了查詢Q經(jīng)圖4中的映射規(guī)則集轉(zhuǎn)化后得到的結(jié)構(gòu)謂詞集{(book,title),(book,publisher),(publisher,location),(book,author)}構(gòu)成的一棵重寫查詢樹,樹中包含5個查詢結(jié)點,查詢結(jié)點book代表根結(jié)點,單線箭頭代表查詢結(jié)點之間的父子關(guān)系,根結(jié)點指明了當前所要查詢的范圍,葉子結(jié)點描述了所要查詢的具體信息,內(nèi)部結(jié)點指明了具體信息所在的上下文。
圖6顯示了一棵帶有區(qū)間編碼regionCode=(begin,end,pathcost,Cinse)的汽車外形XML文檔樹,其中,實心結(jié)點代表XML文檔中的關(guān)鍵詞,空心結(jié)點代表XML文檔中的元素或?qū)傩裕招慕Y(jié)點的區(qū)間編碼帶有全部的四個元素項,而實心結(jié)點沒有end和Cinse元素項。
基于多樣性XML文檔的近似查詢方法的組成與工作原理 如圖1所示,基于多樣性XML文檔的近似查詢方法包括XML文檔多樣性處理,單DTD下XML文檔近似查詢,查詢代價評估和Top-K問題求解四個部分。
XML文檔多樣性處理 PTO映射模型 圖2是一個關(guān)于書籍出版領域XML數(shù)據(jù)集成系統(tǒng)的全局查詢模式,它用一個標記圖來描述。其中方框表示概念,實線箭頭表示角色或?qū)傩?,虛線箭頭表示繼承關(guān)系,String則是屬性的類型。每一個角色同時給出其逆角色,用圓括號加以標注。
假設有2個XML數(shù)據(jù)源S1和S2,它們的DTD及映射規(guī)則集Rs如圖3所示。
若一位汽車外形設計人員要查詢“作者JK.Rose的《現(xiàn)代汽車外形設計》的出版地”,在全局查詢模式下基于對象查詢語言,查詢語句Q可表示如下 select cfrom book a,a.has_titleb, a.published_by.located_in c, a.written_by.has_name d whereb=“現(xiàn)代汽車外形設計”and d=“JK.Rose” 具體到數(shù)據(jù)源S1,利用S1下的映射規(guī)則Rs,Q將被轉(zhuǎn)化為查詢Q(S1),即 selectcfrom url1/booka, a./titleb,a./publisher./location c,a./info./author./@name d Whereb=“現(xiàn)代汽車外形設計”and d=“JK.Rose” 圖3中映射規(guī)則的左端是一條XPath路徑,右端是全局查詢模式中相關(guān)的概念及角色。本發(fā)明構(gòu)造的適用于多樣性XML近似查詢的映射模型PTO,其結(jié)構(gòu)為 (v1,v2)->c1.role,c2.inverse(role)|c3.attribute(1) 式中(v1,v2)是DTD蘊涵的結(jié)構(gòu)謂詞,它表示父子關(guān)系或祖先后代關(guān)系;c1.role是一條包含單一角色的模式路徑;c2.inverse(role)是另一條模式路徑,其中c2是c1.role代表的概念,inverse(role)表示role的逆角色;c3.attribute由概念c3和單一屬性組成;“|”符號是或者的意思,表示對于每一條規(guī)則,角色和屬性只能出現(xiàn)一種。
具體到數(shù)據(jù)源S1的DTD,構(gòu)造的基于PTO模型的Rs如圖4所示。例如對于上文提出的查詢Q,使用圖4中的PTO映射規(guī)則集進行轉(zhuǎn)化,將得到針對數(shù)據(jù)源S1下查詢Q(S1)的結(jié)構(gòu)謂詞集{(book,title),(book,publisher),(publisher,location),(book,author)}。該結(jié)構(gòu)謂詞集可進一步重構(gòu)為數(shù)據(jù)源S1下的重寫查詢樹形式,如圖5所示。
單DTD下XML文檔的近似查詢方法 查詢變異 對重寫查詢樹的查詢變異相當于對查詢樹的查詢條件進行松弛,它是通過運用基本變異操作來實現(xiàn)的,其定義如下 定義1(重寫查詢樹)給定一條全局查詢模式下的用戶查詢Q和一個特定的DTD,若在全局查詢模式和特定DTD之間存在一個基于PTO模型的映射規(guī)則集Rs,那么根據(jù)Rs對Q重寫后生成的查詢樹稱為面向該DTD的重寫查詢樹,記為Qs。
定義2(基本變異操作)給定一棵重寫查詢樹Qs,若存在某種樹編輯操作對Qs作出修改后,使得原有的查詢語義得到擴展,那么將該樹編輯操作稱為基本變異操作,記為z。
本發(fā)明中所使用到的幾種基本變異操作包括插入結(jié)點操作,刪除結(jié)點操作和重命名結(jié)點操作。
定義3(變異操作序)由一組任意的基本變異操作構(gòu)成的序列稱為變異操作序,記為Z=(z1,z2,...,zn),其中zi代表一個基本變異操作。
定義4(變異查詢樹)將一個指定的變異操作序Z應用到重寫查詢樹Qs之后得到的查詢樹稱為變異查詢樹,記為Q’。
近似嵌入 變異查詢樹擴大了重寫查詢樹的查詢范圍,使得基于變異查詢樹的查詢結(jié)果和原有的查詢語義之間有一定的距離,這種距離可以看作是查詢結(jié)果的近似度,它可以通過變異過程中的代價計算來進行度量。
定義5(基本變異操作代價)對重寫查詢樹執(zhí)行基本變異操作后造成的查詢語義損失稱為基本變異操作代價,它是大于0的實數(shù)。
定義6(嵌入代價)給定一棵重寫查詢樹Qs和一組基本變異操作z1,....,zn,若Q’是應用z1,...,zn到Qs得到的一棵變異查詢樹,那么變異查詢樹Q’的嵌入代價可表示為 式中,Ce(Q’)代表關(guān)于Q’的嵌入代價,c(zi)代表基本變異操作zi的代價。
嵌入代價可以用來衡量基于變異查詢樹的精確查詢結(jié)果和重寫查詢樹所表示的查詢條件之間的近似程度。
定義7(查詢代價)給定一棵重寫查詢樹Qs和其對應的一棵變異查詢樹Q’,若存在和Q’滿足精確嵌入條件的結(jié)果文檔D,那么將Qs的重寫代價Cr與Q’的嵌入代價Ce之和稱為對該結(jié)果文檔D的查詢代價,記為CQ=Cr+Ce。
查詢代價可用來衡量基于變異查詢樹的精確查詢結(jié)果和原始查詢所表示的查詢條件之間的近似程度。
定義8(查詢閉包)給定一棵重寫查詢樹Qs,若Q’(Zi)是將一個變異操作序Zi應用到Qs之后得到一個變異查詢樹,那么查詢閉包可被定義為 式中,當Zi=φ時,Q’(Zi)=Qs,并且有Ce(Q’(Zi+1))>Ce(Q’(Zi))。
定義9(近似嵌入)給定一個文檔集Ds和一棵重寫查詢樹Qs,若用Q*代表Qs的查詢閉包,用二元組(TD,CQ)來代表Q*中的一棵變異查詢樹的查詢結(jié)果,其中,TD代表與該變異查詢樹滿足精確嵌入條件的文檔樹,CQ代表TD對應的查詢代價,那么對Q*所對應的所有的二元組(TD,CQ)的求解被稱為Qs的近似嵌入。
從定義9可以看出,針對重寫查詢樹Qs的近似查詢問題可以被轉(zhuǎn)化為針對查詢閉包的多次精確查詢的問題來求解,解決XML近似查詢的算法必須能夠發(fā)現(xiàn)查詢閉包中所有變異查詢樹的精確嵌入結(jié)果。
查詢代價評估方法 查詢代價是衡量查詢結(jié)果近似度的重要依據(jù),其主要包括兩個部分基于重寫查詢樹的重寫代價和基于變異查詢樹的嵌入代價。
重寫代價 定義10(重寫代價)給定一個全局查詢模式G和用戶查詢Q,若存在G到某一特定DTD的映射規(guī)則集R,那么在利用R將Q重寫為Qs的過程中所產(chǎn)生的模式路徑罰分和映射規(guī)則罰分之和稱為重寫代價,記為 式中,Cr(Qs)表示關(guān)于重寫查詢樹Qs的重寫代價,P為用戶查詢語句映射到該DTD后丟掉的模式路徑集,o(p)代表模式路徑p的罰分,d(r)代表映射規(guī)則r的罰分。
下面結(jié)合XML樣本數(shù)據(jù)分布統(tǒng)計的方法來定義模式路徑罰分的計算公式。
給定一條包含單一角色的模式路徑c1.role,與其互補的逆角色模式路徑為c2.inverse(role),它們對應相同的模式路徑謂詞頻tf(sp),其計算形式如下 tf(sp)=#sp/(#c1*#c2)(5) 式中,sp是模式路徑對應的結(jié)構(gòu)謂詞實例,#i代表元素i在整個XML文檔集中出現(xiàn)的次數(shù)。
給定一條包含單一角色的模式路徑c1.role,與其互補的逆角色模式路徑為c2.inverse(role),它們對應相同的模式路徑逆文檔頻idf(sp),其計算形式如下 idf(sp)=lg(|Ds|/|{D∈Dsmatch(sp,D)}|)(6) 式中|Ds|為文檔集Ds包含的文檔數(shù);D為XML文檔集Ds中的一個文檔;match(sp,D)表示文檔D包含結(jié)構(gòu)謂詞sp;|{D∈Dsmatch(sp,D)}|為文檔集Ds中包含結(jié)構(gòu)謂詞sp的文檔數(shù)。
給定一條包含單一角色的模式路徑c1.role,與其互補的逆角色模式路徑為c2.inverse(role),它們對應相同的模式路徑罰分o(),其計算形式如下 o(c1.role)=o(c2.inverse(role))=tf(sp)*idf(sp)(7) 對包含屬性的模式路徑罰分的計算方法類似,唯一不同的是包含屬性的模式路徑?jīng)]有互補的逆角色模式路徑,其對應的結(jié)構(gòu)謂詞的一個結(jié)點需要從屬性中提取。
根據(jù)定義10,映射規(guī)則本身也要定義罰分,因為映射規(guī)則兩端的概念在語義上并非總是等價的,有時它只是一個近似的轉(zhuǎn)換。本發(fā)明采用in-depth語義方法來處理這個問題。通過比較兩個語詞在詞匯網(wǎng)絡WordNet的超類層次中的深度和連接兩個語詞的最短路徑長度來計算它們之間的相似度。例如,針對(book,article)的語義相似度可按下式計算 式中,sim()代表語詞間的相似度函數(shù),MinLen()函數(shù)給出語詞間的最短路徑長度;Depth()函數(shù)給出語詞在WordNet中的深度。
那么,對于映射規(guī)則r(v1,v2) c1.role,c2.inverse(role),其罰分d(r)的計算形式如下 d(r)=[2-sim(v1,c1)-sim(v2,c2)]*tf(sp)(10) 式中tf(sp)是結(jié)構(gòu)謂詞(v1,v2)的謂詞頻。若映射規(guī)則右端為包含屬性的模式路徑,其罰分的計算方法類似,唯一不同的是對應的結(jié)構(gòu)謂詞sp的一個結(jié)點需要從屬性中提取。
嵌入代價 根據(jù)定義6,嵌入代價是應用到重寫查詢樹上的所有基本變異操作的代價總和,那么計算嵌入代價的問題就轉(zhuǎn)化為計算基本變異操作代價的問題。下面結(jié)合樣本數(shù)據(jù)分布統(tǒng)計的方法,通過衡量基本變異操作造成的查詢語義損失來對代價進行求解。
1)重命名代價 重命名代價指的是將一個結(jié)點的標記更新為該結(jié)點的父結(jié)點或者兄弟結(jié)點的標記所需要的代價。例如,將結(jié)點vs更新為它的祖先結(jié)點ve所需重命名代價的計算步驟如下 (1)根據(jù)DTD樹,求出結(jié)點vs和結(jié)點ve之間的最短路徑; (2)統(tǒng)計該最短路徑所經(jīng)過的結(jié)點; (3)累加這些結(jié)點的權(quán)重作為重命名結(jié)點vs所需的代價,記為Cnaming(vs), 其計算公式如下 式中,Vse代表最短路徑所包含的結(jié)點集,n代表結(jié)點集的大小,w(vi)代表結(jié)點vi∈Vse的權(quán)重,α為平衡因子,可以用來調(diào)整結(jié)點和該結(jié)點構(gòu)成的結(jié)構(gòu)謂詞之間的頻度差異,βnaming為重命名因子,可以用來調(diào)整因為環(huán)境上下文引起的權(quán)重和重命名代價之間轉(zhuǎn)換的等價度。
如何定義XML文檔樹中每個結(jié)點的權(quán)重w(vi)是接下來需解決的關(guān)鍵問題。一個結(jié)點的權(quán)重和兩個因素有關(guān)(1)所處的位置;(2)出現(xiàn)的頻率。在XML文檔樹中所處的位置越高,出現(xiàn)的頻率越大,則該結(jié)點的權(quán)重也越大。因此,w(vi)的計算公式可定義如下 式中,N代表結(jié)點vi在XML文檔集中出現(xiàn)的次數(shù),Nnormal是標準頻數(shù),即預先統(tǒng)計得出的所有結(jié)點出現(xiàn)的平均次數(shù)。(N/Nnormal)表示結(jié)點vi出現(xiàn)的相對頻倍,它的值越高,說明結(jié)點vi出現(xiàn)的頻率越大,從而導致它的權(quán)重也越大。Hj(vi)是一個度量結(jié)點vi在第j次出現(xiàn)時所在位置重要性的函數(shù),它的計算公式如下 Hj(vi)=Lvi/Ltree(13) 式中,Lvi代表結(jié)點vi在當前所在的XML文檔樹中所在的層數(shù),根結(jié)點位于最高層,Ltree代表XML文檔樹的總層數(shù)。
2)刪除代價 由于一個結(jié)點的權(quán)重和該結(jié)點在文檔集中出現(xiàn)的頻率成正比,因此該結(jié)點的權(quán)重越大,那么刪除該結(jié)點所需要的代價就越小。設結(jié)點權(quán)重的上限值為wmax;那么刪除一個結(jié)點vi的代價為 Cdel(vi)=α*βdel*(wmax-w(vi))(14) 式中,w(vi)為結(jié)點vi的權(quán)重,βdel為刪除因子,可以用來調(diào)整因為環(huán)境環(huán)境上下文引起的權(quán)重和刪除代價之間轉(zhuǎn)換的等價度。特殊地,當結(jié)點權(quán)重取上限值時,它的刪除代價就為0。
3)插入代價 插入結(jié)點就相當于在查詢樹中增加新的結(jié)點。和刪除一個結(jié)點的代價的計算方法相反,插入結(jié)點的代價和新增加的該結(jié)點權(quán)重的大小成正比,也就是說該結(jié)點在數(shù)據(jù)集中出現(xiàn)的頻率越大則插入它的代價也越大,因此插入一個結(jié)點vi的代價為 Cinse(vi)=α*βinse*w(vi)(15) 式中,w(vi)為結(jié)點vi的權(quán)重,βinse為插入因子,可以用來調(diào)整因為環(huán)境上下文引起的權(quán)重和插入代價之間轉(zhuǎn)換的等價度。
Top-K問題求解的優(yōu)化方法 查詢閉包的有效和有序性 在單DTD下XML文檔近似查詢模塊中需要依據(jù)查詢代價對查詢閉包中所有的變異查詢樹從低到高進行排序,查詢閉包的有效性和有序性是順序求解Top-K個查詢結(jié)果文檔的重要因素。要確保查詢閉包的有效性和有序性,有兩個問題需要關(guān)注1)求解有效地變異查詢樹;2)求解變異查詢樹的嵌入代價。本發(fā)明利用以下三個方法來解決以上兩個問題 a)利用基本變異操作的限制規(guī)則精簡出切實有效地變異查詢樹,構(gòu)成變異查詢樹的最小閉包集; b)對XML文檔樹中的結(jié)點進行編碼,生成帶有如下區(qū)間編碼的文檔樹來解決盲目的結(jié)點插入操作帶來復雜性問題 regionCode=(begin,end,pathcost,Cinse)(16) 式中,begin代表對文檔樹進行前序遍歷時結(jié)點的序號,end是遍歷完該結(jié)點的所有子孫結(jié)點后再一次訪問該結(jié)點時的序號,pathcost是該結(jié)點所有祖先結(jié)點的插入代價的總和,Cinse是該結(jié)點的插入代價。
在變異查詢樹的精確嵌入過程中,通過regionCode可以計算它所包含的AD關(guān)系的結(jié)構(gòu)謂詞(v1,v2)嵌入到文檔樹中所需的結(jié)點插入代價,其計算公式如下 Cinse(v1,v2)=pathcost(v2)-pathcost(v1)-Cinse(v1)(17) 其中v1是v2的祖先結(jié)點,Cinse(v1,v2)代表結(jié)構(gòu)謂詞(v1,v2)在嵌入過程中所需插入到v1和v2之間的結(jié)點代價之和,它將作為變異查詢樹的嵌入代價Ce的一部分。
圖6是一棵帶有區(qū)間編碼regionCode的汽車外形XML文檔樹,其中內(nèi)部結(jié)點的區(qū)間編碼帶有全部的四個元素項,而葉子結(jié)點沒有end和Cinse元素項。
c)對精確嵌入所需滿足的第四個條件進行擴展在查詢樹中指定為PC關(guān)系的查詢謂詞在文檔樹中進行嵌入時,可以擴展為祖先后代關(guān)系進行完全匹配。
最優(yōu)變異查詢樹 定義11(最優(yōu)變異查詢樹)給定查詢閉包Q*,如果Q*中的一棵變異查詢樹Qb’滿足如下條件,那么該Qb’稱為最優(yōu)變異查詢樹。
Min(|Answer(Qi’)-K|)=|Answer(Qb’)-K| (1<i<n)(18) 式中,Answer()代表Q*中任意一棵變異查詢樹Qi’對XML文檔集執(zhí)行一次精確嵌入后得到的查詢結(jié)果個數(shù),Min()代表最小值,n代表Q*中變異查詢樹的總個數(shù),K代表用戶希望返回的查詢結(jié)果的個數(shù)。
根據(jù)定義11,Qb’是查詢閉包中第一個單獨對XML文檔集執(zhí)行精確嵌入后得到的結(jié)果文檔的個數(shù)等于或大于K的變異查詢樹。因此,通過求解最優(yōu)變異查詢樹,可進一步對查詢閉包中變異查詢樹的選擇策略進行優(yōu)化。結(jié)合查詢閉包的Top-K順序求解過程,基于兩階段查詢重寫的多樣性XML文檔近似查詢算法-TRAXQ的執(zhí)行步驟如下 1.利用PTO映射模型建立全局查詢模式和XML文檔集所包含的所有DTD間的映射規(guī)則集Rs; 2.利用Rs,對全局查詢模式下的用戶查詢Q進行重寫,得到針對每一種DTD的重寫查詢樹Qs,并在此過程中計算Qs的重寫代價Cr; 3.利用Cr對不同DTD下的Qs從低到高進行排序,形成Qs隊列; 4.若Qs隊列為空,則終止查詢,否則從當前Qs隊列中彈出Cr分值最低的Qs; 5.對當前重寫查詢樹Qs應用重命名、刪除內(nèi)部結(jié)點和刪除葉子結(jié)點這三種基本變異操作(不包括插入結(jié)點操作)構(gòu)成變異操作序,并建立按變異操作代價之和Cnaming,del由低到高排列的變異查詢樹構(gòu)成的查詢閉包Q*,并將Q*中每棵變異查詢樹Q’對應的Cnaming,del和Qs的重寫代價Cr之和作為Q’的查詢代價CQ; 6.對Q*中的所有的Q’按CQ從低到高排序,并從Q*中彈出Qb’作為當前變異查詢樹。
7.對當前變異查詢樹和文檔集Ds執(zhí)行精確嵌入。在精確嵌入過程中,擴展為AD關(guān)系的結(jié)構(gòu)謂詞(在變異查詢樹中被指定為PC關(guān)系)所在的文檔樹也將被保留,同時計算在PC關(guān)系的結(jié)構(gòu)謂詞嵌入過程中所需的插入代價Cinse。如果有滿足精確嵌入的四個條件的查詢結(jié)果,就將其放入查詢結(jié)果集中,并用Cinse和CQ之和來衡量當前查詢結(jié)果的匹配近似度; 8.如果Q*為空,則返回步4,否則轉(zhuǎn)一下步; 9.如果當前查詢結(jié)果集中的結(jié)果個數(shù)小于K,則從Q*中的當前位置順序彈出下一棵變異查詢樹Q’作為當前變異查詢樹,并轉(zhuǎn)步7;否則轉(zhuǎn)下一步; 10.從查詢閉包中按查詢代價從小到大順序彈出Qb’之前的變異查詢樹,并對步7中累積得到的結(jié)果文檔集逐次進行精確嵌入,同時用這些變異查詢樹的Cinse和CQ的代價之和來進一步確認每次精確嵌入后返回的查詢結(jié)果和查詢Q的近似程度,并按其近似度值插入到查詢結(jié)果集的適當位置中去,最后返回K個按近似度由高到低排列的結(jié)果文檔序列給用戶,算法終止。
權(quán)利要求
1.一種基于多樣性XML文檔近似查詢方法,其特征在于該方法包括XML文檔多樣性處理,單DTD下XML文檔近似查詢,查詢代價評估和Top-K問題求解四個部分;
XML文檔多樣性處理模塊采用基于PTO模型的映射規(guī)則自動生成算法將用戶在全局查詢模式下提出的原始查詢重寫為不同DTD下的重寫查詢樹;單DTD下XML文檔近似查詢模塊利用重寫查詢樹,結(jié)合基本變異操作,通過對變異查詢樹的多次精確嵌入實現(xiàn)了單DTD下XML文檔集的近似查詢;查詢代價評估模塊采用基于XML樣本數(shù)據(jù)分布統(tǒng)計的方法,計算了每一個查詢結(jié)果的查詢代價;Top-K問題求解模塊通過對結(jié)點進行區(qū)間編碼,并借助最優(yōu)變異查詢樹的預先估計,最終實現(xiàn)了對多樣性XML文檔近似查詢的Top-K求解。
2.根據(jù)權(quán)利要求1所述的一種基于多樣性XML文檔近似查詢方法,其特征在于,XML文檔多樣性處理模塊的實現(xiàn)步驟如下
1)依據(jù)基于本體的全局查詢模式,按照面向?qū)ο蟛樵冋Z言提出原始查詢;
2)依據(jù)PTO模型(v1,v2)->c1.role,c2.inverse(role)|c3.attribute,按如下步驟建立DTD和全局查詢模式之間的映射規(guī)則集
(1)廣度優(yōu)先遍歷DTD樹TDTD,抽取TDTD中每條有向邊對應的結(jié)點v1和v2,若已遍歷結(jié)束,轉(zhuǎn)步(4);否則,轉(zhuǎn)步(2);
(2)查找v1和v2在全局查詢模式圖G中對應的概念結(jié)點v1和v2或?qū)傩詀ttribute,若找到,轉(zhuǎn)步(3);否則,把二元組(v1,v2)加入集合Set1中,轉(zhuǎn)步(1);
(3)如果找到的是兩個概念結(jié)點c1和c2,則生成規(guī)則(v1,v2)->c’1.role,c’2.inverse(role),轉(zhuǎn)步(1);如果找到的是一個概念結(jié)點c1和屬性attribute,則生成規(guī)則(v1,v2)->c1.attribute,轉(zhuǎn)步(1);
(4)對Set1集合中的二元組使用規(guī)則(x,y),(y,z)|-(x,z)進行擴展,將新生成的擴展二元組放入集合Set2;
(5)遍歷集合Set2,抽取其中每一個元組中的結(jié)點v1和v2;若已遍歷結(jié)束,則終止算法;否則,轉(zhuǎn)步(6);
(6)查找v1和v2在全局查詢模式圖G中對應的概念結(jié)點c1和c2或?qū)傩詀ttribute,若找到,轉(zhuǎn)步(7);否則,轉(zhuǎn)步(5);
(7)如果找到的是兩個概念結(jié)點c1和c2,生成規(guī)則(v1,v2)->c’1.role,c’2.inverse(role)轉(zhuǎn)步(5);如果找到的是一個概念結(jié)點c1和屬性attribute,生成規(guī)則(v1,v2)->c1.attribute轉(zhuǎn)步(5);
3)利用生成的映射規(guī)則集按模式路徑,概念和角色逐一映射的方式將原始查詢改寫為不同DTD下的結(jié)構(gòu)謂詞集,并由結(jié)構(gòu)謂詞集進一步構(gòu)成為重寫查詢樹形式。
3.根據(jù)權(quán)利要求1所述的一種基于多樣性XML文檔近似查詢方法,其特征在于,單DTD下XML文檔近似查詢模塊按如下步驟進行實現(xiàn)
1)利用重命名結(jié)點,刪除結(jié)點和插入結(jié)點這幾種基本變異操作組成可能的基本變異操作序列;
2)應用基本變異操作序列對重寫查詢樹進行變異,生成變異查詢樹;
3)將變異后得到的所有變異查詢樹根據(jù)其對應的嵌入代價構(gòu)成查詢閉包Q*;
4)從查詢閉包中取出當前嵌入代價最小的變異查詢樹對XML文檔集中的XML文檔樹依次進行精確嵌入;
5)如果滿足精確嵌入條件的結(jié)果個數(shù)大于或等于用戶指定的K個,則K個最優(yōu)解已形成,查詢終止;否則,若查詢結(jié)果集的個數(shù)小于K個,就按嵌入代價由低到高從查詢閉包中選取新的變異查詢樹,接著繼續(xù)進行精確嵌入,直到符合精確嵌入的結(jié)果個數(shù)大于等于K個為止。
4.根據(jù)權(quán)利要求1所述的一種基于多樣性XML文檔近似查詢方法,其特征在于,在查詢代價評估模塊中,采用基于XML樣本數(shù)據(jù)分布統(tǒng)計的方法,按如下步驟和公式對查詢代價及其相關(guān)元素進行計算
1)按公式o(p)=tf(sp)*·idf(sp)計算模式路徑p的罰分,其中,tf(sp)為模式路徑謂詞頻,idf(sp)為模式路徑逆文檔頻;
2)按公式計算語詞間的相似度sim(v,c),其中,MinLen(v,c)代表語詞間的最短路徑長度,Depth()代表語詞在WordNet中的深度;
3)按公式d(r)=[2-sim(v1,c1)-sim(v2,c2)]*tf(sp)計算映射規(guī)則r的罰分,其中,v1,v2和c1,c2分別代表規(guī)則r兩端不同的語詞;
4)按公式計算重寫查詢樹Qs的重寫代價Cr(Qs),
其中,P代表在得到重寫查詢樹Qs的查詢語句到DTD的映射過程中丟掉的模式路徑集;
5)按公式計算重命名結(jié)點操作代價,其中,w(vi)代表結(jié)點vi的權(quán)重,α為平衡因子,βnaming為重命名因子;
6)按公式Cdel(vi)=α*βdel*(wmax-w(vi))計算刪除結(jié)點操作代價;
7)按公式Ginse(vi)=α*βinse*w(vi)計算插入結(jié)點操作代價;
8)按公式計算變異查詢樹Q’的嵌入代價Ce(Q’),其中,c(zi)代表應用某種基本變異操作zi的代價;
9)按公式Co=Cr(Qs)+Ce(Q’)對查詢代價CQ進行計算。
5.根據(jù)權(quán)利要求1所述的一種基于多樣性XML文檔近似查詢方法,其特征在于,Top-K問題求解模塊按如下步驟實現(xiàn)了對多樣性XML近似查詢過程中Top-K個查詢答案的順序求解
1)對XML文檔樹中的結(jié)點按如下方式進行編碼regionCode=(begin,end,pathcost,Cinse),式中,begin代表對文檔樹進行前序遍歷時結(jié)點的序號,end是遍歷完該結(jié)點的所有子孫結(jié)點后再一次訪問該結(jié)點時的序號,pathcost是該結(jié)點所有祖先結(jié)點的插入代價的總和,Cinse是該結(jié)點的插入代價;
2)利用公式Cinse(v1,v2)=pathcost(v2)-pathcost(v1)-Cinse(v1)計算在變異查詢樹的精確嵌入過程中它所包含的AD關(guān)系的結(jié)構(gòu)謂詞(v1,v2)嵌入到文檔樹中所需插入到v1和v2之間的結(jié)點代價之和,其中,v1是v2的祖先結(jié)點;
3)對精確嵌入所需滿足的條件擴展為在查詢樹中指定為PC關(guān)系的結(jié)構(gòu)謂詞在文檔樹中進行嵌入時,可以擴展為祖先后代關(guān)系進行完全匹配;
4)從查詢閉包Q*中按如下條件Min(|Answer(Qi’)-K|)=|Answer(Qb’)-K|(1<i<n),選取最優(yōu)變異查詢樹Qb’,其中,Qi’代表Q*中的任意變異查詢樹;
5)對Q*中的所有的Q’按CQ從低到高排序,并從Q*中彈出Qb’作為當前變異查詢樹;
6)對當前變異查詢樹和文檔集Ds執(zhí)行精確嵌入,在精確嵌入過程中,擴展為AD關(guān)系的結(jié)構(gòu)謂詞,在變異查詢樹中被指定為PC關(guān)系,它所在的文檔樹也將被保留,同時計算在PC關(guān)系的結(jié)構(gòu)謂詞嵌入過程中所需的插入代價Cinse,如果有滿足精確嵌入的四個條件的查詢結(jié)果,就將其放入查詢結(jié)果集中,并用Cinse和CQ之和來衡量當前查詢結(jié)果的匹配近似度;
7)如果Q*為空,則返回步4),否則轉(zhuǎn)一下步;
8)如果當前查詢結(jié)果集中的結(jié)果個數(shù)小于K,則從Q*中的當前位置順序彈出下一棵變異查詢樹Q’作為當前變異查詢樹,并轉(zhuǎn)步7);否則轉(zhuǎn)下一步;
9)從查詢閉包中按查詢代價從小到大順序彈出Qb’之前的變異查詢樹,并對步7)中累積得到的結(jié)果文檔集逐次進行精確嵌入,同時用這些變異查詢樹的Cinse和CQ的代價之和來進一步確認每次精確嵌入后返回的查詢結(jié)果和查詢Q的近似程度,并按其近似度值插入到查詢結(jié)果集的適當位置中去,最后返回K個按近似度由高到低排列的結(jié)果文檔序列給用戶。
全文摘要
本發(fā)明公開了一種基于多樣性XML文檔的XML近似查詢方法,XML文檔多樣性處理模塊采用基于PTO模型的映射規(guī)則自動生成算法將用戶在全局查詢模式下提出的原始查詢重寫為不同DTD下的重寫查詢樹;單DTD下XML文檔近似查詢模塊采用基本變異操作對重寫查詢樹進行查詢變異,利用得到的查詢閉包并結(jié)合多次精確嵌入對單DTD下的XML文檔集實現(xiàn)了近似查詢;查詢代價評估模塊采用基于XML樣本數(shù)據(jù)分布統(tǒng)計的方法,計算了每一個查詢結(jié)果的查詢代價;本發(fā)明針對多樣性XML文檔不僅能夠返回精確查詢結(jié)果,還能及時的返回帶有相似度分值的近似結(jié)果序列。
文檔編號G06F17/30GK101114291SQ20071001853
公開日2008年1月30日 申請日期2007年8月24日 優(yōu)先權(quán)日2007年8月24日
發(fā)明者征 覃, 衡星辰, 邵利平, 山 姜 申請人:西安交通大學