虛擬聯(lián)合目錄系統(tǒng)中_第1頁(yè)
虛擬聯(lián)合目錄系統(tǒng)中_第2頁(yè)
虛擬聯(lián)合目錄系統(tǒng)中_第3頁(yè)
虛擬聯(lián)合目錄系統(tǒng)中_第4頁(yè)
虛擬聯(lián)合目錄系統(tǒng)中_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、虛擬聯(lián)合目錄系統(tǒng)中擁有共同結(jié)構(gòu)之網(wǎng)頁(yè)文件資料萃取曾志軒1 黃夙賢1Chih-Hsuan Tseng1 Su-Shang Huang11國(guó)立交通大學(xué)資訊科學(xué)所chtseng, sshuang, .tw柯皓仁2 楊維邦1Hao-Ren Ke2 Wei-Pang Yang12國(guó)立交通大學(xué)圖書(shū)館.tw摘要虛擬聯(lián)合目錄系統(tǒng)是一個(gè)從分散式的圖書(shū)資訊館藏查詢系統(tǒng)中收集並整合圖書(shū)目錄的系統(tǒng)。在虛擬聯(lián)合目錄建置的過(guò)程中,有些圖書(shū)資訊館藏查詢系統(tǒng)並不允許直接去擷取底層的資料庫(kù),而僅提供圖書(shū)資訊館藏查詢系統(tǒng)所產(chǎn)生出來(lái)的網(wǎng)頁(yè)資料。這些由查詢系統(tǒng)所

2、產(chǎn)生的網(wǎng)頁(yè)資料通常擁有共同結(jié)構(gòu)網(wǎng)頁(yè)文件的特性,而傳統(tǒng)的資訊擷取方式並沒(méi)有辦法從擁有共同結(jié)構(gòu)之網(wǎng)頁(yè)文件萃取資料。為了讓虛擬聯(lián)合目錄系統(tǒng)從個(gè)別的圖書(shū)資訊館藏查詢系統(tǒng)傳回的網(wǎng)頁(yè)中萃取資料,本篇論文提出了一個(gè) Level-ID 的方法。本文所提出的 Level-ID演算法分配每個(gè)關(guān)鍵元素唯一的 Level ID,並由使用者標(biāo)示欲萃取資料的Level ID以及所代表的意義,並將資料欄位存成結(jié)構(gòu)標(biāo)記檔。根據(jù)結(jié)構(gòu)標(biāo)記檔系統(tǒng)就可用來(lái)萃取擁有共同結(jié)構(gòu)文件之資料。在這些資料萃取的過(guò)程中,所有的詮釋資料都以詮釋資料描述語(yǔ)言 (Metadata Modeling Language) 來(lái)描述與儲(chǔ)存,以達(dá)成資料交換及資料

3、傳遞的一致性。最後本論文並驗(yàn)證Level-ID的方法在交通大學(xué)虛擬聯(lián)合目錄系統(tǒng) (VUCSNCTU) 中的可行性。關(guān)鍵詞:資料萃取、結(jié)構(gòu)化文件、共同結(jié)構(gòu)、中介資料、虛擬聯(lián)合目錄系統(tǒng)1. 簡(jiǎn)介由於數(shù)位圖書(shū)館系統(tǒng)與網(wǎng)際網(wǎng)路的迅速發(fā)展,人們可以更方便地從網(wǎng)路上取得資料,只要連上各個(gè)數(shù)位化圖書(shū)館的檢索網(wǎng)站,就可以填寫(xiě)檢索字串來(lái)尋找我們欲取得的資料。但是若我們要尋找的資料不存在於該網(wǎng)站,則必須連線到其他網(wǎng)站查詢。然而並不是每個(gè)使用者都有能力找到解答,多數(shù)的使用者根本不知道欲尋找的資料究竟是位於哪一個(gè)數(shù)位圖書(shū)館,這將會(huì)造成使用者的困擾。有鑑於此,虛擬聯(lián)合目錄系統(tǒng)提供從分散式的數(shù)位圖書(shū)資訊環(huán)境中收集並整合圖

4、書(shū)目錄的能力。在虛擬聯(lián)合目錄建置的過(guò)程中,由於智慧財(cái)產(chǎn)權(quán)以及資訊安全等因素的考慮,導(dǎo)致並不是所有的數(shù)位圖書(shū)館皆允許程式設(shè)計(jì)者直接去擷取底層的資料庫(kù)。而程式設(shè)計(jì)者所能擁有的資源,則是各個(gè)圖書(shū)館所提供的圖書(shū)目錄查詢系統(tǒng)。各個(gè)圖書(shū)館所提供的圖書(shū)目錄查詢系統(tǒng)所產(chǎn)生出來(lái)的網(wǎng)頁(yè)資料通常擁有結(jié)構(gòu)化文件的特性,這提供了我們從共同結(jié)構(gòu)網(wǎng)頁(yè)文件擷取資訊的契機(jī)。傳統(tǒng)的資訊擷取技術(shù),並沒(méi)有辦法從文章中擷取結(jié)構(gòu)化資訊。於是許多的研究人員都致力在結(jié)構(gòu)化文件的相關(guān)研究 1。所謂的結(jié)構(gòu)化文件就是把文章結(jié)構(gòu)包含在文件裡面的文件 8,通常這類型的文件是由標(biāo)籤語(yǔ)言如XML、SGML或HTML所描述而成。擁有文章結(jié)構(gòu)特性的文件允許我

5、們擷取到更細(xì)部的結(jié)構(gòu)資料,而不僅僅只能擷取到文件所呈現(xiàn)的文字內(nèi)容 (Content)。從結(jié)構(gòu)化的文件中擷取資料和從資料庫(kù)中擷取有著相當(dāng)大的不同,資料庫(kù)擁有表格結(jié)構(gòu) (Schema),透過(guò)表格結(jié)構(gòu)便可以直接從已定義好的表格中擷取出資料。但結(jié)構(gòu)畫(huà)文件並沒(méi)有類似表格結(jié)構(gòu)的概念,因此我們必須先對(duì)結(jié)構(gòu)化文件的結(jié)構(gòu)作分析,然後才能對(duì)文件作資料萃取。在過(guò)去的研究中,已經(jīng)有很多有效率的索引方法及結(jié)構(gòu)化文件的資料擷取方法被提出 3, 5, 8。在 5 這篇論文中,使用了識(shí)別碼 (UID-Unique element Identifier) 和k-ary tree來(lái)減少建置索引時(shí)所必須佔(zhàn)用的儲(chǔ)存空間。UID的設(shè)計(jì)

6、是用來(lái)描述文章結(jié)構(gòu)的資訊,而k-ary tree則是用來(lái)快速地搜尋元素 (Element) 儲(chǔ)存位置並便於存取各元素。在 8 這篇論文中將UID的概念擴(kuò)充為GID (General element Identifier),其目的在於支援多種不同型態(tài)的結(jié)構(gòu)化文件,此篇論文也提出了一個(gè)名為 BUS (Bottom Up Scheme) 的設(shè)計(jì)模組來(lái)整合索引及檢索的效能評(píng)估,並驗(yàn)證了該方法的可行性與效率。在 3 這篇論文中則使用了 SCL (Simple Concordance List) 來(lái)模組化結(jié)構(gòu)化文件,並支援多種不同層次的檢索。SCL 利用每個(gè)元素與內(nèi)容出現(xiàn)的位置來(lái)做為其識(shí)別碼,不但簡(jiǎn)單也提

7、供了夠充分的檢索層次給使用者。綜觀以上的論文,不難發(fā)現(xiàn)雖然已有很多關(guān)於結(jié)構(gòu)化文件資料擷取的研究,但卻很少有人從事於擁有共同結(jié)構(gòu)之網(wǎng)頁(yè)文件的資料萃取的研究。對(duì)於一個(gè)欲整合多個(gè)數(shù)位圖書(shū)館的系統(tǒng)而言,這是必要的。在交通大學(xué)圖書(shū)館虛擬聯(lián)合目錄系統(tǒng) (VUCSNCTU - Virtual Union Catalog System in NCTU) 計(jì)畫(huà)中,我們?cè)囍岢鲆粋€(gè)新的系統(tǒng)架構(gòu),利用結(jié)構(gòu)化文件的特性來(lái)幫助我們從各個(gè)不同數(shù)位圖書(shū)館傳回的檢索結(jié)果作資料萃取。並提供單一的介面讓使用者只需要在VUCS上面做檢索便可獲得多個(gè)不同數(shù)位圖書(shū)館的館藏資料,而且個(gè)別的數(shù)位圖書(shū)館只需要提供其架構(gòu)在 WWW 上的資訊查

8、詢系統(tǒng)即可,不需要開(kāi)放資料庫(kù)權(quán)限。如此便可達(dá)到我們欲整合各個(gè)數(shù)位圖書(shū)資訊館藏的目的。圖表一、交通大學(xué)虛擬聯(lián)合目錄的系統(tǒng)架構(gòu)在這樣的前提下,為了提供一個(gè)方法允許系統(tǒng)直接從數(shù)位圖書(shū)館檢索結(jié)果的網(wǎng)頁(yè)中直接萃取資料,我們提出了 Level-ID 的演算法以幫助我們從擁有共同結(jié)構(gòu)的網(wǎng)頁(yè)文件中萃取出使用者感興趣的資料。所謂擁有共同結(jié)構(gòu)的網(wǎng)頁(yè)文件,指的就是一個(gè)網(wǎng)頁(yè)文件內(nèi),擁有同樣語(yǔ)意或內(nèi)容的文字都以相同的結(jié)構(gòu)包起來(lái),這樣的文件必須經(jīng)過(guò)事先的分析與整理,然後才可以擷取出有意義的資料。此類文件通常是由網(wǎng)頁(yè)應(yīng)用程式所自動(dòng)產(chǎn)生出來(lái)的,因此只要可以正確地分析出其共同結(jié)構(gòu),就可以快速地?cái)X取使用者感興趣的資料。舉例來(lái)說(shuō):

9、大部分的圖書(shū)館館藏檢索系統(tǒng)會(huì)根據(jù)不同的檢索字串而傳回不同的結(jié)果,但是這些不同的結(jié)果都是用同樣的結(jié)構(gòu)與標(biāo)籤語(yǔ)言來(lái)描述,也許是用 HTML 的表格標(biāo)籤描述,也可能是由 XML 描述而成,只要我們能掌握並分析出其文件結(jié)構(gòu),就可以很容易地根據(jù)分析出來(lái)的結(jié)構(gòu)而擷取出所有有意義的資料。本文的目的就是要分析一個(gè)網(wǎng)頁(yè)文件內(nèi)重複出現(xiàn)的共同結(jié)構(gòu)並擷取資料,我們提出了Level-ID的演算法來(lái)分配不同的Level-ID給每一個(gè)關(guān)鍵元素,並標(biāo)示我們想要萃取資料的資料欄位以存成結(jié)構(gòu)標(biāo)記檔,最後根據(jù)記錄下來(lái)的結(jié)構(gòu)標(biāo)記檔以萃取出被嵌入在共同結(jié)構(gòu)中的資料。在分析文件的過(guò)程中,我們也利用MML (Metadata Modeli

10、ng Language) 4 來(lái)描述分析出來(lái)的共同結(jié)構(gòu)及最後萃取結(jié)果,一旦我們將共同結(jié)構(gòu)分析出來(lái)並利用MML描述,便可以很容易地萃取出含有同樣結(jié)構(gòu)的文件資料了!本文各部分內(nèi)容分述如下:第二部分介紹虛擬聯(lián)合目錄系統(tǒng)的設(shè)計(jì)理念與系統(tǒng)特性;第三部分介紹從擁有共同結(jié)構(gòu)之網(wǎng)頁(yè)文件中萃取資料的運(yùn)作流程與架構(gòu),也一併描述我們所提出的 Level-ID 演算法,最後則是為本系統(tǒng)未來(lái)的發(fā)展與結(jié)論。2. 虛擬聯(lián)合目錄系統(tǒng)虛擬聯(lián)合目錄系統(tǒng)係指將多個(gè)分散式的圖書(shū)資訊館藏查詢系統(tǒng)整合成單一的檢索系統(tǒng) 2,其目的在讓使用者可以很方便地透過(guò)單一檢索介面取得各個(gè)不同數(shù)位圖書(shū)館的館藏資料。交通大學(xué)虛擬聯(lián)合目錄系統(tǒng)是國(guó)立交通大學(xué)

11、數(shù)位圖書(shū)館計(jì)畫(huà)下的一個(gè)子計(jì)畫(huà),其目的是要針對(duì)各個(gè)大學(xué)圖書(shū)資訊館藏查詢系統(tǒng) (WebPAC),所開(kāi)發(fā)的一整合性界面。使用者透過(guò)此界面,可以查詢所有大學(xué)圖書(shū)館裡的圖書(shū)資訊。對(duì)於使用者來(lái)講,透過(guò)交通大學(xué)虛擬聯(lián)合目錄系統(tǒng),可以節(jié)省穿梭各地圖書(shū)資訊館藏查詢系統(tǒng)的時(shí)間。對(duì)於圖書(shū)資訊館藏查詢系統(tǒng)發(fā)展者而言,透過(guò)此系統(tǒng)可以使得將來(lái)各校圖書(shū)資訊館藏查詢系統(tǒng)在開(kāi)發(fā)時(shí),有一簡(jiǎn)單且規(guī)範(fàn)明確的標(biāo)準(zhǔn)可以依循。交通大學(xué)虛擬聯(lián)合目錄系統(tǒng),主要規(guī)劃達(dá)成目的如下:1. 研發(fā)適用於分散式環(huán)境下的虛擬聯(lián)合目錄架構(gòu)。2. 利用XML(eXtensible Markup Language)為基礎(chǔ)的技術(shù),達(dá)成分散式架構(gòu)資源的統(tǒng)合。本系統(tǒng)發(fā)

12、展的特色如下:1. 整合各校的圖書(shū)資訊於本系統(tǒng)各校的館藏系統(tǒng)不須提供其館藏資料給本系統(tǒng)。本系統(tǒng)將透過(guò)各校原有的WebPAC查詢系統(tǒng),利用XML的技術(shù)來(lái)解譯各校 WebPAC的資訊,查詢所需的館藏資料。2. 提供給參與本系統(tǒng)的學(xué)校扮演整合者的角色所有參加本系統(tǒng)的學(xué)校,皆可扮演虛擬聯(lián)合目錄的系統(tǒng)整合者。或者透過(guò)我們所提出的虛擬聯(lián)合目錄架構(gòu),架設(shè)虛擬聯(lián)合目錄應(yīng)用程式。3. 本系統(tǒng)不改變各校的查詢系統(tǒng)在不改變各校圖書(shū)資訊館藏查詢系統(tǒng)的前提下,本系統(tǒng)提供簡(jiǎn)單的模組,架設(shè)在原有的館藏系統(tǒng)上,然後收集各校館藏查詢系統(tǒng)傳回的資料即可。圖表一所描述的就是本系統(tǒng)的架構(gòu)示意圖,接下來(lái)我們就將本系統(tǒng)分成以下三個(gè)部分來(lái)

13、討論。2.1. VUCS ServerVUCS Server 的作用是和特定資料來(lái)源做溝通,針對(duì)每個(gè)不同性質(zhì)的資料來(lái)源,我們必須賦予不同的 VUCS Server 屬性。一般而言,我們可以取得的資料來(lái)源約可分為資料庫(kù)與圖書(shū)館 WebPAC 兩種,當(dāng)資料來(lái)源是資料庫(kù)的話,我們就可直接從資料庫(kù)中擷取,不必再做萃取資料的動(dòng)作,則 VUCS Server 便會(huì)被告知不需要再經(jīng)由 Extractor (在第三部分中會(huì)詳細(xì)說(shuō)明) 來(lái)萃取資料;但大部分圖書(shū)館的 WebPAC不允許對(duì)底層資料庫(kù)做存取,故只能從該網(wǎng)站所傳回的查詢結(jié)果網(wǎng)頁(yè)來(lái)做為我們的資料來(lái)源,故必須呼叫 Extractor 對(duì)傳回的資料作分析及資

14、料萃取的動(dòng)作!VUCS Server利用共同結(jié)構(gòu)網(wǎng)頁(yè)文件萃取技術(shù),查詢各個(gè)館藏系統(tǒng)的資料VUCS Service 將使用者查詢的條件及學(xué)校傳送給Object Transport ProtocolObject Transport Protocol將使用者查詢的條件分送到負(fù)責(zé)各個(gè)學(xué)校 WebPAC 的UCS Server各個(gè)館藏系統(tǒng)的資料回傳給VUCS Server,VUCS Server將資料轉(zhuǎn)換成標(biāo)準(zhǔn)格式,並且以MML包裹包裹後的資料回傳給Object Transport ProtocolVUCS Layer統(tǒng)合資料後,將資料分批傳回給使用者使用者選擇所欲查詢的條件以及學(xué)校圖表二、本系統(tǒng)的運(yùn)作

15、流程2.2. 物件傳送協(xié)定層 (Object Transport Protocol) 在 VUCS 系統(tǒng)中,所有的資料都是用MML (Metadata Modeling Language) 4 描述而成的,而經(jīng)由每個(gè) VUCS Server 傳回的資料都可能擁有不同的屬性模組 (Attribute Model),我們將不同的模組轉(zhuǎn)換成一個(gè)標(biāo)準(zhǔn)的屬性模組 (Canonical Attribute Model) 後,最後利用 CORBA 來(lái)當(dāng)作我們的物件傳送協(xié)定,如此便可將各個(gè) VUCS Server 傳回的資料整合在本系統(tǒng)上供使用者檢閱。圖表三、Extractor 的系統(tǒng)架構(gòu)2.3. VUCS

16、ServiceVUCS Service 的工作就是提供一個(gè)使用者介面,並負(fù)責(zé)資料的收集與整合。介紹完整個(gè) VUCS 的各部分功能後,我們將整個(gè) VUCS 的運(yùn)作流程整理如圖表二所示,黑色方框內(nèi)所描述的就是本論文欲達(dá)到的主要的目。在VUCS Server從底層抓取資料的過(guò)程當(dāng)中,如果底層的資料來(lái)源是一個(gè)圖書(shū)館 WebPAC,則我們必須利用共同結(jié)構(gòu)網(wǎng)頁(yè)文件的特性,以便從擁有結(jié)構(gòu)化文件的 WebPAC 萃取出資料。取得資料並轉(zhuǎn)換成標(biāo)準(zhǔn)模組之後,利用 CORBA 來(lái)負(fù)責(zé)傳輸所有的資料給上層的 VUCS Service,最後 VUCS Service就負(fù)責(zé)將這些資料收集起來(lái)並呈現(xiàn)給使用者做檢閱。共同結(jié)構(gòu)

17、網(wǎng)頁(yè)文件萃取的技術(shù)將於本文第三部分詳述。3. 擁有共同結(jié)構(gòu)之網(wǎng)頁(yè)文件資料萃取一個(gè)虛擬聯(lián)合目錄系統(tǒng)必須要能從各個(gè)不同圖書(shū)資訊館藏查詢系統(tǒng)中萃取資料,但由於並不是所有的圖書(shū)資訊館藏查詢系統(tǒng)都允許直接存取其底層的資料庫(kù),為了讓虛擬聯(lián)合目錄系統(tǒng)的功能更加完善,我們發(fā)展了 Extractor 這個(gè)系統(tǒng)來(lái)分析網(wǎng)頁(yè)的文件結(jié)構(gòu)並做資料萃取,其中 Level-ID 方法便是其核心的演算法,其目的在於分析文件結(jié)構(gòu),系統(tǒng)架構(gòu)如圖表三所示,本文設(shè)計(jì)並實(shí)作了一個(gè)從含有共同結(jié)構(gòu)之網(wǎng)頁(yè)文件作資料萃取的系統(tǒng)如下。3.1系統(tǒng)架構(gòu)圖表三說(shuō)明了整個(gè) Extractor 的系統(tǒng)架構(gòu),整個(gè)資料萃取主要可分為兩個(gè)步驟:Level 1 (

18、Root, parent level).Level 2Level 2Level 2 (child level)Parallel Property (PP)Level 3 圖表四、階層式架構(gòu)的樹(shù)狀示意圖Level Property (LP)1. 訓(xùn)練步驟 (Training Process) 在訓(xùn)練步驟時(shí),我們從欲萃取資料的文件中,選取一個(gè)範(fàn)例文件 (Sample Document)來(lái)當(dāng)作系統(tǒng)的訓(xùn)練文件,系統(tǒng)會(huì)先透過(guò)格式化工具 (Formalization Tool) 將文件做格式化,並參照輔助表格 (AT-Auxiliary Table) 以分析出文件的結(jié)構(gòu),接著提供提供一個(gè)介面讓使用者標(biāo)記欲

19、萃取的資料欄位 (Structure Labeling),並利用 MML 語(yǔ)法來(lái)描述使用者所標(biāo)記的資料以儲(chǔ)存成一個(gè)結(jié)構(gòu)標(biāo)記檔 (Label File) 以供萃取步驟使用。2. 萃取步驟 (Extracting Process) 執(zhí)行完萃取步驟後,接著讀入和已訓(xùn)練過(guò)的文件具有同樣結(jié)構(gòu)的文件 (Document with Common Structure),利用格式化工具以及配置 Level ID 以分析文件結(jié)構(gòu)後,參考之前所儲(chǔ)存的結(jié)構(gòu)標(biāo)記檔以做資料萃取,系統(tǒng)會(huì)根據(jù)已儲(chǔ)存的結(jié)構(gòu)標(biāo)記檔作為欲萃取的資料欄位,並利用 Level-ID 演算法來(lái)作分析以找出含有相同結(jié)構(gòu)的資料欄位,而最後萃取出來(lái)的資料也同

20、樣利用 MML 來(lái)加以描述儲(chǔ)存。下面我們將此一系統(tǒng)分成三個(gè)階段來(lái)討論,分別是前置處理階段 (Pre-Processing)、結(jié)構(gòu)標(biāo)記階段 (Structure Labeling) 及資料萃取階段 (Information Extraction)。在介紹系統(tǒng)的運(yùn)作流程之前,我們先說(shuō)明本文所提出的 Level-ID 方法。3.2 Level-ID 方法結(jié)構(gòu)化文件最大的特性就是擁有階層式的架構(gòu),比如說(shuō)一本書(shū)的章節(jié)或段落。階層式的架構(gòu)可以用樹(shù)的型態(tài)來(lái)表示,每個(gè)節(jié)點(diǎn)都是代表一個(gè)元素,而每個(gè)節(jié)點(diǎn)所包含的資料就是元素的內(nèi)容,由圖表四可以更清楚地看出其架構(gòu),最上層的節(jié)點(diǎn)就是根節(jié)點(diǎn),根節(jié)點(diǎn)可能有數(shù)個(gè)第二層的子節(jié)

21、點(diǎn),而第二層的子節(jié)點(diǎn)也同樣可能含有數(shù)個(gè)第三層的子節(jié)點(diǎn)。在此,我們定義兩個(gè)性質(zhì)來(lái)幫助在 Level-ID 方法中做文件結(jié)構(gòu)的分析。定義一、階層性質(zhì) (Level Property (LP) 節(jié)點(diǎn) A 和節(jié)點(diǎn) B 是階層式架構(gòu)中的兩個(gè)節(jié)點(diǎn),階層性質(zhì)在 A 是 B 的祖先 (Ancestor) 且文件中 A 的內(nèi)容 (Content) 中包含了 B 時(shí)成立,此時(shí), A 和 B 具有階層性質(zhì)的關(guān)係。定義二、平行性質(zhì) (Parallel Property (PP) 節(jié)點(diǎn) A 和節(jié)點(diǎn) B 是階層式架構(gòu)中的兩個(gè)節(jié)點(diǎn),平行性質(zhì)在 A 和 B 位在階層式架構(gòu)中的同一層時(shí)成立,此時(shí), A 和 B 具有平行性質(zhì)的關(guān)

22、係。定義好上述兩種性質(zhì)之後我們就可以分配 Level ID 給每個(gè)關(guān)鍵元素,Level ID 的格式如下:Level1-ID.Level2-ID.Level3-ID. 每一層由各自的數(shù)字來(lái)表示,Level1-ID 所代表的就是第一層的數(shù)字,中間的分隔號(hào)我們用逗號(hào)來(lái)表示,其意義就是代表著分層。一個(gè)階層式的架構(gòu)就可以利用這樣的方式來(lái)將所有的節(jié)點(diǎn)表示成 Level ID 的格式,要完整地將一個(gè)結(jié)構(gòu)化文件用 Level ID 來(lái)格式化,還必須搭配上一個(gè)輔助的表格 (Auxiliary Table) 來(lái)記載標(biāo)籤與標(biāo)籤之間的階層關(guān)係性質(zhì),這樣就可利用階層性質(zhì)與平行性質(zhì)來(lái)正確地配置 Level ID 給每一

23、個(gè)元素,輔助表格如圖表五所示,在此,我們以 HTML 文件的標(biāo)籤來(lái)說(shuō)明。輔助表格編號(hào)上層元素下層元素1<HTML><Head><Body>2<Frameset><Frame>3<Body><Table><Ol><Ul><Dir><Br><P><Hr>4<Table><Tr>5<Tr><Td>6<Td><Table><Ol><Ul><Dir&

24、gt;<Br><P>7<Ol><Ul><Dir><Li>8<Li><Table><Ol><Ul><Dir><Br><P>9<Hr><Table><Ol><Ul><Dir><Br><P>圖表五、輔助表格0 Level-ID_Assignment_Algorithm (in HTML D, out Level_ID )1Var Structure_Hierarc

25、hy C;2For each tag in D3C=Check_Structure_Hierarchy (tag); / 4IF (C = “Positive-LP”)5Down_Level (tag); /Level Property holds6Else If (C = “Negative-LP”)7Up_Level(tag) until accurate level;8Increment(tag); /Level Property holds9Else IF (C = “PP”)10Increment(tag); /Parallel Property holds11Else12Do no

26、thing;1314 End 圖表六、配置 Level ID 的演算法輔助表格的用法如下。在分析一結(jié)構(gòu)化文件時(shí),若文件中的一上層元素接下來(lái)所出現(xiàn)的元素屬於下層元素時(shí),即代表在此結(jié)構(gòu)化文件存在一個(gè)正向的階層性質(zhì)(Positive Level Property)。相反的,假如下層元素後方出現(xiàn)上層元素時(shí),此時(shí)存在一個(gè)反向的階層性質(zhì)(Negative Level Property)。當(dāng)階層性質(zhì)出現(xiàn)時(shí),代表結(jié)構(gòu)化文件出現(xiàn)階層結(jié)構(gòu)的現(xiàn)象,此時(shí)在Level ID的配置過(guò)程當(dāng)中則需要往下擴(kuò)展一個(gè)階層(Down Level)、或者是回到原來(lái)所屬的階層(Up Level)。而當(dāng)前後所出現(xiàn)的元素屬於輔助表格同一列且

27、相同的元素時(shí),即代表平行性質(zhì)存在於結(jié)構(gòu)化文件。此時(shí)將Level-ID加一代表屬於同一個(gè)階層。圖表六列出配置所有元素 Level ID 的演算法,經(jīng)由這個(gè)演算法,我們就能將文件中所有的元素都配置一個(gè) Level ID 以記錄其階層式的結(jié)構(gòu)。3.3 前置處理階段 (Pre-Processing)在前置處理階段中,必須先將原來(lái)的文件重新格式化並利用 Level-ID 演算法來(lái)進(jìn)行編號(hào),因此前置處理階段主要有兩個(gè)部分,分別是格式化工具和配置 Level ID 。格式化工具 (Formalization Tool)在網(wǎng)路上的文件大都是用標(biāo)籤語(yǔ)言所描述而成,而撰寫(xiě)標(biāo)籤語(yǔ)言最常犯的錯(cuò)誤就是遺漏了結(jié)束標(biāo)籤或是

28、巢狀標(biāo)籤的不平衡。這種情形在 HTML 文件中尤其常見(jiàn),因?yàn)?HTML 文件對(duì)整個(gè)標(biāo)籤結(jié)構(gòu)並沒(méi)有很?chē)?yán)格地規(guī)定,即使網(wǎng)頁(yè)撰寫(xiě)者編寫(xiě)了不正確的文件,使用者仍然可以從瀏覽器上看到正確的結(jié)果。但是對(duì)於要分析文件結(jié)構(gòu)而言,這種不正確的標(biāo)籤文件會(huì)導(dǎo)致不正確的結(jié)果,因此必須先對(duì)讀進(jìn)來(lái)的文件作格式化的動(dòng)作。在本文中,我們使用 TIDY 這個(gè)由 World Wide Web Consortium 6 所發(fā)展出來(lái)的網(wǎng)頁(yè)格式化工具程式,TIDY 是一個(gè)免費(fèi)的工具程式專門(mén)用來(lái)找出標(biāo)籤文件中的錯(cuò)誤語(yǔ)法,並將之修正成標(biāo)準(zhǔn)的語(yǔ)法。透過(guò) TIDY 的格式化,文件的語(yǔ)法錯(cuò)誤便可以被消除掉,則我們的系統(tǒng)在分析文件結(jié)構(gòu)時(shí)就不會(huì)產(chǎn)生

29、錯(cuò)誤。配置 Level ID (Level ID Assignment)經(jīng)過(guò) TIDY 格式化之後的文件還必須經(jīng)過(guò)配置 Level ID 的動(dòng)作才可以做分析的動(dòng)作。我們先對(duì)文件的標(biāo)籤語(yǔ)法作分析,並利用 Level-ID 的演算法配置一個(gè) Level ID給每個(gè)關(guān)鍵元素。在我們的系統(tǒng)架構(gòu)中,一個(gè) Level ID 包含的資訊就相當(dāng)於此元素在文件裡的階層式結(jié)構(gòu),這是因?yàn)榍笆龅?Level-ID 演算法就是根據(jù)整個(gè)文件的階層式架構(gòu)所設(shè)計(jì)的,只要掌握住某元素在階層式架構(gòu)中的位置,就能將該元素與結(jié)構(gòu)標(biāo)記檔做比對(duì)分析而萃取到使用者所需要的資料。圖表七就是一個(gè)文件在經(jīng)過(guò)格式化與配置 Level ID 的結(jié)果

30、,因?yàn)樵撐募兄匮}出現(xiàn)的結(jié)構(gòu),故其規(guī)則性可以很容易地被發(fā)現(xiàn)。從圖表七中可以很清楚地看到,文件的序號(hào)、刊名、ISSN以及出版項(xiàng)欄位被分析出來(lái),而其包含的資料也被分析出來(lái)並按照欄位順序排列,這些事先的分析讓後續(xù)資料萃取的工作更形容易。圖表九、結(jié)構(gòu)標(biāo)記檔圖表八、結(jié)構(gòu)標(biāo)記的工具圖表七、格式化與配置 Level ID3.4 結(jié)構(gòu)標(biāo)記階段 (Structure Labeling)配置完每個(gè)元素的 Level ID 之後,我們?cè)O(shè)計(jì)了一個(gè)介面讓使用者標(biāo)記欲擷取資料欄位的 Level ID,使用者可以點(diǎn)選欲擷取資料的欄位並替每一個(gè)選取的欄位命名,系統(tǒng)會(huì)記錄下來(lái)所有被命名的欄位及其 Level ID,並存成結(jié)構(gòu)

31、標(biāo)記檔。有了這個(gè)結(jié)構(gòu)標(biāo)記檔,便可以和擁有同樣結(jié)構(gòu)的文件做分析並萃取資料。圖表八是以全國(guó)期刊聯(lián)合目錄暨館際合作系統(tǒng) (.tw) 作結(jié)構(gòu)標(biāo)記的例子。以此例而言,索引值 30101 到 30104 都是使用者所欲萃取的資料欄位,使用者可在欄位名中標(biāo)記萃取資料後欲命名的欄位名稱。在此,我們分別把序號(hào)、刊名、ISSN和出版項(xiàng)分別命名為 Serial、Title、ISSN以及Publisher。圖表九就是我們最後所儲(chǔ)存下來(lái)的結(jié)構(gòu)標(biāo)記檔,實(shí)際儲(chǔ)存時(shí)我們會(huì)以 MML 語(yǔ)法 4 將之儲(chǔ)存下來(lái),以便日後拿來(lái)做資料萃取的參考結(jié)構(gòu)。處理完結(jié)構(gòu)標(biāo)記之後,就完成了資料萃取的訓(xùn)練

32、步驟,我們已經(jīng)擁有了一個(gè)可用來(lái)當(dāng)作資料萃取的結(jié)構(gòu)標(biāo)記檔,接下來(lái)就進(jìn)入資料萃取的萃取步驟。3.5 資料萃取階段 (Information Extraction)1 Information_Extraction_Algorithm (in HTML D, in Label_File L, out Information_File F)2 For each Level-ID in D 3For Iteration Level of each marked tag in L 4IF (Parent(Level-ID) and Iteration Level are the same)5Mark inf

33、ormation by label name in L and save the information to F678 End9 圖表十、資料擷取的演算法在訓(xùn)練步驟後,我們就可以參照已儲(chǔ)存之結(jié)構(gòu)標(biāo)記檔來(lái)和讀入的文件作比對(duì)分析真正把資料從文件中萃取出來(lái)。萃取資料的演算法如圖表十所示,由於已經(jīng)配置給每個(gè)關(guān)鍵元素唯一的 Level ID,因此我們可以從結(jié)構(gòu)標(biāo)記檔與欲萃取文件的 Level ID 特性很容易地萃取出資料。圖表十一就是我們參照?qǐng)D表九的結(jié)構(gòu)標(biāo)記檔所萃取出來(lái)的資料,當(dāng)然為了在虛擬聯(lián)合目錄系統(tǒng)中可以做資料的傳送與整合,我們也將結(jié)果以 MML 的格式來(lái)描述並儲(chǔ)存。4. 結(jié)論與討論在本文中,我們

34、提出了一個(gè)從含有共同架構(gòu)的文件中萃取資料的方式。利用共同架構(gòu)文件中的階層性質(zhì)以及平行性質(zhì),參考輔助表格的內(nèi)容,配置元素所屬的Level ID。並透過(guò)相同Level ID擁有相同性質(zhì)的特性,利用結(jié)構(gòu)標(biāo)記檔萃取擁有相同結(jié)構(gòu)文件中的資料。本文中還藉由交通大學(xué)虛擬聯(lián)合目錄系統(tǒng)的實(shí)作,來(lái)驗(yàn)證此方法的正確性。資料萃取的流程主要是參照在訓(xùn)練階段中所產(chǎn)生的結(jié)構(gòu)標(biāo)記檔來(lái)對(duì)含有相同結(jié)構(gòu)的文件作資料萃取,對(duì)此系統(tǒng)而言僅需要佔(zhàn)用極小的硬碟空間來(lái)儲(chǔ)存結(jié)構(gòu)標(biāo)記檔,資料萃取的步驟都可即時(shí)完成並直接輸出結(jié)果,整個(gè)流程的效率是非常高的。從網(wǎng)頁(yè)中含有共同結(jié)構(gòu)的文件萃取資料對(duì)很多數(shù)位圖書(shū)館及網(wǎng)頁(yè)應(yīng)用程式都是非常有用的。除了應(yīng)用在交

35、通大學(xué)虛擬聯(lián)合目錄系統(tǒng)中,我們也可以應(yīng)用在其他更多的地方。大部分的圖書(shū)資訊館藏查詢系統(tǒng)及網(wǎng)頁(yè)應(yīng)用程式如搜尋引擎等,由程式產(chǎn)生出來(lái)的網(wǎng)頁(yè)都會(huì)具有相同的結(jié)構(gòu),如果想要從這些系統(tǒng)萃取資料,則不需要去跟底層的系統(tǒng)作溝通,只要利用本文所提出的方法,即能從該系統(tǒng)產(chǎn)生的網(wǎng)頁(yè)中萃取出資料,如此將會(huì)省下很多對(duì)該系統(tǒng)作分析研究的人力與時(shí)間。在本文的第三部分裡是以 HTML 文件作為測(cè)試的範(fàn)本,經(jīng)過(guò)測(cè)試的結(jié)果,HTML 文件在我們的系統(tǒng)架構(gòu)運(yùn)作得非常順利。當(dāng)然也可以將其他結(jié)構(gòu)化文件如XML及 SGML 用在本文所提出的方法上,只需要改變 Level-ID 演算法中的輔助表格內(nèi)容,將之修改成和該結(jié)構(gòu)化文件的標(biāo)籤語(yǔ)言相

36、符合,Level-ID 的方法就可以正確地分析出文件的結(jié)構(gòu)。利用輔助表格來(lái)協(xié)助各種不同類型文件的分析不但快速且只需要佔(zhàn)用少量的儲(chǔ)存空間,這樣的設(shè)計(jì)可說(shuō)是一個(gè)相當(dāng)良好的設(shè)計(jì),不但快速也相當(dāng)方便。圖表十一、資料萃取的結(jié)果最後,我們將本文所提出的資料萃取方法應(yīng)用在 VUCS NCTU上,也得到了相當(dāng)好的成效,不但可以整合多個(gè)不同資料庫(kù)的資料,也提供 VUCS 一個(gè)可以快速取得網(wǎng)頁(yè)上資料的方法。利用 MML 來(lái)做為資料收集與整合的媒介也證明了詮釋資料 (Metadata) 的可行性。參考文獻(xiàn)1. Sudhir Aggarwal, Fuyung Hung and Weiyi Meng, “WIRE-A WWW-based Information Retrieval and Extraction System”, Proceedings. Ninth International Workshop on Database and Expert Systems Applications, 1

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論