袁 林 黃春毅
〔摘 要〕本文介紹了本體在數(shù)據(jù)集成中的作用,借簽Wrapper/Mediator架構(gòu)模式,提出了基于本體的農(nóng)業(yè)數(shù)據(jù)集成模式,并以一個(gè)簡單的農(nóng)業(yè)古籍?dāng)?shù)據(jù)集成為例,闡述了此模式的具體應(yīng)用。
〔關(guān)鍵詞〕本體;農(nóng)業(yè)數(shù)據(jù);數(shù)據(jù)集成
〔中圖分類號(hào)〕TP391 〔文獻(xiàn)標(biāo)識(shí)碼〕B 〔文章編號(hào)〕1008-0821(2009)03-0062-04
隨著信息處理技術(shù)的發(fā)展,農(nóng)業(yè)信息急劇增長,產(chǎn)生了大量不同類型的數(shù)據(jù),這些數(shù)據(jù)以不同形式存放在各個(gè)部門的不同應(yīng)用系統(tǒng)中,而且往往處于采集時(shí)的原始狀態(tài),具有異構(gòu)性,包括數(shù)據(jù)結(jié)構(gòu)異構(gòu)和語義異構(gòu)。如何將這些異構(gòu)數(shù)據(jù)進(jìn)行合理有效地集成,成為農(nóng)業(yè)信息共享必需解決的問題。
1 基于本體的農(nóng)業(yè)數(shù)據(jù)集成模式
語義異構(gòu)(即語義沖突)包括概念模糊、命名沖突和域沖突。利用本體為特定領(lǐng)域的實(shí)體給出名字和描述,使用謂詞來表示這些實(shí)體之間的關(guān)系。通過對概念的嚴(yán)格定義和概念之間的關(guān)系來確定概念的精確含義,表示共同認(rèn)可的、可共享的知識(shí),從而解決語義異構(gòu)的問題。
在農(nóng)業(yè)數(shù)據(jù)集成中使用農(nóng)業(yè)本體有以下優(yōu)勢:本體提供了一個(gè)豐富的、預(yù)定義的詞匯庫,可作為與數(shù)據(jù)源的穩(wěn)定的概念接口,并且獨(dú)立于數(shù)據(jù)模式;本體表示的知識(shí)足夠支持所有相關(guān)信息源的轉(zhuǎn)換;本體支持一致的管理和非一致數(shù)據(jù)的識(shí)別等。
本文利用本體在解決語義異構(gòu)上的優(yōu)勢,研究解決農(nóng)業(yè)數(shù)據(jù)集成中語義異構(gòu)的問題,借鑒Wrapper/Mediator架構(gòu)方式[1],提出適應(yīng)農(nóng)業(yè)數(shù)據(jù)的集成模式,如圖1所示。
此模式研究包括:農(nóng)業(yè)數(shù)據(jù)全局本體構(gòu)建、農(nóng)業(yè)數(shù)據(jù)局部本體構(gòu)建、全局本體與局部本體映射,以及局部本體與數(shù)據(jù)源的映射。本文以一個(gè)簡單的農(nóng)業(yè)古籍?dāng)?shù)據(jù)集成為例,闡述這一模式在農(nóng)業(yè)數(shù)據(jù)集成中的具體應(yīng)用。
2 農(nóng)業(yè)數(shù)據(jù)全局本體構(gòu)建
農(nóng)業(yè)數(shù)據(jù)全局本體的建立主要包括確定本體應(yīng)用的目的和范圍、查找術(shù)語(原語),定義全局本體,本體編碼,具體步驟如下:
2.1 確定本體應(yīng)用的目的和范圍
應(yīng)用目的是幫助集成與農(nóng)業(yè)古籍有關(guān)數(shù)據(jù),方便知識(shí)共享。應(yīng)用范圍包括農(nóng)業(yè)古籍相關(guān)領(lǐng)域的數(shù)據(jù)。
2.2 查找術(shù)語
這是提取數(shù)據(jù)集成領(lǐng)域中詞匯(術(shù)語)的過程。這些詞匯用來構(gòu)建全局本體的概念或者屬性。通過了解領(lǐng)域知識(shí),找到該領(lǐng)域中的主要的、關(guān)鍵的概念,并將其提取出來作為全局本體中的詞匯,由這些全局的詞匯構(gòu)成公共語義詞匯庫,作為待集成數(shù)據(jù)源語義上統(tǒng)一的基準(zhǔn)。提取出來的詞匯必須是概念明確、無二義性、領(lǐng)域相關(guān)度高的詞匯。例如:農(nóng)業(yè)古籍相關(guān)術(shù)語提取如下:農(nóng)書、出版機(jī)構(gòu)、研究機(jī)構(gòu)、出版活動(dòng)、研究活動(dòng)、農(nóng)史專家、農(nóng)書作者、姓名、主題、版本等。
2.3 定義全局本體
這個(gè)步驟包括3個(gè)方面的內(nèi)容:定義類的等級(jí)結(jié)構(gòu)、定義類的屬性、定義類之間的關(guān)系。
2.3.1 定義類和類等級(jí)結(jié)構(gòu)
本文在定義類的等級(jí)結(jié)構(gòu)時(shí)采用自頂向下的方法,在全局本體中,從頂層出發(fā),分為農(nóng)書、機(jī)構(gòu)和活動(dòng);其中:活動(dòng)又分為出版活動(dòng),研究活動(dòng)和收藏活動(dòng),機(jī)構(gòu)又分為研究機(jī)構(gòu),出版機(jī)構(gòu)和收藏機(jī)構(gòu)。先創(chuàng)建父概念,再創(chuàng)建其子概念。其類層次結(jié)構(gòu)如如圖2所示:
2.3.2 定義類的屬性
定義類的屬性即是描述這些概念的內(nèi)部結(jié)構(gòu)。從已創(chuàng)建的術(shù)語表中篩選出類后,剩下的大多數(shù)術(shù)語(除一些個(gè)體或?qū)嵗?基本上都是這些類的屬性。這些屬性包括主題、版本等。
2.3.3 定義類之間的關(guān)系
關(guān)系定義了本體中不同類之間的聯(lián)系,以及類與數(shù)據(jù)類型之間的聯(lián)系。如圖2所示:關(guān)系對應(yīng)與圖中連接不同的矩形的邊,表示不同類之間的聯(lián)系。
2.4 本體的編碼
使得本體能以計(jì)算機(jī)可以理解的方式表示,從而有效利用本體的語義描述能力。本文采用OWL語言描述本體,使用斯坦福大學(xué)的 protégé本體建模工具進(jìn)行建模。以下是部分OWL文件代碼,以及如圖3所示的本體圖。
agrzbook.owl文件部分內(nèi)容:
<o(jì)wl:Class rdf:ID=″AgrzBook″>
<rdfs:subClassOf
rdf:resource=″http:∥www.w3.org/2002/07/owl#Thing″/>
<rdfs:subClassOf>
<o(jì)wl:Restriction>
<o(jì)wl:allValuesFrom>
<o(jì)wl:Class rdf:ID=″Author″/>
</owl:allValuesFrom>
<o(jì)wl:onProperty>
<o(jì)wl:ObjectProperty rdf:ID=″has″/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
3 農(nóng)業(yè)數(shù)據(jù)局部本體構(gòu)建
農(nóng)業(yè)數(shù)據(jù)局部本體是對農(nóng)業(yè)局部數(shù)據(jù)源的語義描述。使用局部本體的優(yōu)勢主要體現(xiàn)為以下兩點(diǎn):
每個(gè)局部數(shù)據(jù)源都可能有不同的數(shù)據(jù)模型,即使相同的數(shù)據(jù)模型也可能有不同的語義異構(gòu)問題。通過對局部數(shù)據(jù)源的分析,將局部數(shù)據(jù)源的語義信息提取出來,并用形式化的本體建模語言進(jìn)行描述,通過映射能有效解決同名異義或異名同義等問題。
由于全局本體和局部本體的分離,降低了系統(tǒng)耦合性,使得局部數(shù)據(jù)源的數(shù)據(jù)模式的改變不會(huì)影響到全局本體,能較快的適應(yīng)數(shù)據(jù)源模式頻繁改變的情況。
農(nóng)業(yè)古籍?dāng)?shù)據(jù)集成中,預(yù)設(shè)存在一個(gè)數(shù)據(jù)源S1主要存儲(chǔ)收藏機(jī)構(gòu)與農(nóng)書信息,其對應(yīng)局部本體如圖4所示。
Agrzbook(Name,Version,Count,Cname);(農(nóng)書的名稱、版本、數(shù)量和收藏機(jī)構(gòu)名稱)
Collector(Cname,Address,Type);(收藏機(jī)構(gòu)名稱、地址和類型)
Collect(Cname,Name);(收藏機(jī)構(gòu)名稱和農(nóng)書名稱)
同時(shí),存在一個(gè)數(shù)據(jù)源S2主要存儲(chǔ)出版機(jī)構(gòu)與農(nóng)書信息,其對應(yīng)局部本體如圖5所示。
Monograph(Aname,Version,Count,Name);(農(nóng)書的名稱、版本、數(shù)量和收藏機(jī)構(gòu)名稱)
Publisher(Name,Address,Type);(出版機(jī)構(gòu)名稱、地址和類型)
Publish(Name,Aname);(出版機(jī)構(gòu)名稱和農(nóng)書名稱)
4 全局本體與局部本體映射
局部本體是全局本體的局部視圖,局部本體中的概念和關(guān)系在全局本體中可以找到一個(gè)對應(yīng)的語義上相同的概念實(shí)體,通過這種映射建立語義上的相關(guān)性。
具體映射建立方法可以分為以下步驟:概念的映射、屬性的映射和角色的映射。
4.1 概念的映射
通過概念映射解決各個(gè)局部數(shù)據(jù)源的異名同義和同名異義問題。
如局部數(shù)據(jù)源S1中的Agrzbook和全局本體中的Agrzbook是代表相同的語義概念,則建立起從S1.Agrzbook到Agrzbook的映射關(guān)系。如圖6所示。
再如數(shù)據(jù)源S1中用Agrzbook表示農(nóng)書,而數(shù)據(jù)源S2中用Monograph表示農(nóng)書。這兩個(gè)概念在語義上是相似的,則通過建立S1.Agrzbook到全局本體中的Agrzbook的映射和S2.Monograph到全局本體中的Agrzbook的映射,使得兩個(gè)不同名字的概念在語義上得到了統(tǒng)一。如圖7所示。圖6 映射解決異名同義問題
4.2 定義局部本體中的屬性到全局本體中的屬性的映射關(guān)系
映射建立方法和概念的映射類似。
4.3 定義局部本體中的角色和全局本體角色的映射關(guān)系
角色是連接概念之間的關(guān)系,通過定義每個(gè)局部本體中的角色到全局本體中角色的映射關(guān)系,使得局部本體和全局本體之間的映射關(guān)系不再只是概念之間的對應(yīng)關(guān)系,擴(kuò)展到路徑之間的映射關(guān)系。局部本體之間的角色路徑對應(yīng)到了全局本體的角色路徑。
5 局部本體與數(shù)據(jù)源的映射
具體的建立方法如下:
5.1 建立本體中的概念(本體圖中的矩形代表的實(shí)體)和關(guān)系表的映射
即將本體中的概念對應(yīng)到關(guān)系數(shù)據(jù)庫中的表名。
5.2 建立本體中的屬性和關(guān)系表的映射
即將本體中的屬性對應(yīng)到關(guān)系數(shù)據(jù)庫中關(guān)系表的具體的字段名。
5.3 局部本體中角色和關(guān)系數(shù)據(jù)庫的映射
由于關(guān)系數(shù)據(jù)庫中實(shí)體之間的關(guān)系主要分為一對一、一對多、多對多3種,不同的關(guān)系模式通過主鍵和外鍵的方式聯(lián)系起來。對于多對多的實(shí)體關(guān)系,需要單獨(dú)構(gòu)造一個(gè)關(guān)系表,關(guān)系表的主鍵包含了2個(gè)外鍵,它們分別是關(guān)系表聯(lián)系的兩個(gè)實(shí)體的主鍵。
數(shù)據(jù)源S1和數(shù)據(jù)源S2建立局部本體到數(shù)據(jù)源的映射如表1和表2所示。
6 結(jié)束語
農(nóng)業(yè)資源合理高效利用是農(nóng)業(yè)可持續(xù)發(fā)展的重要保證,而農(nóng)業(yè)數(shù)據(jù)共享是農(nóng)業(yè)資源合理高效利用的前提。目前,農(nóng)業(yè)數(shù)據(jù)的開發(fā)利用程度還很低,大量數(shù)據(jù)處在分散狀態(tài),數(shù)據(jù)之間缺乏統(tǒng)一的標(biāo)準(zhǔn)。本文根據(jù)本體在數(shù)據(jù)集成中的作用,提出了將一種基于本體的數(shù)據(jù)集成模式應(yīng)用于農(nóng)業(yè)數(shù)據(jù)集成中,對當(dāng)前農(nóng)業(yè)數(shù)據(jù)集成中遇到的問題提出了一套解決方案。本研究的下一步工作是利用集成的農(nóng)業(yè)數(shù)據(jù)建立一個(gè)基于本體的農(nóng)業(yè)數(shù)據(jù)檢索平臺(tái),實(shí)現(xiàn)數(shù)據(jù)共享。
參考文獻(xiàn)
[1]李珊,歷浩,張炯,等.基于本體的異構(gòu)數(shù)據(jù)集成的研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28(6):1460-1462.
[2]曹玲,何琳.農(nóng)業(yè)古籍本體構(gòu)建與應(yīng)用[J].廣西師范大學(xué)學(xué)報(bào):自然科學(xué)版,2007,(2):1-4.
[3]鄭婭峰.異構(gòu)數(shù)據(jù)集成的研究與實(shí)現(xiàn)[D].西北大學(xué),2005.
[4]馮志勇,李文杰,李曉紅.本體論工程及其應(yīng)用[M].北京:清華大學(xué)出版社,2007.
[5]向紅.基于本體的異構(gòu)數(shù)據(jù)集成系統(tǒng)研究與實(shí)現(xiàn).[D]西安電子科技大學(xué),2007.
[6]謝能付,王文生.農(nóng)業(yè)知識(shí)本體構(gòu)建方法[J].農(nóng)業(yè)網(wǎng)絡(luò)信息,2007,(8):12-16.
[7]趙菊華.基于本體的水資源數(shù)據(jù)研究[J].計(jì)算機(jī)應(yīng)用,2007,(10):31-33.
[8]賈暉.基于本體映射的異構(gòu)數(shù)據(jù)集成中間件HDIM研究[J].現(xiàn)代電子技術(shù),2007,(18):143-145.
[9]常春.聯(lián)合國農(nóng)業(yè)與糧食組織AOS項(xiàng)目[J].農(nóng)業(yè)圖書情報(bào)學(xué)刊,2003,(2):14-15.