馬坤
〔摘 要〕為了提高文獻(xiàn)錄入效率和準(zhǔn)確率,減少錄入文獻(xiàn)的人工審核,提出一種基于DOI和論文數(shù)據(jù)庫(kù)的在線文獻(xiàn)元數(shù)據(jù)獲取方法,設(shè)計(jì)DOI解析代理集成異構(gòu)的DOI注冊(cè)代理機(jī)構(gòu)的服務(wù)接口,通過(guò)RoadRunner算法實(shí)現(xiàn)基于論文數(shù)據(jù)庫(kù)詳情頁(yè)的文獻(xiàn)元數(shù)據(jù)抽取。最后實(shí)現(xiàn)在線文獻(xiàn)元數(shù)據(jù)智能錄入系統(tǒng),驗(yàn)證上述方法的有效性和實(shí)用性。
〔關(guān)鍵詞〕數(shù)字對(duì)象標(biāo)識(shí)符;論文數(shù)據(jù)庫(kù);Web信息抽?。痪W(wǎng)頁(yè)聚類(lèi)
為了改善文獻(xiàn)錄入方式,自動(dòng)驗(yàn)證錄入文獻(xiàn)歸屬,本文結(jié)合DOI與論文數(shù)據(jù)庫(kù),提出了一種新穎的在線文獻(xiàn)元數(shù)據(jù)智能獲取方法。
1 相關(guān)工作
目前,國(guó)內(nèi)外在線文獻(xiàn)管理系統(tǒng)中文獻(xiàn)獲取與錄入方法主要有文獻(xiàn)題錄直接導(dǎo)入、基于DOI的文獻(xiàn)題錄導(dǎo)入、基于論文數(shù)據(jù)庫(kù)網(wǎng)頁(yè)的題錄抓取和論文文件題錄抓取等方式[1]。
1.1 文獻(xiàn)題錄直接導(dǎo)入
文獻(xiàn)題錄導(dǎo)入方法是指文獻(xiàn)管理工具從論文數(shù)據(jù)庫(kù)導(dǎo)入文獻(xiàn)各項(xiàng)元數(shù)據(jù)(作者、題目、來(lái)源、卷期號(hào)、起始頁(yè)碼、摘要等)[1]。該方法一般需要手工從論文數(shù)據(jù)庫(kù)將文獻(xiàn)題錄導(dǎo)出,然后再進(jìn)行導(dǎo)入。目前部分文獻(xiàn)管理工具已經(jīng)實(shí)現(xiàn)文獻(xiàn)題錄的直接導(dǎo)入,自動(dòng)檢測(cè)論文數(shù)據(jù)庫(kù)題錄格式(EndNote Citation File、Research Information Systems Citation File和BibTex等),無(wú)需人工參與。但是,該方法需要論文數(shù)據(jù)庫(kù)出版系統(tǒng)提供規(guī)范置標(biāo)的題錄可讀輸出以及相應(yīng)的API,不同出版系統(tǒng)API又具有異構(gòu)性,缺乏一個(gè)可以共同遵循的標(biāo)準(zhǔn)。
1.2 基于DOI的文獻(xiàn)題錄導(dǎo)入
DOI是一組由數(shù)字、字母或其他符號(hào)組成的文獻(xiàn)標(biāo)識(shí)符,已經(jīng)在2012年5月正式被批準(zhǔn)成為ISO國(guó)際標(biāo)準(zhǔn)[2],覆蓋大多數(shù)研究領(lǐng)域,具有永久性、惟一性、可解析和互操作性等特征。DOI解析提供了一種由永久惟一的DOI鏈接到文獻(xiàn)元數(shù)據(jù)和包含文獻(xiàn)元數(shù)據(jù)的網(wǎng)頁(yè)的符合國(guó)際標(biāo)準(zhǔn)化的映射方式[3]。以國(guó)外DOI的注冊(cè)代理機(jī)構(gòu)之一的Cross Ref為例,截止到2012年10月26日,注冊(cè)DOI數(shù)量超過(guò)5 679萬(wàn)個(gè)[4]。在國(guó)內(nèi),DOI在數(shù)字資源的應(yīng)用雖剛剛起步,但也成為一種必然趨勢(shì)[5]。據(jù)International DOI Foundation(IDF)統(tǒng)計(jì),中文DOI的DOI注冊(cè)數(shù)量已居全球第二位[6]。截止到2012年10月8日,中文DOI注冊(cè)總量達(dá)到195萬(wàn),期刊DOI注冊(cè)數(shù)量193萬(wàn)[6]。
DOI注冊(cè)代理機(jī)構(gòu)為用戶提供了游客式或注冊(cè)式的DOI解析服務(wù),并提供了靈活的API接口。例如,國(guó)外DOI注冊(cè)代理機(jī)構(gòu)Cross Ref為用戶提供了文本查詢、OpenURL和HTTP等查詢方式[7];國(guó)內(nèi)DOI注冊(cè)代理機(jī)構(gòu)在ChinaDOI.cn網(wǎng)站上為個(gè)人用戶提供免費(fèi)的DOI鏈接解析服務(wù)[8]。除此之外,其它DOI注冊(cè)代理機(jī)構(gòu),如臺(tái)灣華藝數(shù)位、歐洲mEDRA,也為用戶提供了類(lèi)似的DOI查詢接口。DOI普及度以及DOI的查詢接口的存在,為在線文獻(xiàn)管理系統(tǒng)文獻(xiàn)獲取和文獻(xiàn)錄入創(chuàng)造了前提條件?;贒OI查詢接口獲取文獻(xiàn)元數(shù)據(jù)的實(shí)踐研究在國(guó)內(nèi)外還剛剛起步,目前支持基于DOI文獻(xiàn)題錄導(dǎo)入的在線文獻(xiàn)管理系統(tǒng)主要有EndNote Web、新科學(xué)[9]等。
1.3 基于論文數(shù)據(jù)庫(kù)出版系統(tǒng)網(wǎng)頁(yè)的題錄抓取
包含文獻(xiàn)元數(shù)據(jù)的網(wǎng)頁(yè)通常由后臺(tái)結(jié)構(gòu)化的論文數(shù)據(jù)庫(kù)數(shù)據(jù)與前臺(tái)半結(jié)構(gòu)化的網(wǎng)頁(yè)模板合并而成。從論文數(shù)據(jù)庫(kù)出版系統(tǒng)詳情頁(yè)中提取文獻(xiàn)元數(shù)據(jù)的問(wèn)題則轉(zhuǎn)換為半結(jié)構(gòu)化網(wǎng)頁(yè)的目標(biāo)數(shù)據(jù)抽取問(wèn)題。
近年來(lái),研究人員和互聯(lián)網(wǎng)公司開(kāi)始著手研究網(wǎng)頁(yè)信息抽取問(wèn)題。研究者根據(jù)Web數(shù)據(jù)抽取方法的自動(dòng)化程度,將Web數(shù)據(jù)抽取方法劃分為手工構(gòu)造和半自動(dòng)構(gòu)造數(shù)據(jù)抽取方法[10]。手工方法是通過(guò)觀察網(wǎng)頁(yè)源碼,由編程人員找出一些模式,再根據(jù)模式編寫(xiě)相應(yīng)的抽取程序獲取目標(biāo)數(shù)據(jù);半自動(dòng)包裝器歸納方法是有監(jiān)督學(xué)習(xí)方法,該方法通過(guò)從手工標(biāo)注的網(wǎng)頁(yè)中集中學(xué)習(xí)一組抽取規(guī)則,然后利用這些規(guī)則從具有類(lèi)似格式的網(wǎng)頁(yè)中抽取目標(biāo)數(shù)據(jù)項(xiàng)。這類(lèi)方法雖然成功率較高,但是仍需要人工干預(yù)。
現(xiàn)有的國(guó)內(nèi)外主流文獻(xiàn)管理工具(例如EndNote Web、RefWorks、Zotero、Mendeley等)中的抽取器采用網(wǎng)頁(yè)題錄抓取,抽取器插件需要進(jìn)行升級(jí)或調(diào)整,才能適應(yīng)改版或調(diào)整風(fēng)格后的論文數(shù)據(jù)庫(kù)出版系統(tǒng)文獻(xiàn)元數(shù)據(jù)抽取[1]。
論文文件題錄抓取是指直接從排版后的論文文件抓取文獻(xiàn)題錄[1],其原理為解析符合常見(jiàn)出版系統(tǒng)模板的論文源文件(Microsoft Word或LaTeX Style Files)或非圖形模式的可打印文件(Portable Document Format或PostScript),從中提取文獻(xiàn)元數(shù)據(jù)。由于論文模板并不統(tǒng)一,該方法文獻(xiàn)元數(shù)據(jù)提取失敗率較高,仍需人工干預(yù),更適合作為文獻(xiàn)錄入的輔助工具。該方法可進(jìn)一步優(yōu)化,若從文件中提取到論文DOI,可以同時(shí)采用基于DOI的文獻(xiàn)題錄導(dǎo)入方法作為補(bǔ)充,提高文獻(xiàn)元數(shù)據(jù)提取成功率。目前支持論文文件題錄抓取的在線文獻(xiàn)管理系統(tǒng)主要有EndNote、Zotero、Mendeley等。
2 文獻(xiàn)元數(shù)據(jù)獲取方法
2.1 基于DOI的文獻(xiàn)信息獲取方法的研究
基于DOI的文獻(xiàn)信息獲取方法的步驟如下,如圖1所示。
①判斷待查詢文獻(xiàn)DOI是否已經(jīng)在本地DOI文獻(xiàn)元數(shù)據(jù)庫(kù)內(nèi),若存在,則直接從本地庫(kù)中取出文獻(xiàn)元數(shù)據(jù)返回。
②若待查詢DOI不在本地DOI數(shù)據(jù)庫(kù),DOI解析代理模塊采用權(quán)值輪詢調(diào)度算法,將查詢請(qǐng)求按照負(fù)載均衡原則分發(fā)到不同DOI注冊(cè)代理機(jī)構(gòu)提供的查詢接口。DOI解析代理以異構(gòu)的DOI注冊(cè)代理機(jī)構(gòu)的查詢接口為基礎(chǔ),提供支持負(fù)載均衡的統(tǒng)一查詢服務(wù)。
③若從注冊(cè)代理接口可以查詢到文獻(xiàn)元數(shù)據(jù),則將文獻(xiàn)元數(shù)據(jù)返回,將DOI與文獻(xiàn)元數(shù)據(jù)的映射關(guān)系存入到本地DOI數(shù)據(jù)庫(kù)。
④若從注冊(cè)代理接口查詢不到文獻(xiàn)元數(shù)據(jù),則表明有可能DOI與文獻(xiàn)元數(shù)據(jù)的映射關(guān)系還未及時(shí)同步到查詢接口。此時(shí),嘗試從DOI單一解析或DOI多重解析的論文數(shù)據(jù)庫(kù)詳情頁(yè)抽取文獻(xiàn)元數(shù)據(jù),具體的方法參見(jiàn)方案第二部分。
2.2 基于論文數(shù)據(jù)庫(kù)出版系統(tǒng)的文獻(xiàn)信息獲取方法的研究 包含文獻(xiàn)元數(shù)據(jù)的論文數(shù)據(jù)庫(kù)頁(yè)面是一個(gè)數(shù)據(jù)詳情頁(yè),從詳情頁(yè)提取文獻(xiàn)元數(shù)據(jù)的問(wèn)題轉(zhuǎn)化為一個(gè)Web數(shù)據(jù)抽取的基本問(wèn)題?;谡撐臄?shù)據(jù)庫(kù)的文獻(xiàn)信息獲取方法的步驟如下,如圖2所示。
①檢測(cè)論文數(shù)據(jù)庫(kù)詳情頁(yè)是否存在模板,若存在,按照詳情頁(yè)模板直接從論文數(shù)據(jù)庫(kù)頁(yè)面中抽取文獻(xiàn)元數(shù)據(jù)。
②若論文數(shù)據(jù)庫(kù)詳情頁(yè)沒(méi)有模板,對(duì)詳情頁(yè)進(jìn)行預(yù)處理。使用開(kāi)源Java JTidy工具庫(kù)[11]對(duì)網(wǎng)頁(yè)中的HTML標(biāo)簽進(jìn)行清理,轉(zhuǎn)化為標(biāo)準(zhǔn)的XHTML頁(yè)面。
③將該詳情頁(yè)放入待識(shí)別頁(yè)面隊(duì)列。對(duì)待識(shí)別頁(yè)面隊(duì)列的大量頁(yè)面,按照層次聚類(lèi)算法[12]進(jìn)行聚類(lèi)。若得到每個(gè)類(lèi)別頁(yè)面(即同模板網(wǎng)頁(yè)集)數(shù)量達(dá)到閾值,轉(zhuǎn)步驟④;若同模板網(wǎng)頁(yè)集數(shù)量達(dá)不到閾值,則一定時(shí)間后進(jìn)行重試,若重試次數(shù)超過(guò)閾值,轉(zhuǎn)步驟⑥。
④采用Roadrunner算法[13]尋找同模板網(wǎng)頁(yè)集的相似點(diǎn)和不同點(diǎn),在此過(guò)程中生成一個(gè)沒(méi)有析取項(xiàng)的正則表達(dá)式表示的頁(yè)面模板,作為Web數(shù)據(jù)抽取的包裝器,實(shí)現(xiàn)了無(wú)監(jiān)督自動(dòng)數(shù)據(jù)抽取。若Roadrunner算法成功提取出模板,將得到的頁(yè)面模板存入論文數(shù)據(jù)庫(kù)模板庫(kù),將抽取到的文獻(xiàn)元數(shù)據(jù)返回;若Roadrunner算法提取模板失敗,則等待一定時(shí)間后重試,若重試次數(shù)超過(guò)閾值,轉(zhuǎn)步驟⑥。圖1 基于DOI的文獻(xiàn)信息獲取方法流程圖
⑤按照模板抽取論文數(shù)據(jù)庫(kù)詳情頁(yè)文獻(xiàn)元數(shù)據(jù),結(jié)束算法。
⑥手工方式標(biāo)注論文數(shù)據(jù)庫(kù)詳情頁(yè)面模板,并將模板存入論文數(shù)據(jù)庫(kù)模板庫(kù)。
3 文獻(xiàn)元數(shù)據(jù)獲取實(shí)現(xiàn)
3.1 技術(shù)架構(gòu)
根據(jù)用戶需求,系統(tǒng)采用云端/終端體系架構(gòu),如圖3所示。用戶文獻(xiàn)智能錄入的終端支持傳統(tǒng)的PC或者移動(dòng)終端(智能手機(jī)、平板電腦、筆記本、電子閱讀器等)等多種展現(xiàn)方式,在終端錄入DOI或者論文數(shù)據(jù)庫(kù)的URL,通過(guò)云端中的相應(yīng)服務(wù)接口獲取到文獻(xiàn)元數(shù)據(jù),并在用戶界面上顯示;而云端是提供租用服務(wù)的文獻(xiàn)智能獲取服務(wù)接口以及DOI解析器、Web數(shù)據(jù)抽取器的業(yè)務(wù)實(shí)現(xiàn)。系統(tǒng)業(yè)務(wù)邏輯位于云端,通過(guò)相應(yīng)的服務(wù)接口為不同類(lèi)型的終端租戶提供服務(wù)。
3.2 關(guān)鍵技術(shù)實(shí)現(xiàn)
3.2.1 方案選擇器實(shí)現(xiàn)
DOI注冊(cè)代理機(jī)構(gòu)提供了文獻(xiàn)DOI的模糊查詢,以此可以判斷文獻(xiàn)是否存在DOI。例如,Cross Ref為個(gè)人用戶提供了根據(jù)文獻(xiàn)標(biāo)題等元數(shù)據(jù)查詢文獻(xiàn)DOI的開(kāi)放接口。
查詢接口URL http:∥api.labs.crossref.org/search?q=<文獻(xiàn)標(biāo)題等元數(shù)據(jù)>
從返回頁(yè)面中可以提取出該文獻(xiàn)的DOI,進(jìn)而通過(guò)DOI解析器獲取文獻(xiàn)元數(shù)據(jù);若提取失敗則說(shuō)明該文獻(xiàn)沒(méi)有DOI,進(jìn)而從通過(guò)論文數(shù)據(jù)庫(kù)詳情頁(yè)抽取文獻(xiàn)元數(shù)據(jù)。
3.2.2 DOI解析器的實(shí)現(xiàn)
①DOI解析代理圖2 基于論文數(shù)據(jù)庫(kù)的文獻(xiàn)信息獲取方法流程圖
圖3 系統(tǒng)架構(gòu)
由于文獻(xiàn)元數(shù)據(jù)分散在不同的DOI注冊(cè)代理機(jī)構(gòu),設(shè)計(jì)的DOI解析代理,一方面按照DOI歸屬(由DOI前綴確定)將請(qǐng)求分散到各自注冊(cè)代理的解析服務(wù)接口。另一方面,DOI解析代理還按照負(fù)載均衡原則,分擔(dān)請(qǐng)求壓力,將DOI查詢請(qǐng)求分散到不同的鏡像服務(wù)器。
②DOI查詢接口
以DOI注冊(cè)代理機(jī)構(gòu)Cross Ref提供的查詢接口為例。Cross Ref為個(gè)人用戶提供了開(kāi)放URL查詢接口,通過(guò)一組帶有相關(guān)參數(shù)HTTP Get請(qǐng)求可以同時(shí)獲取到多個(gè)DOI的文獻(xiàn)元數(shù)據(jù)。具體Get請(qǐng)求的參數(shù)格式如下:
查詢接口URL http:∥api.labs.crossref.org/
其中
而中文DOI注冊(cè)代理,則提供了基于OpenURL的DOI查詢服務(wù),接口如下:
http:∥www.chinadoi.cn/openurl.do?pid=wf:wf&id=doi:
DOI解析代理負(fù)責(zé)將異構(gòu)的各注冊(cè)機(jī)構(gòu)DOI解析服務(wù)集成在一起。
3.2.3 論文數(shù)據(jù)庫(kù)文獻(xiàn)元數(shù)據(jù)抽取器實(shí)現(xiàn)
論文數(shù)據(jù)庫(kù)詳情頁(yè)XHTML頁(yè)面可以表示為一個(gè)文檔對(duì)象模型(標(biāo)簽樹(shù)),即DOM(Document Object Model)樹(shù)[15]。論文數(shù)據(jù)庫(kù)詳情頁(yè)集合聚類(lèi)轉(zhuǎn)變?yōu)闃?biāo)簽樹(shù)的聚類(lèi)。對(duì)于標(biāo)簽樹(shù)聚類(lèi),傳統(tǒng)的層次聚類(lèi)方法[11]能實(shí)現(xiàn)比較好的結(jié)果。為了描述層次聚類(lèi)算法,首先給出樹(shù)編輯距離概念。
標(biāo)簽樹(shù)A與標(biāo)簽樹(shù)B的樹(shù)編輯距離[16]為將標(biāo)簽樹(shù)A變換為標(biāo)簽樹(shù)B所需要的最小操作成本,操作集包括節(jié)點(diǎn)替換、刪除和插入。解標(biāo)簽樹(shù)編輯距離的問(wèn)題也就是尋找兩棵樹(shù)的最小代價(jià)映射。設(shè)兩棵樹(shù)A與B之間的映射為M。在M包含的數(shù)據(jù)對(duì)(i, j)中i,j分別表示標(biāo)簽樹(shù)A和標(biāo)簽樹(shù)B的節(jié)點(diǎn)元素,令S表示i和j不相同的數(shù)據(jù)對(duì)數(shù)量,即需要替換的標(biāo)簽;D表示A中沒(méi)有出現(xiàn)卻在M中的節(jié)點(diǎn),即需要?jiǎng)h除的標(biāo)簽;I表示B中沒(méi)有出現(xiàn)卻在M中的節(jié)點(diǎn),即需要插入的標(biāo)簽。則標(biāo)簽樹(shù)編輯距離D(A,B)=S*p+D*q+I*r,其中p、q、r分別表示替換、刪除和插入權(quán)值。
本文使用自下而上的合并聚類(lèi)方法進(jìn)行聚類(lèi),聚類(lèi)過(guò)程從樹(shù)狀圖最底層開(kāi)始,每一次通過(guò)合并最相似(距離最近)的聚類(lèi)來(lái)形成上一層聚類(lèi)。整個(gè)過(guò)程當(dāng)全部數(shù)據(jù)點(diǎn)都合并到一個(gè)聚類(lèi)(根節(jié)點(diǎn)聚類(lèi))時(shí)停止,得到各類(lèi)同模板網(wǎng)頁(yè)集?;跇?shù)編輯距離的合并層次聚類(lèi)算法描述如下:
將待聚類(lèi)的N個(gè)網(wǎng)頁(yè)分別標(biāo)號(hào)0,1,…,n-1,D=[d(i,j)]表示N*N的樹(shù)編輯距離矩陣,記L(k)表示第k個(gè)類(lèi)所處的層次,類(lèi)r與類(lèi)s距離記為d[(r),(s)]。
(1)初始化共有N個(gè)類(lèi),每個(gè)類(lèi)由一個(gè)網(wǎng)頁(yè)標(biāo)簽樹(shù)構(gòu)成。令m=0,L(m)=0;
(2)在D中尋找最小距離d[(r),(s)]=min(d[(i),(j)]);
(3)將兩個(gè)類(lèi)r與s合并為新類(lèi)(r,s),令m=m+1,L(m)=d[(r),(s)];
(4)更新距離矩陣D,將表示類(lèi)r與s的行列刪除,同時(shí)加入表示新類(lèi)(r,s)的行和列,同時(shí)定義新類(lèi)(r,s)與舊類(lèi)k的距離為d[(k),(r,s)]=min(d[(k),(r)],d[(k),(s)]);
(5)反復(fù)步驟2-4,直到所有網(wǎng)頁(yè)標(biāo)簽樹(shù)合并成一個(gè)類(lèi)為止。
經(jīng)上述聚類(lèi)算法后,論文數(shù)據(jù)庫(kù)詳情頁(yè)分成了多簇,對(duì)于得到的每類(lèi)同模板網(wǎng)頁(yè)集執(zhí)行Roadrunner算法[12]生成一個(gè)正則表達(dá)式作為網(wǎng)頁(yè)模板。具體算法如下:
在同模板網(wǎng)頁(yè)集中隨機(jī)取一張網(wǎng)頁(yè)作為正則表達(dá)式表示的模板W;W通過(guò)順序與其余每個(gè)網(wǎng)頁(yè)pi的HTML匹配而被提純。算法通過(guò)通過(guò)深度遍歷標(biāo)簽樹(shù)尋找模板W和網(wǎng)頁(yè)標(biāo)簽樹(shù)pi的失配來(lái)泛化模板W。一個(gè)失配發(fā)生在pi的一些標(biāo)簽與模板語(yǔ)法不匹配的時(shí)候,存在以下兩種失配:
(1)文本元素失配,表示為文獻(xiàn)數(shù)據(jù)域或數(shù)據(jù)項(xiàng);
(2)標(biāo)簽元素失配,表示為可選數(shù)據(jù)項(xiàng);或者是一個(gè)迭代器(重復(fù)出現(xiàn)的模式列表)。在這種情況,一個(gè)失配發(fā)生在一個(gè)重復(fù)出現(xiàn)的模式的開(kāi)頭以及一個(gè)列表的結(jié)尾。找到失配為止的最后標(biāo)志并從包裝器和網(wǎng)頁(yè)pi中通過(guò)向前搜索識(shí)別一些候選的重復(fù)模式。隨后它比較這些候選模式和網(wǎng)頁(yè)pi上方部分確認(rèn)。
3.2.4 云端服務(wù)租用接口實(shí)現(xiàn)
服務(wù)接口實(shí)現(xiàn)采用二進(jìn)制Web服務(wù)協(xié)議Hessian[17]用于數(shù)據(jù)傳輸。云端服務(wù)器提供DOI解析器和論文數(shù)據(jù)庫(kù)抽取器服務(wù)租用接口IService,如表1。其中doiExtract為根據(jù)DOI獲取單個(gè)或批量DOI的文獻(xiàn)元數(shù)據(jù)接口,而paperExtract為根據(jù)論文數(shù)據(jù)庫(kù)URL獲取單個(gè)或批量DOI的文獻(xiàn)元數(shù)據(jù)接口。表1 服務(wù)層DOI解析器和論文數(shù)據(jù)庫(kù)文獻(xiàn)元數(shù)據(jù)
抽取器租用服務(wù)接口IService
服務(wù)接口參 數(shù)返回值doiExtractdoi:String文獻(xiàn)元數(shù)據(jù)MetaLiteraturedoiExtractdois:List
本文實(shí)驗(yàn)環(huán)境為:CPU為2*28GHz,內(nèi)存8G,100M網(wǎng)絡(luò)出口帶寬。首先,對(duì)DOI解析器進(jìn)行測(cè)試。由于DOI解析器的結(jié)果來(lái)自DOI注冊(cè)代理機(jī)構(gòu)查詢接口,該接口的數(shù)據(jù)又來(lái)自DOI官方注冊(cè)庫(kù)。因此,在網(wǎng)絡(luò)暢通情況下,通過(guò)DOI獲取文獻(xiàn)元數(shù)據(jù)查準(zhǔn)率趨近100%。由于DOI解析代理采用負(fù)載均衡,該方法可以有效的分擔(dān)查詢壓力。該方法成功用于濟(jì)南大學(xué)研究生導(dǎo)師遴選系統(tǒng)中導(dǎo)師論文成果的錄入,大大提高文獻(xiàn)錄入的效率和準(zhǔn)確率。通過(guò)DOI方式錄入的文獻(xiàn),通過(guò)匹配獲取到的文獻(xiàn)元數(shù)據(jù)作者和單位信息,實(shí)現(xiàn)錄入文獻(xiàn)的自動(dòng)審核。
其次,對(duì)論文數(shù)據(jù)庫(kù)文獻(xiàn)元數(shù)據(jù)抽取器進(jìn)行測(cè)試。首先選用ACM、Elsevier Science Direct、Wiley InterScience、Springer Link、IEEE Xplore、CiteSeerX、中國(guó)知網(wǎng)、萬(wàn)方數(shù)據(jù)8個(gè)常用論文數(shù)據(jù)庫(kù),各從每類(lèi)數(shù)據(jù)庫(kù)隨機(jī)選取50張論文詳情頁(yè),對(duì)詳情頁(yè)XHTML源碼進(jìn)行清理預(yù)處理。然后將上述400個(gè)URL打亂順序,測(cè)試自動(dòng)學(xué)習(xí)網(wǎng)頁(yè)模板的能力。經(jīng)測(cè)試,基于標(biāo)簽樹(shù)編輯距離的層次聚類(lèi)算法準(zhǔn)確得到8個(gè)分類(lèi),符合實(shí)際情況,這主要是因?yàn)椴煌0逭撐臄?shù)據(jù)庫(kù)詳情頁(yè)標(biāo)簽樹(shù)差別較大的原因。使用Roadrunner算法對(duì)每類(lèi)同模板網(wǎng)頁(yè)集計(jì)算網(wǎng)頁(yè)模板,其查準(zhǔn)率和查全率如表2。系統(tǒng)檢測(cè)到論文數(shù)據(jù)庫(kù)網(wǎng)站改版后(即模板發(fā)生變化),根據(jù)已有的論文數(shù)據(jù)庫(kù)詳情頁(yè)分類(lèi),會(huì)自動(dòng)重新計(jì)算其網(wǎng)頁(yè)模板,真正實(shí)現(xiàn)零干預(yù)。表2 RoadRunner算法8個(gè)論文數(shù)據(jù)庫(kù)文獻(xiàn)元數(shù)據(jù)抽取實(shí)驗(yàn)結(jié)果
論文數(shù)據(jù)庫(kù)查準(zhǔn)率%查全率%ACM855899Elsevier Science Direct795773Wiley InterScience857844Springer Link824863IEEE Xplore693751CiteSeerX892883中國(guó)知網(wǎng)756783萬(wàn)方數(shù)據(jù)882867平 均819833
RoadRunner算法認(rèn)為網(wǎng)頁(yè)是由標(biāo)簽和字符串組成,當(dāng)字符串中又含有標(biāo)簽的時(shí)候,查準(zhǔn)率和查全率明顯降低。IEEE Xplore正式因?yàn)檫@個(gè)原因,查準(zhǔn)率和查全率較低。對(duì)于該類(lèi)論文數(shù)據(jù)庫(kù)進(jìn)一步可以借助人工標(biāo)注模板規(guī)則,來(lái)輔助提高查準(zhǔn)率和查全率。
最后,終端客戶端增加了移動(dòng)支持,原型系統(tǒng)文獻(xiàn)錄入界面如圖4。通過(guò)智能移動(dòng)終端,用戶可以選用通過(guò)輸入DOI或者論文數(shù)據(jù)庫(kù)URL方式獲取文獻(xiàn)元數(shù)據(jù)。
圖4 同時(shí)支持智能移動(dòng)終端的原型系統(tǒng)文獻(xiàn)智能錄入界面
5 結(jié) 語(yǔ)
DOI解析提供了一種由永久惟一DOI標(biāo)識(shí)符到文獻(xiàn)元數(shù)據(jù)的符合國(guó)際標(biāo)準(zhǔn)的映射方式,研究并實(shí)現(xiàn)根據(jù)DOI自動(dòng)獲取文獻(xiàn)元數(shù)據(jù)的方法,可大大提高文獻(xiàn)錄入的效率和準(zhǔn)確率。對(duì)于沒(méi)有DOI的文獻(xiàn),從論文數(shù)據(jù)庫(kù)出版系統(tǒng)詳情頁(yè)自動(dòng)抽取文獻(xiàn)元數(shù)據(jù)是另一種文獻(xiàn)智能錄入方法,作為DOI文獻(xiàn)錄入方式的補(bǔ)充,該研究對(duì)Web數(shù)據(jù)抽取方法的研究有著重要的推動(dòng)意義。本文研究并實(shí)現(xiàn)基于DOI和論文數(shù)據(jù)庫(kù)的在線文獻(xiàn)元數(shù)據(jù)智能獲取方法可以用于文獻(xiàn)智能錄入,該方法可以與已有的科研成果管理系統(tǒng)進(jìn)行結(jié)合,實(shí)現(xiàn)論文成果的自動(dòng)審核。
參考文獻(xiàn)
[1]趙飛.常用文獻(xiàn)管理軟件功能比較[J].現(xiàn)代圖書(shū)情報(bào)技術(shù),2012,28(3):67-72.
[2]International DOI Foundation,ISO 26324:2012,Information and documentation—Digital object identifier system[S].Switzerland:International Organization for Standardization,2012.
[3]谷琦.數(shù)字對(duì)象惟一標(biāo)識(shí)DOI的應(yīng)用研究[J].現(xiàn)代情報(bào),2009,29(5):73-76.
[4]CrossRef.CrossRef Indicators[EB/OL].http:∥www.crossref.org/01company/crossrefindicators.html,2012-10-26.
[5]徐健.Handle System在中文DOI系統(tǒng)中的應(yīng)用[J].現(xiàn)代圖書(shū)情報(bào)技術(shù),2008,24(9):16-20.
[6]中國(guó)科學(xué)技術(shù)信息研究所.中文DOI注冊(cè)統(tǒng)計(jì)信息表[EB/OL].http:∥www.chinadoi.cn/portal/Doisum.htm,2012-10-08.
[7]CrossRef.CrossRef Query Services[EB/OL].http:∥www.crossref.org/requestaccount,2012-10-26.
[8]中國(guó)科學(xué)技術(shù)信息研究所.DOI自動(dòng)化接口[EB/OL].http:∥www.chinadoi.cn/portal/newsAction!help.action?type=4,2012-10-26.
[9]錢(qián)俊斌.一種基于互聯(lián)網(wǎng)Web20平臺(tái)構(gòu)建的在線文獻(xiàn)管理系統(tǒng):中國(guó),CN2010105111873[P].2011-03-16.
[10]Chang Chia-Hui,Kayed Mohammed,Girgis Moheb Ramzy,Shaalan Khaled.A Survey of Web Information Extraction Systems[J].IEEE Transactions on Knowledge and Data Engineering,2006,18(10):1411-1428.
[11]Dave Raggett,Andy Quick.Java HTML Tidy Project[EB/OL].http:∥jtidy.sourceforge.net,2009-12-01.
[12]Bing Liu,Web Data Mining:Exploring Hyperlinks,Contents,and Usage Data[M].New York:Springer,2011:147-150.
[13]Valter Crescenzi,Giansalvatore Mecca,Paolo Merialdo.RoadRunner:Towards Automatic Data Extraction from Large Web Sites[C].Proceedings of the 27th International Conference on Very Large Databases,2001:109-118.
[14]Jonathan Hedley,jsoup:Java HTML Parser[EB/OL].http:∥jsoup.org,2012-09-23.
[15]W3C.Document Object Model(DOM)[EB/OL].http:∥www.w3.org/DOM,2009-01-06.
[16]Stanley MSelkow.The tree-to-tree editing problem[J].Information Processing Letters,1977,6(6):184-186.
[17]Daniel Gredler.Java Remoting:Protocol Benchmarks[EB/OL].http:∥daniel.gredler.net/2008/01/07/java-remoting-protocol-benchmarks,2012-10-26.
(本文責(zé)任編輯:馬 卓)