胡明玲,王建濤
(1.浙江萬(wàn)里學(xué)院圖書(shū)館,浙江 寧波 315100;2.浙江大學(xué)寧波理工學(xué)院圖書(shū)館,浙江 寧波 315100)
關(guān)聯(lián)數(shù)據(jù)(Linked Data)是語(yǔ)義網(wǎng)的一個(gè)分支,用來(lái)描述一套發(fā)布、分享及鏈接互聯(lián)網(wǎng)通過(guò)URI(統(tǒng)一資源標(biāo)志符)提供的數(shù)據(jù)、信息和知識(shí)的方法[1],可以理解為是任何有意義的數(shù)據(jù)(信息或知識(shí))在萬(wàn)維網(wǎng)上的一種發(fā)布方式。目前,“關(guān)聯(lián)數(shù)據(jù)”的研究熱度已經(jīng)超過(guò)其上位詞“語(yǔ)義網(wǎng)”,并已成為推動(dòng)語(yǔ)義網(wǎng)發(fā)展的重要力量之一,近年來(lái)逐漸得到學(xué)術(shù)界、工業(yè)界及政府部門(mén)的廣泛關(guān)注,包括BBC、紐約時(shí)報(bào)、MIT、IEEE、HCLS、美國(guó)國(guó)會(huì)圖書(shū)館等在內(nèi)的機(jī)構(gòu)紛紛加入到關(guān)聯(lián)數(shù)據(jù)的出版發(fā)布行列[2]。關(guān)聯(lián)數(shù)據(jù)對(duì)于圖書(shū)館而言,也是一種很好的信息服務(wù)發(fā)表形式。圖書(shū)館可將自己開(kāi)發(fā)和組織的事實(shí)型信息資源和知識(shí)庫(kù)以關(guān)聯(lián)數(shù)據(jù)的形式發(fā)布,從而使信息資源得到開(kāi)放利用,既可豐富互聯(lián)網(wǎng)信息資源,又能提升圖書(shū)館的服務(wù)能力、增加服務(wù)方式、拓展服務(wù)內(nèi)容和增強(qiáng)用戶(hù)的依賴(lài)性。
關(guān)聯(lián)數(shù)據(jù)是發(fā)布RDF(Resource Description Framework,一種用于描述Web資源的標(biāo)記語(yǔ)言)數(shù)據(jù)的一種簡(jiǎn)捷、開(kāi)放、高效的方法(機(jī)制),是語(yǔ)義網(wǎng)的一種表現(xiàn),可以看成是Web上數(shù)據(jù)發(fā)布的一種標(biāo)準(zhǔn)的API,其對(duì)HTTP進(jìn)行進(jìn)一步的規(guī)定和擴(kuò)展。在Web2.0環(huán)境下,基于API提供的結(jié)構(gòu)化的數(shù)據(jù)有很多,比如:eBay、Amazon、Yahoo、Google Base APIs等。相對(duì)于這些API,關(guān)聯(lián)數(shù)據(jù)則提供單一、標(biāo)準(zhǔn)化的訪(fǎng)問(wèn)機(jī)制,并基于結(jié)構(gòu)化的數(shù)據(jù)提供背景關(guān)聯(lián),而不是依賴(lài)于各種接口和從接口獲取的數(shù)據(jù)格式[3]。傳統(tǒng)超文本W(wǎng)eb中,數(shù)據(jù)網(wǎng)絡(luò)是建立在網(wǎng)頁(yè)文檔之上的,關(guān)聯(lián)數(shù)據(jù)則是基于RDF描述數(shù)據(jù)之間的關(guān)系。
關(guān)聯(lián)數(shù)據(jù)雖然是語(yǔ)義網(wǎng)的重要的基礎(chǔ)性應(yīng)用,但由于語(yǔ)義網(wǎng)本身與現(xiàn)有萬(wàn)維網(wǎng)是相融的,所以關(guān)聯(lián)數(shù)據(jù)的應(yīng)用與萬(wàn)維網(wǎng)也是相融合的。關(guān)聯(lián)數(shù)據(jù)甚至依托萬(wàn)維網(wǎng)來(lái)展現(xiàn)其語(yǔ)義化的處理能力,在形式上表現(xiàn)為萬(wàn)維網(wǎng)上的富鏈接機(jī)制,將超文本鏈接(文件之間的鏈接)轉(zhuǎn)變?yōu)槌瑪?shù)據(jù)鏈接(事物之間的鏈接)。
在語(yǔ)義網(wǎng)中,不僅僅將數(shù)據(jù)發(fā)布到Web上,而且通過(guò)關(guān)聯(lián)數(shù)據(jù)構(gòu)建能被計(jì)算機(jī)理解的結(jié)構(gòu)化的并富含語(yǔ)義的數(shù)據(jù)網(wǎng)絡(luò),把以前沒(méi)有關(guān)聯(lián)的相關(guān)數(shù)據(jù)連接起來(lái),甚至使許多沉睡的數(shù)據(jù)發(fā)揮作用,最終將網(wǎng)絡(luò)變成一個(gè)巨大的數(shù)據(jù)庫(kù),再通過(guò)計(jì)算機(jī)解析數(shù)據(jù),從而實(shí)現(xiàn)網(wǎng)絡(luò)的許多智能應(yīng)用。
數(shù)據(jù)內(nèi)容通過(guò)開(kāi)放利用的形式發(fā)布后,相同的數(shù)據(jù)內(nèi)容從理論上講只需構(gòu)建一套,其他系統(tǒng)無(wú)需構(gòu)建同樣的數(shù)據(jù),僅僅需要進(jìn)行數(shù)據(jù)關(guān)聯(lián)即可。數(shù)據(jù)進(jìn)行關(guān)聯(lián)后,將大大減少互聯(lián)網(wǎng)上冗余數(shù)據(jù),系統(tǒng)開(kāi)發(fā)和信息服務(wù)的效率將更高。
關(guān)聯(lián)數(shù)據(jù)通過(guò)URI發(fā)布在萬(wàn)維網(wǎng)上,既可通過(guò)傳統(tǒng)的信息發(fā)現(xiàn)方式發(fā)現(xiàn)相關(guān)關(guān)聯(lián)數(shù)據(jù),也可根據(jù)關(guān)聯(lián)數(shù)據(jù)中的URI來(lái)發(fā)現(xiàn)新的關(guān)聯(lián)數(shù)據(jù)。
關(guān)聯(lián)數(shù)據(jù)根據(jù)數(shù)據(jù)源的開(kāi)放范圍主要分為三種類(lèi)型。
這是目前關(guān)聯(lián)數(shù)據(jù)的主要形式,其以公開(kāi)的Web數(shù)據(jù)形式在整個(gè)網(wǎng)絡(luò)范圍內(nèi)開(kāi)放利用,這種類(lèi)型的關(guān)聯(lián)數(shù)據(jù)契合了互聯(lián)網(wǎng)開(kāi)放的特性。關(guān)聯(lián)開(kāi)放數(shù)據(jù)小組(W3C下研究和推廣關(guān)聯(lián)數(shù)據(jù)應(yīng)用的組織)期望通過(guò)開(kāi)放數(shù)據(jù)運(yùn)動(dòng)公開(kāi)更多的數(shù)據(jù),并以開(kāi)放數(shù)據(jù)應(yīng)用來(lái)展示關(guān)聯(lián)數(shù)據(jù)技術(shù)[1]。
指僅限組織或系統(tǒng)內(nèi)應(yīng)用的關(guān)聯(lián)數(shù)據(jù)。關(guān)聯(lián)私有數(shù)據(jù)的應(yīng)用也稱(chēng)為關(guān)聯(lián)企業(yè)數(shù)據(jù)(Linking Enterprise Data),私有數(shù)據(jù)的關(guān)聯(lián)實(shí)現(xiàn)從技術(shù)上不存在障礙,而且需求將會(huì)越來(lái)越多,目前已在少數(shù)企業(yè)中得到應(yīng)用,關(guān)聯(lián)數(shù)據(jù)也可以在不同部門(mén)之間利用內(nèi)聯(lián)網(wǎng)進(jìn)行交換[4]。
主要指合作組織或不同組織之間關(guān)聯(lián)系統(tǒng)中的數(shù)據(jù)相關(guān)聯(lián),即兩個(gè)或者兩個(gè)以上單位的系統(tǒng)之間可以合法地通過(guò)HTTP在網(wǎng)絡(luò)上交換私有的關(guān)聯(lián)數(shù)據(jù),從而實(shí)現(xiàn)一些特殊功能的應(yīng)用。
關(guān)聯(lián)數(shù)據(jù)的發(fā)布從技術(shù)的角度分析,主要涉及以下四個(gè)方面[5]:1)信息資源。在發(fā)布某類(lèi)信息資源的數(shù)據(jù)之前,需要明確待發(fā)布的信息資源是信息、知識(shí)還是數(shù)據(jù),是否有被關(guān)聯(lián)(引用)的必要,是否希望得到廣泛的利用等。2)資源標(biāo)識(shí)。任何一個(gè)信息資源都用一個(gè) HTTP的URI來(lái)標(biāo)識(shí),使得數(shù)據(jù)能真正實(shí)現(xiàn)基于 Web的訪(fǎng)問(wèn)與互聯(lián)。3)資源描述。資源可以有多種描述,例如 HTML,XML,RDF以及JPEG。關(guān)聯(lián)數(shù)據(jù)的描述主要是通過(guò)RDF格式來(lái)表示。RDF將一個(gè)資源描述成三元組(主語(yǔ)、謂語(yǔ)、賓語(yǔ)),從而使其成為帶有語(yǔ)義的結(jié)構(gòu)化數(shù)據(jù)。主語(yǔ)、謂語(yǔ)都需要用 URI來(lái)表示;賓語(yǔ)可以用 URI標(biāo)識(shí)另一個(gè)資源,也可以是字符串表示的文本。若把主語(yǔ)看做是類(lèi)資源,將謂語(yǔ)看做是類(lèi)資源的屬性資源,賓語(yǔ)就或者是類(lèi)資源或者是文字型資源。根據(jù)賓語(yǔ)的種類(lèi),可以將三元組分為兩類(lèi):文字型三元組和非文字型三元組,后者可以看做是類(lèi)資源之間的關(guān)聯(lián)。4)名稱(chēng)空間。除上述三個(gè)方面外,還需要使用URI作為信息資源對(duì)象的名稱(chēng)空間描述,不僅可以簡(jiǎn)化數(shù)據(jù)形式,而且方便根據(jù)名稱(chēng)空間來(lái)理解發(fā)布的數(shù)據(jù)屬性。
紐約時(shí)報(bào)在其關(guān)聯(lián)開(kāi)放數(shù)據(jù)網(wǎng)站[6]上分別以RDF文檔和HTML文檔發(fā)布其關(guān)聯(lián)數(shù)據(jù),目前已有1萬(wàn)多個(gè)標(biāo)簽,內(nèi)容涉及人物、組織、地點(diǎn)、主題等領(lǐng)域,可以按照開(kāi)放共用協(xié)議開(kāi)放使用。在紐約時(shí)報(bào)網(wǎng)站的文章頁(yè)面中,涉及相關(guān)標(biāo)簽的人名、組織等詞匯會(huì)自動(dòng)關(guān)聯(lián)到更多文章的鏈接。
關(guān)聯(lián)數(shù)據(jù)發(fā)布可通過(guò)專(zhuān)門(mén)的工具來(lái)發(fā)布,D2R就是比較流行的一種關(guān)聯(lián)數(shù)據(jù)發(fā)布工具,可用來(lái)幫助完成傳統(tǒng)數(shù)據(jù)向關(guān)聯(lián)數(shù)據(jù)的轉(zhuǎn)換[7]。關(guān)聯(lián)數(shù)據(jù)也可通過(guò)編程發(fā)布,如筆者所在的寧波市數(shù)字圖書(shū)館服務(wù)外包產(chǎn)業(yè)信息門(mén)戶(hù)(http://soip.nit.net.cn/,以下簡(jiǎn)稱(chēng)SOIP)中是通過(guò)PHP從MySQL中提取數(shù)據(jù)并生成RDF文件來(lái)發(fā)布的。在具體應(yīng)用中,SOIP關(guān)聯(lián)開(kāi)放數(shù)據(jù)的發(fā)布利用PHP組件從MySQL中提取數(shù)據(jù),然后根據(jù)合適的名稱(chēng)空間進(jìn)行RDF編碼,再利用動(dòng)態(tài)緩存技術(shù),實(shí)現(xiàn)關(guān)聯(lián)開(kāi)放數(shù)據(jù)的發(fā)布與數(shù)據(jù)動(dòng)態(tài)更新。SOIP關(guān)聯(lián)開(kāi)放數(shù)據(jù)的發(fā)布分為綜合發(fā)布的RDF文檔和單條記錄的RDF文檔,方便用戶(hù)根據(jù)需要利用。此外,還提供基于網(wǎng)頁(yè)的關(guān)聯(lián)開(kāi)放數(shù)據(jù)瀏覽。在SOIP關(guān)聯(lián)數(shù)據(jù)的具體應(yīng)用中,主要用于信息瀏覽時(shí)的信息拓展和關(guān)聯(lián)鏈接。
SOIP是寧波市數(shù)字圖書(shū)館特色庫(kù)項(xiàng)目建設(shè)內(nèi)容之一,旨在為寧波市服務(wù)外包產(chǎn)業(yè)的發(fā)展提供信息支撐和交流平臺(tái),支持寧波市服務(wù)外包企業(yè)信息化建設(shè)并為本市服務(wù)外包的人才培養(yǎng)和學(xué)術(shù)研究提供信息服務(wù)。為此,SOIP通過(guò)發(fā)布關(guān)聯(lián)數(shù)據(jù)的形式,使門(mén)戶(hù)信息資源能在企業(yè)信息環(huán)境中得到廣泛應(yīng)用。SOIP的關(guān)聯(lián)開(kāi)放數(shù)據(jù)發(fā)布和應(yīng)用的基本框架如圖1(虛線(xiàn)部分為目前還在繼續(xù)研發(fā)中的功能),目前已實(shí)現(xiàn)了企業(yè)名錄和專(zhuān)業(yè)人才的關(guān)聯(lián)數(shù)據(jù)發(fā)布,并在SOIP系統(tǒng)內(nèi)實(shí)現(xiàn)數(shù)據(jù)關(guān)聯(lián)應(yīng)用。
圖1 SOIP關(guān)聯(lián)數(shù)據(jù)發(fā)布與關(guān)聯(lián)數(shù)據(jù)應(yīng)用架構(gòu)
在做關(guān)聯(lián)數(shù)據(jù)的發(fā)布與應(yīng)用之前,需要處理好以下幾方面的問(wèn)題:1)PHP系統(tǒng)環(huán)境的默認(rèn)最大內(nèi)存限制為8M,處理大的RDF文檔時(shí)可能會(huì)出現(xiàn)內(nèi)存溢出,因此需要修改php.ini中memory_limit的設(shè)置來(lái)增大內(nèi)存,一般不超過(guò)系統(tǒng)全部?jī)?nèi)存的1/4,太大會(huì)影響系統(tǒng)速度,考慮到目前處理的RDF文檔少有超過(guò)50M的,所以設(shè)置為50M即可,這樣相對(duì)于服務(wù)器系統(tǒng)幾乎沒(méi)什么影響。也可在發(fā)布程序前估算文檔大小,再利用PHP內(nèi)置函數(shù)臨時(shí)設(shè)定內(nèi)存大小。2)發(fā)布RDF數(shù)據(jù)前需要對(duì)從MySQL中提取的數(shù)據(jù)進(jìn)行清理,使生成的數(shù)據(jù)符合RDF文件的格式和RDF數(shù)據(jù)處理的需要,主要清理的內(nèi)容有:連續(xù)空白、&符號(hào)、url編碼、日期格式、HTML標(biāo)記等。3)對(duì)已經(jīng)發(fā)布的RDF關(guān)聯(lián)數(shù)據(jù),可到W3[8]網(wǎng)站進(jìn)行RDF驗(yàn)證。該驗(yàn)證系統(tǒng)能根據(jù)提供的代碼或URI對(duì)RDF自動(dòng)解析并給出有錯(cuò)誤代碼的行數(shù),輔助檢查,以確保RDF格式的正確性。4)要盡可能利用標(biāo)準(zhǔn)的、有影響的命名空間,從而提高關(guān)聯(lián)開(kāi)放數(shù)據(jù)的易用性、開(kāi)放性和普適性。5)需要發(fā)布的關(guān)聯(lián)數(shù)據(jù)屬性元素盡可能選擇有關(guān)聯(lián)意義的、并能對(duì)語(yǔ)義表達(dá)有作用的數(shù)據(jù),比如專(zhuān)家學(xué)者的簡(jiǎn)介內(nèi)容并不是關(guān)聯(lián)數(shù)據(jù)的核心,可以在做數(shù)據(jù)清理時(shí)自動(dòng)截取少量?jī)?nèi)容進(jìn)行發(fā)布,既不影響數(shù)據(jù)利用,又能減少RDF文檔的大小。
處理好上述事務(wù)后,即可通過(guò)PHP編程,開(kāi)發(fā)相應(yīng)的發(fā)布組件,通過(guò)發(fā)布組件處理RDF內(nèi)容的發(fā)布和管理事務(wù)。實(shí)例效果請(qǐng)參見(jiàn)SOIP網(wǎng)站的數(shù)據(jù)開(kāi)放利用欄目。
關(guān)聯(lián)數(shù)據(jù)除了以RDF形式提供計(jì)算機(jī)利用外,還可提供方便人們基于網(wǎng)頁(yè)閱讀的方式,以促進(jìn)關(guān)聯(lián)數(shù)據(jù)的應(yīng)用。在PHP環(huán)境下有一個(gè)開(kāi)源的API工具:RAP(RDF API for PHP),可用于RDF的解析、查詢(xún),并能提供三元組的HTML輸出。在SOIP中,為了集中展示專(zhuān)家名錄信息,并將專(zhuān)家姓名鏈接到單個(gè)的RDF文件,就利用了RAP進(jìn)行數(shù)據(jù)解析,然后生成HTML數(shù)據(jù)供瀏覽,其中的RDF文件來(lái)自前文中發(fā)布的專(zhuān)業(yè)人才RDF文檔。
專(zhuān)業(yè)人才關(guān)聯(lián)數(shù)據(jù)的關(guān)聯(lián)應(yīng)用主要表現(xiàn)在瀏覽某位專(zhuān)業(yè)人才時(shí)能實(shí)現(xiàn)如下功能:1)根據(jù)專(zhuān)業(yè)人才關(guān)聯(lián)數(shù)據(jù)的研究興趣,展現(xiàn)與該專(zhuān)業(yè)人才研究興趣相關(guān)的人才列表。2)根據(jù)專(zhuān)業(yè)人才關(guān)聯(lián)數(shù)據(jù)和企業(yè)名錄關(guān)聯(lián)數(shù)據(jù)展現(xiàn)該人才所在單位的其他人才列表。3)根據(jù)企業(yè)名錄關(guān)聯(lián)數(shù)據(jù)對(duì)所屬企業(yè)字段與所在企業(yè)的名錄信息數(shù)據(jù)進(jìn)行自動(dòng)鏈接。4)根據(jù)知識(shí)庫(kù)關(guān)聯(lián)數(shù)據(jù)實(shí)現(xiàn)相關(guān)知識(shí)資源導(dǎo)航。5)根據(jù)地域關(guān)聯(lián)數(shù)據(jù)將該地域的專(zhuān)家信息、名錄信息和行業(yè)動(dòng)態(tài)信息進(jìn)行關(guān)聯(lián),促進(jìn)知識(shí)發(fā)現(xiàn)和信息利用。
實(shí)現(xiàn)上述功能既可以通過(guò)RAP利用SPARQL語(yǔ)言查詢(xún) RDF文檔,也可以直接利用RAP解析RDF文檔數(shù)據(jù)實(shí)現(xiàn)關(guān)聯(lián)應(yīng)用。由于SPARQL語(yǔ)言支持多RDF文檔的聯(lián)合查詢(xún),所以應(yīng)用SPARQL查詢(xún)?cè)谛噬弦?。上述功能的前三個(gè)已經(jīng)在SOIP中實(shí)現(xiàn),后兩個(gè)功能將在服務(wù)外包知識(shí)庫(kù)和地域范圍數(shù)據(jù)庫(kù)成熟后,也將進(jìn)行發(fā)布和開(kāi)發(fā)相關(guān)應(yīng)用。
基于上述研究與實(shí)踐,關(guān)聯(lián)開(kāi)放數(shù)據(jù)對(duì)提升系統(tǒng)服務(wù)能力和信息資源開(kāi)放利用效益明顯,主要表現(xiàn)在如下兩個(gè)方面:一方面,在系統(tǒng)內(nèi)部的應(yīng)用能很好地將與對(duì)象信息資源有關(guān)的相關(guān)數(shù)據(jù)進(jìn)行統(tǒng)一展現(xiàn);另一方面,通過(guò)提供關(guān)聯(lián)開(kāi)放數(shù)據(jù),使得企業(yè)能在自己的系統(tǒng)中應(yīng)用這些數(shù)據(jù),既拓展了數(shù)據(jù)的利用方式,又支持了企業(yè)的信息化建設(shè),大大彰顯了圖書(shū)館信息資源建設(shè)和服務(wù)的效果。展望未來(lái),如果圖書(shū)館利用自己搜集、整理信息和知識(shí)的專(zhuān)長(zhǎng),將大量的可用于關(guān)聯(lián)數(shù)據(jù)的信息和知識(shí)以關(guān)聯(lián)開(kāi)放數(shù)據(jù)的形式發(fā)布到網(wǎng)絡(luò)上,那么,圖書(shū)館將重新成為人們心目中的知識(shí)寶庫(kù)。
[1]Linked Data[EB/OL].[2010 -12 -28].http://en.wikipedia.org/wiki/Linked_Data.
[2]黃永文.關(guān)聯(lián)數(shù)據(jù)在圖書(shū)館中的應(yīng)用研究綜述[J].現(xiàn)代圖書(shū)情報(bào)技術(shù),2010(5):1—7.
[3]Chris Bizer,Richard Cyganiak.How to Publish Linked Data on the Web[EB/OL].[2010 -12 -28].http://www4.wiwiss.fu - berlin.de/bizer/pub/LinkedDataTutorial/.
[4]Linking enterprise data[EB/OL].[2010 -12 -28].http://events.linkeddata.org/ldow2008/papers/21 - servantlinking - enterprise - data.pdf.
[5]如何利用 D2R 發(fā)布 Linked data[EB/OL].[2010-12 -28].http://www.ibm.com/developerworks/cn/web/1003_zhangjing_d2r/index.html.
[6]New York Times - Linked Open Data[EB/OL].[2010 -12 -28].http://data.nytimes.com/.
[7]D2R Server - Publishing Relational Databases on the Semantic Web[EB/OL].[2010 - 12 - 28].http://www4.wiwiss.fu - berlin.de/bizer/d2r- server/.
[8]W3C RDF Validation Service[EB/OL].[2010 -12 -28].http://www.w3.org/RDF/Validator/.