官維
摘要:為了有效解決航運數(shù)據(jù)存在的碎片化現(xiàn)象以發(fā)揮航運數(shù)據(jù)的潛在價值,本文構(gòu)建了航運關聯(lián)數(shù)據(jù)并使用Fuseki平臺進行發(fā)布,通過SPARQL1.1的查詢擴展實現(xiàn)了跨不同數(shù)據(jù)端口的聯(lián)合查詢。研究結(jié)果表明:關聯(lián)數(shù)據(jù)能有效實現(xiàn)航運數(shù)據(jù)的語義化組織與關聯(lián)化集成,進而實現(xiàn)航運數(shù)據(jù)的“一站式”查詢應用。
Abstract: In order to effectively solve the fragmentation phenomenon of shipping data and play its potential value, this paper constructs the shipping linked data and publishes it using the Fuseki platform. Federated queries across different data ports are implemented through query expansion of SPARQL1.1. The result shows that linked data can effectively realize the semantic organization and linked integration of shipping data, in turn, the one-stop query application of which is realized.
關鍵詞:航運關聯(lián)數(shù)據(jù);關聯(lián)數(shù)據(jù)發(fā)布;聯(lián)合查詢
Key words: maritime linked data;publication of linked data;federated queries
中圖分類號:TP393 文獻標識碼:A 文章編號:1006-4311(2018)33-0206-02
0 引言
航運作為影響國民經(jīng)濟的重要因素之一,已經(jīng)受到各國政府的高度重視與廣泛關注。而航運信息是指所有與航運活動有關的信息,它覆蓋的范圍很廣,既包括航線、船舶等基礎性信息,也包括航運事故、航運交易等事務性信息。隨著大數(shù)據(jù)時代的來臨,航運信息已呈現(xiàn)出爆炸式的發(fā)展態(tài)勢,大量的航運信息以分散、異構(gòu)的形式分布于不同的數(shù)據(jù)存儲介質(zhì)中,導致不同的航運數(shù)據(jù)間難以實現(xiàn)信息的共享與互操作,極大地影響了航運數(shù)據(jù)價值的發(fā)揮。
關聯(lián)數(shù)據(jù)作為一種新興的互聯(lián)網(wǎng)技術(shù),強調(diào)在開放的網(wǎng)絡環(huán)境中,通過建立不同結(jié)構(gòu)化數(shù)據(jù)間的語義鏈接,實現(xiàn)分散異構(gòu)數(shù)據(jù)的互訪與共享。由于這一優(yōu)勢,關聯(lián)數(shù)據(jù)已經(jīng)在很多領域中得到了關注與應用,探索以關聯(lián)數(shù)據(jù)的形式發(fā)布領域數(shù)據(jù)已經(jīng)成為一個重要的研究內(nèi)容:陳德容分析了關聯(lián)數(shù)據(jù)技術(shù)在圖書館數(shù)據(jù)發(fā)布中的優(yōu)勢、使用原則、數(shù)據(jù)保障等問題,進而指出關聯(lián)數(shù)據(jù)能夠推動圖書館信息的傳播和復用并促進圖書館新舊系統(tǒng)的更替及數(shù)據(jù)格局的變更[1];趙龍文等提出一種基于關聯(lián)數(shù)據(jù)的遞進式政府數(shù)據(jù)開放模式,在此基礎上給出一種四層結(jié)構(gòu)的技術(shù)框架,為相關的研究與實現(xiàn)提供了借鑒與參考[2];牛永骎等以圖書情報領域為例,基于D2R軟件發(fā)布了領域?qū)W者關聯(lián)數(shù)據(jù)集,它區(qū)別于傳統(tǒng)的機構(gòu)知識庫,以更開放、關聯(lián)和共享的方式聚集一切相關的信息資源[3];祝帆帆等基于D2R工具將與中國十大傳世名畫相關的館藏數(shù)據(jù)發(fā)布為關聯(lián)數(shù)據(jù),進而發(fā)現(xiàn)關聯(lián)數(shù)據(jù)能有效實現(xiàn)館藏資源的整合并解決數(shù)據(jù)異構(gòu)的問題[4]。
作為傳統(tǒng)行業(yè)之一的航運業(yè)經(jīng)過多年的發(fā)展已經(jīng)建立了各類面向不同數(shù)據(jù)處理需求的航運信息系統(tǒng),這些系統(tǒng)因建立的時間、采用的方案各不相同,使得彼此間無法實現(xiàn)信息交換,航運信息的“碎片化”現(xiàn)象十分嚴重,而關聯(lián)數(shù)據(jù)技術(shù)的發(fā)展及其在具體領域的廣泛應用為解決這一問題提供了一種可行的思路和有效的方案。
因此,本文立足于解決現(xiàn)存的航運數(shù)據(jù)“碎片化”問題,將關聯(lián)數(shù)據(jù)技術(shù)引入航運領域,探索航運關聯(lián)數(shù)據(jù)的發(fā)布方法,并建立面向航運關聯(lián)數(shù)據(jù)的SPARQL聯(lián)合查詢應用,以更有效的數(shù)據(jù)組織形式及應用方式重構(gòu)及利用航運數(shù)據(jù),進而最大限度地發(fā)揮航運數(shù)據(jù)的潛在價值。
1 航運本體的構(gòu)建
本體是對與領域相關且共享程度高的概念與知識的形式化、規(guī)范化說明。在關聯(lián)數(shù)據(jù)的背景下,本體可看作是一套具有強語義性的規(guī)范詞匯表。航運本體的構(gòu)建為原始航運數(shù)據(jù)的RDF化提供了語義標注的工具,是航運關聯(lián)數(shù)據(jù)發(fā)布的基礎。
①類的定義。通過對航運領域概念的分析與提取,得到的類包括:船舶、船公司、航次、港口、地點、船舶類型和人。每個類可以定義其子類,如船員為人的子類等。
②屬性的定義。定義每個類的屬性,以表征個體實例的性質(zhì)。以船舶類為例,它的屬性包括:船舶名稱、建造年份、總噸、凈噸、船長度、船寬等。
③關系的定義。定義類的關系,以描述類之間存在的語義關聯(lián)。以船舶類為例,它的關系包括:注冊港口、所屬公司、船舶類型、船長等。
④本體的形式化描述 為了滿足機器對于本體的理解和處理,需要采用序列化格式對本體進行形式化編碼。以船舶類為例,給出船舶本體OWL序列化的部分結(jié)果如下:
2 航運關聯(lián)數(shù)據(jù)的發(fā)布
本節(jié)詳細介紹航運關聯(lián)數(shù)據(jù)發(fā)布的具體實現(xiàn)過程,為后續(xù)實現(xiàn)SPARQL聯(lián)合查詢提供可供使用的航運關聯(lián)數(shù)據(jù)集。
①原始數(shù)據(jù)采集。從與航運相關的網(wǎng)站上采集原始的航運數(shù)據(jù),包括:從中遠集裝箱運輸網(wǎng)站上采集航次信息、從中國海事服務網(wǎng)采集港口信息、從中國港口網(wǎng)采集船舶數(shù)據(jù)等。部分航運信息如下:
航次:014W、船名:COSCO_BELGIUM、承運人:COSCO、預計離港日:2015-11-10、預計到港日:2015-11-13、航程:3天。
②數(shù)據(jù)語義標注。使用構(gòu)建的航運本體,遵循RDF三元組模型,對原始的航運數(shù)據(jù)進行語義標注,使數(shù)據(jù)以機器可讀的形式表示與存儲。另外,將URI路徑http://mtlop.dlmu.edu.cn簡記為mtopl:,上述原始數(shù)據(jù)中船舶實例的語義標注結(jié)果如下:
③關聯(lián)鏈接構(gòu)建。關聯(lián)數(shù)據(jù)的最大價值在于構(gòu)建模式級或?qū)嵗壍逆溄?,而實例型的鏈接是最普遍、最重要的一類鏈接。對于航運關聯(lián)數(shù)據(jù),將構(gòu)建數(shù)據(jù)集的內(nèi)部鏈接與數(shù)據(jù)集間的外部鏈接。其中,內(nèi)部鏈接包括將航次實例、船舶實例、港口實例、航運公司實例等彼此互聯(lián),以實現(xiàn)航運數(shù)據(jù)集內(nèi)部數(shù)據(jù)的集聚;外部鏈接主要將航運數(shù)據(jù)集與包括DBPedia、Geonames和DSS在內(nèi)的其它數(shù)據(jù)進行關聯(lián),以擴展航運數(shù)據(jù)集的空間范圍。以航運數(shù)據(jù)集中的“大連港”為例,將其與DBPedia數(shù)據(jù)集中有關大連的實例進行關聯(lián),結(jié)果如下:
④關聯(lián)數(shù)據(jù)發(fā)布。為了保證航運關聯(lián)數(shù)據(jù)的可訪問性,需要采用三元組存儲器將航運RDF數(shù)據(jù)進行發(fā)布,并對外提供可供訪問的SPARQL查詢端口。本文使用Fuseki工具,該工具是基于HTTP的SPARQL查詢服務器。下載并配置后,以服務的形式運行Fuseki,通過在瀏覽器中輸入網(wǎng)址http://127.0.0.1:3030/即可訪問主界面。
將保存航運實例數(shù)據(jù)的RDF文件上傳至Fuseki服務器中,可通過Fuseki專門提供的查詢端口編寫SPARQL查詢語言獲取滿足特定需求的航運信息。
3 SPARQL聯(lián)合查詢的應用實例
現(xiàn)有SPARQL只能用于查詢孤立終端中的數(shù)據(jù),不支持跨不同端口的聯(lián)合查詢。在實際的查詢應用中,跨多個描述數(shù)據(jù)集的聯(lián)合查詢將會為用戶提供更加全面、豐富的信息資源。SPARQL1.1規(guī)范的擴展通過引入SERVICE運算符可支持分布式數(shù)據(jù)端口的聯(lián)合查詢。因此,本文在構(gòu)建并發(fā)布航運關聯(lián)數(shù)據(jù)集的基礎上,借助SPARQL1.1規(guī)范的擴展,實現(xiàn)航運關聯(lián)數(shù)據(jù)的SPARQL聯(lián)合查詢應用實例,示例代碼如下:
在執(zhí)行查詢時,首先會在http://127.0.0.1:3030/query中查詢屬性“港口名稱”取值為'大連港'的資源r,而后通過owl:sameAs獲取此資源在DBpedia數(shù)據(jù)集中對應的URI并賦值給變量rsameas,最后在另一個SPARQL端口http://DBpedia-live.openlinksw.com/sparql?timeout=2000中查詢該資源的屬性和屬性值,從而實現(xiàn)跨多個端口的SPARQL聯(lián)合查詢,最終獲取了關于同一資源的更多信息。
4 結(jié)論
本文構(gòu)建并發(fā)布了航運關聯(lián)數(shù)據(jù),在此基礎上實現(xiàn)了SPARQL聯(lián)合查詢。本文的研究結(jié)果表明:關聯(lián)數(shù)據(jù)通過簡單、直接的鏈接機制實現(xiàn)了航運數(shù)據(jù)的語義化組織及數(shù)據(jù)集內(nèi)外的無縫集成,能有效解決航運數(shù)據(jù)的“碎片化”現(xiàn)象,本文的下一步工作在于實現(xiàn)航運數(shù)據(jù)的可視化聚合。
參考文獻:
[1]陳德容.基于關聯(lián)數(shù)據(jù)的圖書館數(shù)據(jù)發(fā)布及數(shù)據(jù)服務[J]. 圖書館工作與研究,2015(2):25-27.
[2]趙龍文,莫荔媛,潘卓齊.基于關聯(lián)數(shù)據(jù)的政府數(shù)據(jù)開放實現(xiàn)方法研究[J].情報資料工作,2016(6).
[3]牛永骎,常娥.基于D2R發(fā)布學者關聯(lián)數(shù)據(jù)集探究-以圖書情報領域為例[J].圖書情報工作,2017,61(19):13-21.
[4]祝帆帆,高勁松,梁艷琪.館藏文物資源關聯(lián)數(shù)據(jù)的創(chuàng)建與發(fā)布——以中國十大繪畫為例[J].圖書館理論與實踐,2018(4).