[摘 要]隨著XML數(shù)字圖書館的迅速發(fā)展,怎樣快速有效地對(duì)XML文檔進(jìn)行查詢和處理,正受到越來越多的重視,本文對(duì)XML數(shù)字圖書館檢索系統(tǒng)進(jìn)行了分類比較。并從檢索模型、文檔聚類、索引技術(shù)3個(gè)方面對(duì)XML數(shù)字圖書館檢索研究方向進(jìn)行了闡述。
[關(guān)鍵詞]XML檢索;檢索模型;文檔聚類;索引技術(shù)
DOI:10.3969/j.issn.1008-0821.2010.07.027
[中圖分類號(hào)]G250.76 [文獻(xiàn)標(biāo)識(shí)碼]A [文章編號(hào)]1008-0821(2010)07-0097-02
Research of the Digital Library Search Technology Based on XMLShen Feiju
(Library,Nantong University,Nantong 226009,China)
[Abstract]With the development of XML digital library,how to search and process XML documents quickly and effectively is becoming more important.This paper classified and compared the XML digital library search systems,and described the directions of research of XML digital library search in searching module,document clustering,index technology.
[Keywords]XML retrieval;search module;document clustering;index technology
1 基于XML數(shù)字圖書館檢索問題的提出
基于XML的數(shù)字圖書館正在迅猛發(fā)展,主要原因是XML作為自描述的標(biāo)記語言,能夠根據(jù)具體應(yīng)用靈活地表現(xiàn)異構(gòu)數(shù)據(jù)源中的各種信息,包括應(yīng)用程序之間的數(shù)據(jù)交換、結(jié)構(gòu)化和半結(jié)構(gòu)化文檔以及數(shù)據(jù)庫中數(shù)據(jù)的輸出。特別適合在不同系統(tǒng)之間進(jìn)行數(shù)據(jù)格式的轉(zhuǎn)換或?yàn)橐延械南到y(tǒng)設(shè)計(jì)新的功能時(shí),可以方便的存儲(chǔ)數(shù)據(jù),以備能容易地被其他系統(tǒng)所使用,所以XML作為數(shù)字圖書館應(yīng)用的數(shù)據(jù)傳輸和交互的格式,具有廣泛的應(yīng)用前景。
XML文檔充滿整個(gè)互聯(lián)網(wǎng),但基于XML的數(shù)字圖書館也存在一個(gè)難題,那就是怎樣快速有效地對(duì)XML文檔進(jìn)行查詢和處理。隨著XML數(shù)字圖書館獲得越來越廣泛的應(yīng)用以及Web技術(shù)的不斷發(fā)展,如何檢索和利用XML數(shù)字圖書館信息的相關(guān)研究正受到越來越多的重視,可以預(yù)見,XML資源的充分利用將圍繞著查詢展開[1]。
2 XML數(shù)字圖書館檢索系統(tǒng)類型比較
目前的XML數(shù)字圖書館檢索系統(tǒng)有許多,可以將它們分為三類:即數(shù)據(jù)庫方式、信息檢索方式和混合方式。
數(shù)據(jù)庫方式是指將XML數(shù)據(jù)轉(zhuǎn)換為數(shù)據(jù)庫的數(shù)據(jù),然后通過數(shù)據(jù)庫檢索技術(shù)來實(shí)現(xiàn)對(duì)XML數(shù)據(jù)的檢索。數(shù)據(jù)庫的成熟技術(shù)和優(yōu)越的性能為XML的存儲(chǔ)提供了基礎(chǔ):數(shù)據(jù)庫通??梢蕴幚砗A康臄?shù)據(jù)信息,允許多個(gè)用戶同時(shí)處理信息,支持版本控制和不同級(jí)別的安全訪問控制等。數(shù)據(jù)庫方式的優(yōu)勢(shì)在于可使用標(biāo)準(zhǔn)(關(guān)系和面向?qū)ο?數(shù)據(jù)庫引擎,無需投資開發(fā)新的系統(tǒng);這種方法也有許多缺陷。首先,直接把遵從不同模式的異構(gòu)XML文檔導(dǎo)入數(shù)據(jù)庫引擎是困難的。其次,在因特網(wǎng)這樣的動(dòng)態(tài)環(huán)境下,數(shù)據(jù)的結(jié)構(gòu)會(huì)經(jīng)常發(fā)生改變,這將導(dǎo)致數(shù)據(jù)庫模式的頻繁更新。
信息檢索方式可使用信息檢索技術(shù)來查詢XML文檔,它將每個(gè)文檔看作是添加了標(biāo)注標(biāo)簽信息的文本文檔。標(biāo)注標(biāo)簽的處理方法有幾種:一種方法是丟掉全部標(biāo)簽,該方法的優(yōu)點(diǎn)在于簡單,缺點(diǎn)是信息丟失,將會(huì)降低檢索效果;一種方法是從要檢索的XML文檔中抽取重要的結(jié)構(gòu)和上下文信息,并建立索引。另一種更復(fù)雜的方法是為標(biāo)簽建立索引,如同普通索引詞一樣。顯然,無需為結(jié)束標(biāo)簽建立索引,因?yàn)殚_始標(biāo)簽已經(jīng)提供了結(jié)構(gòu)信息。最好的方式是為標(biāo)簽和元素內(nèi)容建立不同的獨(dú)立的索引,以便支持更靈活的檢索需求。信息檢索方式可以應(yīng)用于XML文檔的檢索,以獲得更好的準(zhǔn)確率。該方法有以下3個(gè)優(yōu)點(diǎn):(1)現(xiàn)存的檢索系統(tǒng)只需作某些修改,就可應(yīng)用于XML文檔的檢索;(2)XML搜索引擎的使用與傳統(tǒng)搜索引擎相似,用戶無需訓(xùn)練即可輕松使用;(3)由于它不包括結(jié)構(gòu)信息,它的索引代價(jià)更小。但是這種方式的問題是它可能不像數(shù)據(jù)庫方式一樣準(zhǔn)確,因?yàn)樗趦?nèi)容近似匹配的技術(shù),不支持復(fù)雜的文檔結(jié)構(gòu)匹配。
混合方式結(jié)合了數(shù)據(jù)庫和信息檢索方式的優(yōu)點(diǎn),使用較簡單的查詢表達(dá)實(shí)現(xiàn)對(duì)XML文檔的內(nèi)容和結(jié)構(gòu)信息的查詢?;旌戏绞浇Y(jié)合了許多流行的技術(shù)來實(shí)現(xiàn)XML文檔的查詢,例如在XQL中就把XPath路徑查詢和全文檢索結(jié)合在一起,這種方式很可能給出一個(gè)更準(zhǔn)確的搜索結(jié)果?;旌戏绞降囊粋€(gè)優(yōu)點(diǎn)在于靈活性,既像標(biāo)準(zhǔn)信息搜索引擎一樣,又像數(shù)據(jù)庫引擎(充分的路徑定義)一樣工作。既方便初學(xué)者使用,用戶可以像使用搜索引擎一樣來使用它,又方便專家用戶使用,以便得到更準(zhǔn)確的查詢。但是,靈活性是通過付出存儲(chǔ)代價(jià)獲得的。另外,要想得到更準(zhǔn)確的結(jié)果,用戶需掌握XPath的一些知識(shí)。
從上面的分析可知,對(duì)于XML文檔的檢索,混合方式是一種較為可行的方式,如何有效地克服上述兩個(gè)缺陷,為普通用戶提供一種簡單方便的高效的XML信息檢索工具,這涉及到XML文檔的檢索模型的建立、文檔聚類表示和索引技術(shù)等[2]。
3 XML檢索的主要研究方向
關(guān)于XML信息檢索的研究剛剛起步,依然有許多課題需要深入的研究。下面將簡要闡述幾個(gè)亟需進(jìn)一步研究的方向。
3.1 檢索模型
檢索模型是將文檔表示、查詢以及它們之間關(guān)系進(jìn)行建模的框架。要實(shí)現(xiàn)信息檢索,首先需要組織信息。數(shù)字圖書館中包含文本、圖像、視頻、音頻等數(shù)據(jù),不能直接進(jìn)行檢索,需要從這些原始數(shù)據(jù)中抽取邏輯視圖,以支持信息檢索。用戶用查詢來表示信息需求。檢索系統(tǒng)根據(jù)查詢的表示,搜索文檔集,獲取與用戶查詢相關(guān)的文檔。信息檢索的匹配是相似性匹配,查詢的結(jié)果按序返回。以上過程實(shí)際上涉及到3個(gè)重要的處理:文檔集的邏輯表示、查詢的表示、相似性匹配及其排序。也就是說,文檔集、查詢和相似性匹配決定一種檢索策略和模式。對(duì)這些檢索的因素和過程建模,就產(chǎn)生了各種不同的信息檢索模型。作為著名的信息檢索模型——向量模型具有許多優(yōu)點(diǎn),是使用最廣泛的模型。如果查詢需求簡單,可以使用向量模型檢索XML文檔,它將元素視為普通索引項(xiàng),向量模型將檢查文檔中是否包含查詢給出的元素。這種簡單查詢有其優(yōu)點(diǎn),用戶無需訓(xùn)練,不需了解文檔集合的結(jié)構(gòu),并可返回近似結(jié)構(gòu)匹配的結(jié)果,其缺陷是無法區(qū)分結(jié)構(gòu)和內(nèi)容查詢。解決的辦法是將結(jié)構(gòu)匹配和內(nèi)容匹配分開,這是對(duì)向量模型的一個(gè)自然的擴(kuò)展,稱作擴(kuò)展向量空間模型[3]。一個(gè)查詢包含兩個(gè)向量:一個(gè)結(jié)構(gòu)向量,一個(gè)內(nèi)容向量。但是,上述方法依然沒有指出元素與內(nèi)容的嵌套包含關(guān)系,還需要對(duì)模型作進(jìn)一步擴(kuò)展,以反映元素嵌套層次對(duì)相似性的影響。
3.2 文檔聚類
與文本文件相比,XML文檔增加了結(jié)構(gòu)信息,如何利用這些信息來提高聚類的效果?就此問題已經(jīng)有了許多成果。但是這些方法的一個(gè)共同的缺陷是算法的復(fù)雜度很高,很難應(yīng)用于Web環(huán)境下的信息檢索,因此有必要研究新的更為高效的結(jié)構(gòu)聚類算法。此外,如何組織聚類過程產(chǎn)生的文檔類的結(jié)構(gòu)信息,也是一個(gè)有意義的課題,這是因?yàn)橥ㄟ^利用反饋的結(jié)構(gòu)信息,就可以較容易的幫助用戶定義對(duì)文檔的結(jié)構(gòu)的查詢。聚類技術(shù)作為信息檢索的關(guān)鍵支撐技術(shù),一直是信息檢索研究領(lǐng)域的熱點(diǎn)研究之一。對(duì)于XML文檔的檢索,也是如此。特別是XML包含結(jié)構(gòu)信息,合理利用這些信息進(jìn)行聚類,將顯著提高檢索系統(tǒng)的效果。研究結(jié)構(gòu)信息的引入對(duì)XML文檔聚類方法產(chǎn)生的影響,針對(duì)目前XML文檔結(jié)構(gòu)聚類方法的缺陷,研究新的結(jié)構(gòu)聚類算法,將聚類結(jié)果應(yīng)用于信息導(dǎo)航和組織,幫助用戶給出恰當(dāng)?shù)牟樵兪揭约皫椭脩魹g覽查詢的返回結(jié)果。這些都是XML信息檢索研究的主要問題[4]。
3.3 索引技術(shù)
基于XML數(shù)字圖書館的信息檢索,研究高效的索引也是至關(guān)重要的。XML信息檢索的一個(gè)特點(diǎn)是可以通過路徑查詢結(jié)構(gòu)信息,與之相對(duì)應(yīng),為了提高查詢效率,除了內(nèi)容索引外,還必須對(duì)文檔中的結(jié)構(gòu)建立索引。目前已經(jīng)有幾種方法(技術(shù))可用來對(duì)XML文檔進(jìn)行索引操作,根據(jù)包含結(jié)構(gòu)信息的多少,將它們分為以下三類:(1)平面文件索引技術(shù),(2)半結(jié)構(gòu)化索引技術(shù),(3)結(jié)構(gòu)化索引技術(shù)[5]。由于XML本質(zhì)上是一種半結(jié)構(gòu)化數(shù)據(jù),所以,半結(jié)構(gòu)化索引更為適用,更能保證在檢索效率和表達(dá)能力兩者之間做好平衡。要實(shí)現(xiàn)對(duì)XML文檔的結(jié)構(gòu)和內(nèi)容的集成查詢,滿足Web環(huán)境下對(duì)查詢速度和存儲(chǔ)空間的苛刻要求??梢詫ML文檔的路徑信息映射為字符串,建立路徑字符串的后綴索引。同時(shí),把對(duì)XML文檔結(jié)構(gòu)信息查詢的路徑信息映射為字符串,這樣,路徑查詢就轉(zhuǎn)為后綴樹中的字符匹配。還可對(duì)傳統(tǒng)后綴樹生成算法作改進(jìn),用來構(gòu)建由路徑集合生成的字符串集合的廣義后綴樹,產(chǎn)生高效的查詢處理方法[6]。這樣處理的特性:第一,索引可以在線性時(shí)間內(nèi)構(gòu)造,并且是可增量維護(hù)的。第二,只需線性存儲(chǔ)空間。第三,查詢處理只需要匹配m個(gè)字符,其中m是結(jié)構(gòu)查詢表達(dá)式的長度。所有這些特性非常適合Web環(huán)境,即較小的存儲(chǔ)代價(jià)和較高的查詢處理效率。
4 總結(jié)與展望
在數(shù)字圖書館信息資源極大豐富的情況下,研究XML信息檢索技術(shù)已成為一項(xiàng)重要而迫切的研究課題。一個(gè)尚未解決的問題與用戶定義的文檔結(jié)構(gòu)有關(guān)。由于文檔結(jié)構(gòu)來自不同的數(shù)據(jù)源,導(dǎo)致標(biāo)簽定義和文檔結(jié)構(gòu)的異構(gòu)性,這將影響搜索引擎的召回性能。另一個(gè)有關(guān)的問題是與多種語言有關(guān),因?yàn)閄ML是由Unicode編碼的,來自不同數(shù)據(jù)源的標(biāo)簽名字可能用不同的語言定義。由于一個(gè)單詞可能有不止一種譯文或者沒有對(duì)應(yīng)的譯文,怎樣做適當(dāng)?shù)姆g是多種語言的XML文檔檢索的一個(gè)問題。
這兩個(gè)問題將影響XML文檔檢索方式,XML正處于不斷完善之中,已開始得到越來越多用戶的認(rèn)同。雖然目前基于XML文檔的搜索引擎技術(shù)還沒發(fā)展成熟及投入廣泛使用,但它的前景將是十分廣闊的。
參考文獻(xiàn)
[1]孫登峰,喻曉峰.XML查詢語言研究[J].計(jì)算機(jī)工程,2003,(13):4-6,42.
[2]姜科,陸偉,等.XML檢索系統(tǒng)及其比較研究[J].現(xiàn)代圖書情報(bào)技術(shù),2007,(10):66-70.
[3]陸偉.元素級(jí)XML檢索模型構(gòu)建的關(guān)鍵問題與解決方案研究[J].中國圖書館學(xué)報(bào),2007,(6):58-61.
[4]王能斌.數(shù)據(jù)庫系統(tǒng)原理[M].北京:電子工業(yè)出版社,2000.
[5]K.Zhang and D.Shasha.Simple Fast Algorithms for the Editing Distance Between Trees and Related Problems[J].SIAM J.Comput.,1989,18(6):1245-1262.
[6]Grefenstette,G..Cross-language information retrieval.Dordrechet:Kluwer Academic Publisher,1998.