馮 帆(新鄉(xiāng)醫(yī)學院三全學院 圖書館,河南 新鄉(xiāng) 453003)
隨著網絡變得越來越快的發(fā)展,萬維網開始與我們的日常生活息息相關,成為我們生活的一部分,在萬維網中人們越來越渴望直接獲取原始數據,建立全球性信息空間,而目前未在在萬維網中并沒有明確提供一個范式將全球信息中的數據連接起來,直到2006關聯(lián)數據的提出給我們帶來了一線曙光使得我們建立全球性有序的信息空間成為可能。
關聯(lián)數據的概念是由Tim Berners-Lee提出的,它是一種簡單的語義網實現(xiàn)技術,它的基本原理是利用RDF數據模型建立結構化數據發(fā)布于網絡上再聯(lián)接到不同數據庫便于建立關聯(lián)。其重要價值在于通過RDF(資源描述框架)數據模型,把互聯(lián)網上存在的大量非結構化數據和采用不同標準的結構化數據轉換成遵循統(tǒng)一標準的結構化數據。RDF對資源的表達是通過一系列的三元組來實習。每個三元組有主語、謂語和對象三個部分組成,構成一個聲明。主語是URI所標識的資源,對象可以是一個字符串,如字母、時間、數字等,也可以是一個URI是與主語有關的其他資源的標識符,即RDF鏈接(RDF Link);謂詞表明了主語和對象之間的關系,謂詞也可以是URI,比如來自某一詞表或URI集合。關聯(lián)數據的三元組都應該盡可能的以URI來表達,以RDF來編碼。
對于關聯(lián)數據在維基百科中的定義是:關聯(lián)數據是語義網的主題之一,描述了通過可鏈接的URI方式來發(fā)布、分享、連接Web中各類資源的方法。 而Tim Berners-Lee 2006年在Linked Data一文中提出了管理數據的概念和關聯(lián)數據四個原則,并在2009年的TED大會上,將關聯(lián)數據進一步闡述為:關聯(lián)數據是一箱箱數據,當通過開放標準關聯(lián)到一起時,從中可以萌發(fā)出很多新事物和新應用[1]。其中關聯(lián)數據的四個原則為:①使用URI作為網絡對象的名稱;②使用HTTP URI機制直接訪問對象;③當訪問時,以RDF形式提供有用信息;④盡可能多的提供相關URI鏈接,使人民發(fā)現(xiàn)更多信息。
通過以上關聯(lián)數據的基本概念和基本原則則可以概括出關聯(lián)數據的核心理念為:讓Web代理通過簡單通用的HTTP URI規(guī)范直接訪問文檔中的“數據”。所以,在實現(xiàn)技術上關聯(lián)數據要遵循兩個基本點:描述和鏈接。通過描述可以實現(xiàn)統(tǒng)一格式化數據,使機器能自動發(fā)現(xiàn)和確認,鏈接也應支持機器自動連接。從而發(fā)布關聯(lián)數據從技術上來說應遵循兩條原則:第一,在萬維網上發(fā)布或將數據轉化為統(tǒng)一結構化的RDF三元組,包括統(tǒng)一命名,統(tǒng)一內容描述機制;第二,利用RDF鏈接同一數據源內各數據和鏈接不同數據源,即建立內容關聯(lián)機制,包括關聯(lián)解析機制、檢索機制、調用機制。
關聯(lián)數據是語義網中的一種新技術,其基本原則決定了關聯(lián)數據的實現(xiàn)應獨立于現(xiàn)有的任何具體技術和工具,只是和相關的Web標準有關。Bizer C.Cyganiak.R和Heath T[2]指出,發(fā)布關聯(lián)數據時應需要考慮以下三個問題:數據量的大小、數據的更新頻率和數據的存儲方式。如果數據量很?。◣装贄lRDF或更少),可以采用靜態(tài)RDF文件,通過手工或軟件自動轉換(靜態(tài)發(fā)布);如果數據量很大,則需要將它們放入RDF庫中,并通過相應的服務器(如Pubby等)作為關聯(lián)數據服務的前端。如果數據的更新頻率很大,需要引入更新機制或在請求數據時根據原始數據在線生產RDF數據。
不同形式的數據發(fā)布為關聯(lián)數據需要不同的技術工具,目前比較著名的工具有以下幾種:
(1)對于以數據庫方式存儲的數據,需轉換工具將其轉換為統(tǒng)一格式RDF三元組。主要工具有D2RQ[3]平臺、Virtuoso Universal Server[4]、Triplify[5]等。
(2)D2RQ平臺由映射語言、D2R引擎和D2R服務器組成。D2RQ映射語言[6]支持從關系型數據庫到RDF數據轉換規(guī)則的編寫,通過該語言,用戶可以定義如何將關系型數據庫中的表、列、行、列值、外鍵值映射成RDF數據中的類、屬性、資源、文本、RDF鏈接。D2R引擎將用戶輸入的SPARQL轉換成SQL提交給關系型數據庫管理系統(tǒng),并將SQL查詢結果封裝成RDF三元組。D2R服務器基于D2R引擎之上提供了Web界面,瀏覽器用戶可以查看數據網頁。如圖1:
圖1 D2RQ平臺體系結構[3]
(3)如果數據內容是API或者OAI-PMH協(xié)議格式,可以利用OAI2LOD Server[7]建立一個“轉換”封裝器,封裝器將HTTP URI分配給由API提供的非信息資源,當被參引的URI請求為Application/RDF+XML時,封裝器能夠將客戶端的請求轉換為相應的API,并將API請求的結果轉換為RDF格式并發(fā)送回客戶端。
(4) 如果是通用格式 Excel,CSV等, 可以使用 JPEG2RDF[8],MARC/MODS2RDF[9],Email2RDF[10]等轉換工具;也可以遠程調用已有的API,如用RDF Book Mashup調用“亞馬遜 API”來獲取圖書信息。
Drupal誕生于2001年,2008年正式推出了對關聯(lián)數據的支持功能,2011年1月,Drupal7正式發(fā)布,RDF相關模塊是Drupal7的核心模塊。Drupal在互聯(lián)網發(fā)布關聯(lián)數據主要概括為以下兩個方面:
(1)數據RDF化Drupal發(fā)布關聯(lián)數據的前提是將自身結構化數據的RDF化。Drupal作為一個內容管理系統(tǒng),可管理任意不同的內容類型,每種內容類型都有自己的結構化數據。在Drupal中,基于某個內容類型創(chuàng)建的實例叫做節(jié)點,例如,博客在Drupal中作為一種內容類型,博客的標題是這個內容類型的一個字段,某作者寫的一篇博文就是一個節(jié)點。Drupal將內容類型、字段、節(jié)點分別映射到RDF三元組模型中的 “類”、“屬性” 和 “對象”:”site:blog a rdfs:class;tdfs:label“blog””;”site:Title rdf:Property;rdfs;label“Title””。 當定義好站點的內容模型后,系統(tǒng)會自動生成基于RDFS的本地詞匯表,命名空間的前綴默認為“site”,地址默認為http://siteurl/ns#,當一個節(jié)點創(chuàng)建后,系統(tǒng)會自動賦予一個http URI,一般默認為:http://siteurl/node/nodeno(siteurl為站點的URL地址,nodeno為系統(tǒng)按內容節(jié)點創(chuàng)建時間順序自動生成的流水號),指向該博文的html文檔。同時,系統(tǒng)工業(yè)會自動生成該博文的RDF數據,RDF數據中術語的命名空間為“site:http://siteurl/ns#”,RDF數據也自動獲得一個http URI,一般默認為“http://siteurl/node/nodeno/rdf”, Drupal利用 Apache訪問 http://siteurl/node/nodeno/rdf,可返回RDF數據,并且人工可以瀏覽RDF數據的全貌。Drupal通過這樣的機制將站點所有內容那個自動轉換為基于RDF數據模型的語義數據,并自動獲得HTTP URI,發(fā)布在網上。
(2)RDF 數據間的鏈接
RDF數據的特征就是可以開放、可利用、可關聯(lián),不僅可以鏈接統(tǒng)一數據源中的資源,還可以與其他數據源鏈接,似的用戶能跟隨RDF鏈接瀏覽整個數據WEB。
Drupal在建立本地RDF時,建立了類似于超文本鏈接的鏈接機制,將字段值設為站點內的另一個節(jié)點,個節(jié)點通過字段節(jié)點來建立關聯(lián)。具體實現(xiàn)如下:字段被映射為一個RDF屬性,節(jié)點被轉換成RDF數據實例,各RDF數據實例之間就通過RDF屬性建立關聯(lián)。如下圖2所示。
圖2 各RDF數據實例建立關聯(lián)
目前,Web上最常用的開放利用RDF數據的方式Web上公開的SPARQL查詢終端。Drupal在本地提供了SPARQL查詢終端,同時Drupal支持RDF數據批量導入和導出RDF數據集,在本地站點管理后臺,可導入來自其他數據源的RDF數據。
DBpedia它是在萬維網中的Wikipedia中對大量的結構化的信息提取,允許你訪問復雜的查詢連接在維基百科網站中資料各種數據集。簡單的說就是DBpedia是從維基百科的詞條里抽取結構化數據,以提供更準確和更直接的維基百科搜索,并可使其他數據集與維基百科在數據節(jié)點上相鏈接。從而可以使它更容易在維基百科上用于新的、有趣的方式與大量的數據進行鏈接,進而建立新導航、鏈接和改善百科全書本身。
目前在DBpedia知識庫中有超過364萬的東西,包括416000人,526000個座位,音樂專輯,60000電影、17500視頻游戲,共有169000家機構,183000種和5400的疾病。并且 DBpedia數據集的標簽和內容有自己的特點,這些東西有97種不同的語言,并且鏈接到圖片的鏈接,外部的網頁還鏈接到其他RDF數據集,因此,由10億塊信息組成其中3.85億的人中提取的英文版本維基百科和大約6.65億提取和其他語言版本的鏈接外部的數據集。DBpedia的知識庫和其它的相比具有很多優(yōu)點,它有大量的現(xiàn)有知識基礎,涵蓋多個領域,代表了真正的社區(qū)協(xié)議,它的自動進化其實質為維基百科的變化,所以說Dbpedia做到了真正意義上的數據關聯(lián)。
在DBpedia關聯(lián)數據發(fā)布首先也要進行進行結構化數據抽取并RDF化。其具體工作流程如下圖3所示為:頁面收集器(PageCollection)是本地或遠程Wikipedia文章源的抽象;目標器(Destination)存儲或設置是否鏈接抽取RDF三元組;抽取器(Extractor)將特定的Wiki標記轉換為三元組;解析器(Parsers)通過識別數據類型、不同單元之間的轉換值和將標記拆分為列表來支持抽取器。抽取業(yè)務將頁面收集、抽取和目標器組成一個工作流。結構化數據經抽取并轉換為RDF文件之后,存儲在Openlink virtuoso存儲器重,它能夠提供SPARQL端點。在使用過程中用戶可以瀏覽DBpedia數據集,并且通過RDF鏈接到其他數據集如 GeoNames、RDF BookMashup或者是 DBLP Bibliography而獲得更多的信息等結構化數據經抽取并轉化成RDF文件之后,存儲于OpenLinkVirtuoso存儲器中,它能夠提供SPARQL端點。為了獲得關聯(lián)數據視圖,在SPARQL端點前面還部署了Pubby,能夠為SPARQL端點提供一個關聯(lián)數據界面,用戶通過此界面就可以進行多種途徑的檢索,從而找到自己所需要的數據。
圖3 DBpedia關聯(lián)數據工作流程
此外,DBpedia與許多大規(guī)模的數據集合本體(如美國人口統(tǒng)計、GeoNames、DBLP Bibliography等)實現(xiàn)管理與互操作。由于廣泛的主題覆蓋面,DBpedia具有與各類大型數據集的通用數據,因此,被各種數據集首選為關聯(lián)目標,同時DBpedia又作為各數據集的中介,彼此相互關聯(lián)。如圖顯示了與DBpedia相關聯(lián)的數據集(2011.9.11),總計多大10億個RDF三元組,620萬到其他的RDF數據集的外部鏈接。通過這些RDF鏈接,用戶可以從一個DBpedia的計算機科學家鏈接到其在DBLP數據庫中的出版物;從一個DBpedia圖書看到來自RDF Book Mashup的書評和售價;或者從一個DBpedia中的樂隊到由MusicBrainz提供的樂隊歌曲。
關聯(lián)數據的應用目前在國內集中在圖書館領域,關聯(lián)數據它為圖書館的資源發(fā)現(xiàn)服務提供了良好的途徑,它創(chuàng)造了把圖書館的資源和外部世界相互連接起來的機會,可以增強和擴展圖書館的發(fā)現(xiàn)平臺,以及支持圖書館在學術交流環(huán)境下作為創(chuàng)建者和出版者的作用,具體來講關聯(lián)數據是可以提供多個分布式異構數據源整合的關聯(lián)的訪問,將來自不同數據源的同一個對象進行整合,返回給用戶關于該對象的所有相關信息的統(tǒng)一視圖。然而,在國外已經擴展到各個領域,例如娛樂領域,由于在萬維網上我們大眾獲取的最多信息就是在娛樂生活方面關聯(lián)數據在此方面的應用將會大大提升對人們生活的影響力。
我們就拿國外的BBC為例,它創(chuàng)立于1920年,電臺業(yè)務開播于創(chuàng)立當天,并首次于1930年播出電視節(jié)目。BBC目前有32種語言的國際服務,8個全國電視頻道,1個高清頻道,很多地方頻道,10個國家電臺,40多個地方電臺。在1994年建立了同行業(yè)最早的網站:bbc.co.uk。通過以上信息的介紹所有這些歷史,積累了難以想象的資料和素材,使它必須再次領先世界,建立最先進的語義媒體庫:支持知識搜索,能夠自動向機器提供服務。作為廣播電視公司,節(jié)目是它最大的資源。傳統(tǒng)上,網站只是做節(jié)目推廣?,F(xiàn)在三網合一,可以用來發(fā)布、推送、組織和存檔節(jié)目。BBC一直在尋求這樣的技術,能夠將BBC千萬小時的節(jié)目及相關資源,組織成一個腦庫,成為人類記憶的一部分。整合對于因此進行關聯(lián)數據的整合對于BBC未來的發(fā)展起著不可估量的作用,如下圖4就是實現(xiàn)BBC內部數據關聯(lián)的過程。
圖4 BBC實現(xiàn)關聯(lián)數據的過程
通過關聯(lián)數據之后可以看出網站和數據的可用性大大增強,用戶體驗得到巨大提升,SEO效果明顯,甚至可以到每個資源,查準率、可點擊性和可傳播性都獲得很大提高,可以看出整個網站是一個API平臺,采用了RESTful發(fā)布,與Web無縫集成,保證了鏈接的永久性和數據的開放性,系統(tǒng)各組成部分松散耦合,互相聯(lián)系卻互不干擾,整個系統(tǒng)成為一個不斷增長的有機體,從而帶動了它的健康發(fā)展。
[1]Berners-Lee T.Linked Data[EB/OL].[2010-01-20].http://www.w3.org/DesignIssues/LinkedData.htm.
[2]BizerC,Cyganiak R,HeathT.How to Publish Linked Data on the Web[EB/OL].[2010-02-22].http://www4.wiwiss.fu-berlin.de/bizer/pub/LinkedDataTutorial/20070727/.
[3]The D2RQ Platform[EB/OL].[2009-08-10].http://www4.wiwiss.fu-berlin.de/bizer/D2RQ/spec/.
[4]OpenLink software[EB/OL].[2010-02-22].http://virtuoso.openlinksw.com/.
[5]triplify.org:Overview[EB/OL].[2012-09-12].http://triplify.org/.
[6]D2RQ映射語言的Schema定義[EB/OL].[2010-09-12].http://www4.wiwiss.fuberlin.de/bizer/d2rq/0.1/.
[7]Haslhofer,B.,Schandl,B.The OAI2LOD Server:Exposing OAI-PMH Metadata as Linked Data[C]//Proceedings of the 1st Workshop about Linked Data on the Web(LDOW2008)Beijing China.
[8]JPEG_RDFizer-SMILE[EB/OL].[2010-09-12].http://simile.mit.edu/wiki/JPEG_RDFizer.
[9]MARC/MODS RDFizer-SMILE[EB/OL].[2010-09-12].http://simile.mit.edu/wiki/MARC/MODS_RDFizer.
[10]RDF Book Mashup-Serving RDF Descriptions of Your Books[EB/OL].[2010-09-12].http://www4.wiwiss.fu-berlin.de/bizer/bookmashup/index.html.