您好,欢迎访问三七文档
475虛擬聯合目錄系統中擁有共同結構之網頁文件資料萃取曾志軒1黃夙賢1Chih-HsuanTseng1Su-ShangHuang11國立交通大學資訊科學所{chtseng,sshuang,wpyang}@cis.nctu.edu.tw柯皓仁2楊維邦1Hao-RenKe2Wei-PangYang12國立交通大學圖書館claven@lib.nctu.edu.tw摘要虛擬聯合目錄系統是一個從分散式的圖書資訊館藏查詢系統中收集並整合圖書目錄的系統。在虛擬聯合目錄建置的過程中,有些圖書資訊館藏查詢系統並不允許直接去擷取底層的資料庫,而僅提供圖書資訊館藏查詢系統所產生出來的網頁資料。這些由查詢系統所產生的網頁資料通常擁有共同結構網頁文件的特性,而傳統的資訊擷取方式並沒有辦法從擁有共同結構之網頁文件萃取資料。為了讓虛擬聯合目錄系統從個別的圖書資訊館藏查詢系統傳回的網頁中萃取資料,本篇論文提出了一個Level-ID的方法。本文所提出的Level-ID演算法分配每個關鍵元素唯一的LevelID,並由使用者標示欲萃取資料的LevelID以及所代表的意義,並將資料欄位存成結構標記檔。根據結構標記檔系統就可用來萃取擁有共同結構文件之資料。在這些資料萃取的過程中,所有的詮釋資料都以詮釋資料描述語言(MetadataModelingLanguage)來描述與儲存,以達成資料交換及資料傳遞的一致性。最後本論文並驗證Level-ID的方法在交通大學虛擬聯合目錄系統(VUCS@NCTU)中的可行性。關鍵詞:資料萃取、結構化文件、共同結構、中介資料、虛擬聯合目錄系統1.簡介由於數位圖書館系統與網際網路的迅速發展,人們可以更方便地從網路上取得資料,只要連上各個數位化圖書館的檢索網站,就可以填寫檢索字串來尋找我們欲取得的資料。但是若我們要尋找的資料不存在於該網站,則必須連線到其他網站查詢。然而並不是每個使用者都有能力找到解答,多數的使用者根本不知道欲尋找的資料究竟是位於哪一個數位圖書館,這將會造成使用者的困擾。有鑑於此,虛擬聯合目錄系統提供從分散式的數位圖書資訊環境中收集並整合圖書目錄的能力。在虛擬聯合目錄建置的過程中,由於智慧財產權以及資訊安全等因素的考慮,導致並不是所有的數位圖書館皆允許程式設計者直接去擷取底層的資料庫。而程式設計者所能擁有的資源,則是各個圖書館所提供的圖書目錄查詢系統。各個圖書館所提供的圖書目錄查詢系統所產生出來的網頁資料通常擁有結構化文件的特性,這提供了我們從共同結構網頁文件擷取資訊的契機。傳統的資訊擷取技術,並沒有辦法從文章中擷取結構化資訊。於是許多的研究人員都致力在結構化文件的相關研究[1]。所謂的結構化文件就是把文章結構包含在文件裡面的文件[8],通常這類型的文件是由標籤語言如XML、SGML或HTML所描述而成。擁有文章結構特性的文件允許我們擷取到更細部的結構資料,而不僅僅只能擷取到文件所呈現的文字內容(Content)。從結構化的文件中擷取資料和從資料庫中擷取有著相當大的不同,資料庫擁有表格結構(Schema),透過表格結構便可以直接從已定義好的表格中擷取出資料。但結構畫文件並沒有類似表格結構的概念,因此我們必須先對結構化文件的結構作分析,然後才能對文件作資料萃取。在過去的研究中,已經有很多有效率的索引方法及結構化文件的資料擷取方法被提出[3,5,8]。在[5]這篇論文中,使用了識別碼(UID--UniqueelementIdentifier)和k-arytree來減少建置索引時所必須佔用的儲存空間。UID的設計是用來描述文章結構的資訊,而k-arytree則是用來快速地搜尋元素(Element)儲存位置並便於存取各元素。在[8]這篇論文中將UID的概念擴充為GID(GeneralelementIdentifier),其目的在於支援多種不同型態的結構化文件,此篇論文也提出了一個名為BUS(BottomUpScheme)的設計模組來整合索引及檢索的效能評估,並驗證了該方法的可行性與效率。在[3]這篇論文中則使用了SCL(SimpleConcordanceList)來模組化結構化文件,並支援多種不同層次的檢索。SCL利用每個元素與內容出現的位置來做為其識別碼,不但簡單也提供了夠充分的檢索層次給使用者。綜觀以上的論文,不難發現雖然已有很多關於結構化文件資料擷取的研究,但卻很少有人從事於擁有共同結構之網頁文件的資料萃取的研究。對476於一個欲整合多個數位圖書館的系統而言,這是必要的。在交通大學圖書館虛擬聯合目錄系統(VUCS@NCTU-VirtualUnionCatalogSysteminNCTU)計畫中,我們試著提出一個新的系統架構,利用結構化文件的特性來幫助我們從各個不同數位圖書館傳回的檢索結果作資料萃取。並提供單一的介面讓使用者只需要在VUCS上面做檢索便可獲得多個不同數位圖書館的館藏資料,而且個別的數位圖書館只需要提供其架構在WWW上的資訊查詢系統即可,不需要開放資料庫權限。如此便可達到我們欲整合各個數位圖書資訊館藏的目的。在這樣的前提下,為了提供一個方法允許系統直接從數位圖書館檢索結果的網頁中直接萃取資料,我們提出了Level-ID的演算法以幫助我們從擁有共同結構的網頁文件中萃取出使用者感興趣的資料。所謂擁有共同結構的網頁文件,指的就是一個網頁文件內,擁有同樣語意或內容的文字都以相同的結構包起來,這樣的文件必須經過事先的分析與整理,然後才可以擷取出有意義的資料。此類文件通常是由網頁應用程式所自動產生出來的,因此只要可以正確地分析出其共同結構,就可以快速地擷取使用者感興趣的資料。舉例來說:大部分的圖書館館藏檢索系統會根據不同的檢索字串而傳回不同的結果,但是這些不同的結果都是用同樣的結構與標籤語言來描述,也許是用HTML的表格標籤描述,也可能是由XML描述而成,只要我們能掌握並分析出其文件結構,就可以很容易地根據分析出來的結構而擷取出所有有意義的資料。本文的目的就是要分析一個網頁文件內重複出現的共同結構並擷取資料,我們提出了Level-ID的演算法來分配不同的Level-ID給每一個關鍵元素,並標示我們想要萃取資料的資料欄位以存成結構標記檔,最後根據記錄下來的結構標記檔以萃取出被嵌入在共同結構中的資料。在分析文件的過程中,我們也利用MML(MetadataModelingLanguage)[4]來描述分析出來的共同結構及最後萃取結果,一旦我們將共同結構分析出來並利用MML描述,便可以很容易地萃取出含有同樣結構的文件資料了!本文各部分內容分述如下:第二部分介紹虛擬聯合目錄系統的設計理念與系統特性;第三部分介紹從擁有共同結構之網頁文件中萃取資料的運作流程與架構,也一併描述我們所提出的Level-ID演算法,最後則是為本系統未來的發展與結論。2.虛擬聯合目錄系統虛擬聯合目錄系統係指將多個分散式的圖書資訊館藏查詢系統整合成單一的檢索系統[2],其目的在讓使用者可以很方便地透過單一檢索介面取得各個不同數位圖書館的館藏資料。交通大學虛擬聯合目錄系統是國立交通大學數位圖書館計畫下的一個子計畫,其目的是要針對各個大學圖書資訊館藏查詢系統(WebPAC),所開發的一整合性界面。使用者透過此界面,可以查詢所有大學圖書館裡的圖書資訊。對於使用者來講,透過交通大學虛擬聯合目錄系統,可以節省穿梭各地圖書資訊館藏查詢系統的時間。對於圖書資訊館藏查詢系統發展者而言,透過此系統可以使得將來各校圖書資訊館藏查詢系統在開發時,有一簡單且規範明確的標準可以依循。交通大學虛擬聯合目錄系統,主要規劃達成目的如下:1.研發適用於分散式環境下的虛擬聯合目錄架構。2.利用XML(eXtensibleMarkupLanguage)為基礎的技術,達成分散式架構資源的統合。本系統發展的特色如下:1.整合各校的圖書資訊於本系統各校的館藏系統不須提供其館藏資料給本系統。本系統將透過各校原有的WebPAC查詢系統,利用XML的技術來解譯各校WebPAC的資訊,查詢所需的館藏資料。2.提供給參與本系統的學校扮演整合者的角色所有參加本系統的學校,皆可扮演虛擬聯合目錄的系統整合者。或者透過我們所提出的虛擬聯合目錄架構,架設虛擬聯合目錄應用程式。3.本系統不改變各校的查詢系統在不改變各校圖書資訊館藏查詢系統的前提下,本系統提供簡單的模組,架設在原有的館藏系統上,然後收集各校館藏查詢系統傳回的資料即可。圖表一所描述的就是本系統的架構示意圖,接下來我們就將本系統分成以下三個部分來討論。2.1.VUCSServerVUCSServer的作用是和特定資料來源做溝通,針對每個不同性質的資料來源,我們必須賦予不同的VUCSServer屬性。一般而言,我們可以取圖表一、交通大學虛擬聯合目錄的系統架構477得的資料來源約可分為資料庫與圖書館WebPAC兩種,當資料來源是資料庫的話,我們就可直接從資料庫中擷取,不必再做萃取資料的動作,則VUCSServer便會被告知不需要再經由Extractor(在第三部分中會詳細說明)來萃取資料;但大部分圖書館的WebPAC不允許對底層資料庫做存取,故只能從該網站所傳回的查詢結果網頁來做為我們的資料來源,故必須呼叫Extractor對傳回的資料作分析及資料萃取的動作!2.2.物件傳送協定層(ObjectTransportProtocol)在VUCS系統中,所有的資料都是用MML(MetadataModelingLanguage)[4]描述而成的,而經由每個VUCSServer傳回的資料都可能擁有不同的屬性模組(AttributeModel),我們將不同的模組轉換成一個標準的屬性模組(CanonicalAttributeModel)後,最後利用CORBA來當作我們的物件傳送協定,如此便可將各個VUCSServer傳回的資料整合在本系統上供使用者檢閱。2.3.VUCSServiceVUCSService的工作就是提供一個使用者介面,並負責資料的收集與整合。介紹完整個VUCS的各部分功能後,我們將整個VUCS的運作流程整理如圖表二所示,黑色方框內所描述的就是本論文欲達到的主要的目。在VUCSServer從底層抓取資料的過程當中,如果底層的資料來源是一個圖書館WebPAC,則我們必須利用共同結構網頁文件的特性,以便從擁有結構化文件的WebPAC萃取出資料。取得資料並轉換成標準模組之後,利用CORBA來負責傳輸所有的資料給上層的VUCSService,最後VUCSService就負責將這些資料收集起來並呈現給使用者做檢閱。共同結構網頁文件萃取的技術將於本文第三部分詳述。3.擁有共同結構之網頁文件資料萃取一個虛擬聯合目錄系統必須要能從各個不同圖書資訊館藏查詢系統中萃取資料,但由於並不是所有的圖書資訊館藏查詢系統都允許直接存取其底層的資料庫,為了讓虛擬聯合目錄系統的功能更加完善,我們發展了Extractor這個系統來分析網頁的文件結構並做資料萃取,其中Level-ID方法便是其核心的演算法,其目的在於分析文件結構,系統架構如圖表三所示,本文設計並實作了一個從含有共同結構之網頁文件作資料萃取的系統如下。3.1系統架構圖表三說明了整個Extractor的系統架構,整個資料萃取主要可分為兩個步驟:VUCSServer利用共同結構網頁文件萃取技術,查詢各個館藏系統的資料VUCSService將使用者查詢的條件及學校傳送給ObjectTransportProtocolObjectTransportProtocol將使用者查詢的條件分送到負責各個學校WebPAC的VUCSServer各個館藏系統的資料回傳給VUCSServer,VUCSServer將資料轉換成標準格式,並且以MML包裹包裹後的資料回傳給ObjectTransportProtocolVUCSLayer統合資料後,將資料分批傳回給使用者使用者選擇所欲查詢的條件以及學校圖表二、本系統的運作流程圖表三、Extractor的系統架構4781.訓練步驟(TrainingProcess)在訓練步驟時,我們從欲萃取資料的文件中,選取一個範例
本文标题:虚拟联合目录系统中
链接地址:https://www.777doc.com/doc-31388 .html