一.Protege簡介、用途和特點
1.Protege簡介
Protege是斯坦福大學醫學院生物資訊研究中心基於Java開發的本體編輯和本體開發工具,也是基於知識的編輯器,屬於開放原始碼軟體。這個軟體主要用於語意網中本體的構建,是語意網中本體構建的核心開發工具,下面操作使用版本為5.5.0。
2.Protege用途
3.Protege特點
二.Protege案例
通過簡單例子介紹Protege基本操作,包括建立本體、構建類、建立子類、構建類之間的關係、建立物件屬性、建立資料屬性、建立範例、儲存本體、視覺化和推理。具體kgexample-v2.owl檔案下載參考[2]。
1.建立本體
開啟Protege後就是新建本體的介面,如下所示:
2.構建類
在Entities頁面,選擇Class標籤,右鍵點選owl:Thing,選擇增加子類"人物"和"地點"。
3.建立子類
右鍵點選"人物",然後增加子類"禪師",如下所示:
4.構建類之間的關係
因為人物和地點是不同的事物,即它們相互具有排它性(owl:disjoinWith)。首先選中"人物",在Entities右側Description點選DisjointWith後的+,在彈出的介面中展開owl:Thing,選擇"地點"後確定。
5.建立物件屬性
標籤Entities->Object properties->右鍵owl:topObjectProperty->Add Sub-properties->曾住:
為屬性新增domain和range屬性值,如下所示:
6.建立資料屬性
首先Entities->Data properties->owl:topDataProperty->Add Sub-properties->法號,然後選中法號->Description->Range->Built in datatypes->xsd:string:
說明:限制"法號"該屬性的取值範圍為字串。
7.建立範例
首先標籤Entities->Individuals->點選菱形圖示->佛印禪師,然後Entities->Description->Types->Class Hierarchy->禪師。這樣該範例就有了型別的約束,如下所示:
新增範例之間的關係,選中"佛印禪師"->Property assertions->Object property assertions->點選+->輸入物件屬性名稱(曾住)->輸入範例名稱(鎮江金山寺)。這樣"佛印禪師"和"鎮江金山寺"通過"曾住"關聯起來,如下所示:
範例新增屬性值,選中"蘇軾"->Property assertions->Data property assertions->+:
這樣就為"蘇軾"範例的屬性"別名"新增了具體的值,即蘇東坡、東坡。
8.儲存本體
Ctrl+S儲存本體,選擇"RDF/XML Syntas"檔案格式,儲存為kgexample.owl。如下所示:
9.視覺化
Windows->Tabs->OntoGraf,如下所示:
10.推理
Reasoner->HermiT->Start reasoner,推理得到的資訊將會在對應的描述中黃色背景顯示出來。裴休是裴文德的父親父親的domain是人物,range是男人,推出裴休是男人的一個範例,如下所示:
對於推匯出來的資訊,如果想知道為什麼被推理機推匯出來,可以點選推匯出的資訊後面的問號,解釋的原因會在新的對話方塊中顯示出來。
參考文獻:
[1]Protege外掛庫:https://protegewiki.stanford.edu/wiki/Protege_Plugin_Library
[2]kgexample-v2.owl: https://url39.ctfile.com/f/2501739-934982316-535253?p=2096 (存取密碼: 2096)