《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > 基于RDF的知識(shí)表示到語義網(wǎng)絡(luò)語言SNetL的轉(zhuǎn)換研究

基于RDF的知識(shí)表示到語義網(wǎng)絡(luò)語言SNetL的轉(zhuǎn)換研究

2009-08-13
作者:甘健侯1,夏幼明1,徐天偉1,徐

??? 摘? 要: 資源描述框架RDF是處理元數(shù)據(jù)的基礎(chǔ),它提供了Web上應(yīng)用程序間機(jī)器能理解的信息的互操作性能;語義網(wǎng)絡(luò)語言SNetL是語義網(wǎng)絡(luò)的形式化描述語言。本文提出了從RDF知識(shí)表示到SNetL語言轉(zhuǎn)換的思想與算法。
??? 關(guān)鍵詞: 資源描述框架? 語義網(wǎng)絡(luò)語言? 知識(shí)表示? 轉(zhuǎn)換算法

?

1 語義網(wǎng)絡(luò)和SNetL概述
??? 語義網(wǎng)絡(luò)(Semantic Network)作為一種知識(shí)表示的工具是由奎林(J.R.Quilian)在1968年的博士論文中提出的。語義網(wǎng)絡(luò)是通過概念及其語義關(guān)系來表達(dá)知識(shí)的一種網(wǎng)絡(luò)圖。從圖論的觀點(diǎn)看,它可以看作是三元組集合,是一個(gè)“帶標(biāo)識(shí)的有向圖”。其中,有向圖的節(jié)點(diǎn)表示各種事物、概念、情況、屬性、動(dòng)作、狀態(tài)等;弧表示各種語義聯(lián)系,指明它所連接的節(jié)點(diǎn)間的某種語義關(guān)系。節(jié)點(diǎn)和弧都必須帶有標(biāo)識(shí),以便區(qū)分各種不同對(duì)象及對(duì)象間各種不同的語義聯(lián)系。每個(gè)節(jié)點(diǎn)可以帶有若干屬性。另外,節(jié)點(diǎn)還可以是一個(gè)語義子網(wǎng)絡(luò),形成一個(gè)多層次的嵌套結(jié)構(gòu)。
??? SNetL(Semantic Network Language)是語義網(wǎng)絡(luò)的形式化描述語言。SNetL的功能主要包括:以三元組的形式構(gòu)造關(guān)系表達(dá)式;用標(biāo)號(hào)關(guān)系式實(shí)現(xiàn)分塊思想;關(guān)系和節(jié)點(diǎn)一樣處理,以便建立關(guān)系之間的關(guān)系;便于描述自然語言所表達(dá)的語義;具有較強(qiáng)的提問能力和推理解答能力等。
??? SNetL語言的核心是用三元組的形式描述知識(shí),一般表示為:(nodel_1,relation_name,,node_2)。其中node_1和node_2分別表示弧所連接的兩個(gè)節(jié)點(diǎn);relation_name表示網(wǎng)絡(luò)中的弧,用于描述節(jié)點(diǎn)之間的語義。在SNetL中,用標(biāo)號(hào)可以對(duì)節(jié)點(diǎn)和關(guān)系進(jìn)一步說明,其作用相當(dāng)于自然語言中的定語和狀語。
??? 下面給出經(jīng)過擴(kuò)展的SNetL+ 語言形式化描述的總體語法框架。
??? <語義網(wǎng)絡(luò)程序>∷=snet <程序名>;
??????? ??
??????? ??end_of_snet;
??? ∷={;}
??? ∷=<主關(guān)系式>{;<標(biāo)號(hào)關(guān)系式>}|<多數(shù)蘊(yùn)涵關(guān)系式>|<例外蘊(yùn)涵關(guān)系式>|<依賴時(shí)間蘊(yùn)涵關(guān)系式>
??? <主關(guān)系式>∷=<無標(biāo)號(hào)關(guān)系式>
??? <標(biāo)號(hào)關(guān)系式>∷=<標(biāo)號(hào)>:<無標(biāo)號(hào)關(guān)系式>
??? <無標(biāo)號(hào)關(guān)系式>∷=<一般關(guān)系式>|<關(guān)系修飾關(guān)系式>|<量詞關(guān)系式>|<節(jié)點(diǎn)修飾關(guān)系式>|<蘊(yùn)涵關(guān)系式>|<或關(guān)系式>|<與關(guān)系式>|<否定關(guān)系式>|| ||||<關(guān)系類型句>|<關(guān)系性質(zhì)關(guān)系式>|<多數(shù)蘊(yùn)涵關(guān)系式>|<例外蘊(yùn)涵關(guān)系式>|<依賴時(shí)間蘊(yùn)涵關(guān)系式>
2? RDF到SNetL的轉(zhuǎn)換思想與算法描述
??? RDF是處理元數(shù)據(jù)的基礎(chǔ),它提供了Web上應(yīng)用程序間機(jī)器能理解的信息的互操作性。在語義Web中,本體描述語言很多,如RDF、DAML+OIL和OWL等。在知識(shí)推理過程中,一般都將其描述的知識(shí)轉(zhuǎn)換為RDF三元組,以便實(shí)現(xiàn)信息的互操作。本文介紹RDF與SNetL的轉(zhuǎn)換思想與算法描述。
2.1 RDF關(guān)鍵字與SNetL關(guān)系式的對(duì)應(yīng)關(guān)系
?? ?RDF關(guān)鍵字與SNetL關(guān)系式的對(duì)應(yīng)關(guān)系如表1所示。

?


2.2 帶有標(biāo)號(hào)的關(guān)系式轉(zhuǎn)換
??? RDF到SNetL的轉(zhuǎn)換中,主要考慮在轉(zhuǎn)換中帶有標(biāo)號(hào)的情況:屬性約束、復(fù)雜類、規(guī)則表示等。
??? (1)屬性約束
??? OWL中屬性約束有六種情況:owl:cardinality、owl:minCardinality、owl:maxCardinality、owl:someValuesFrom、owl:allValuesFrom、owl:hasValue。另外,在OWL知識(shí)表示中,有“匿名類”的概念,因此在轉(zhuǎn)換過程中,要進(jìn)行標(biāo)號(hào)的處理。
??? 圖1是對(duì)“病毒文件是類,它是Software的子類,它的屬性fileSize最大不超過1 024KB”的描述( _:x為匿名類)。

?


??? 上述OWL屬性約束的轉(zhuǎn)換過程中,定義了匿名類_:x,它是定義類的超(父)類。在將RDF三元組轉(zhuǎn)換到SNetL的過程中應(yīng)該注意:①約束范圍,也就是匿名類的作用范圍。在OWL到RDF的轉(zhuǎn)換過程中,加入了“ontoKsys:Begin”(開始)和“ontoKsys:End”(結(jié)束)兩個(gè)關(guān)鍵字來識(shí)別約束的開始與結(jié)束,開始與結(jié)束之間是匿名類或臨時(shí)變量的有效范圍。②匿名類可以用SNetL語言中的<變量>來代替。③owl:Restriction、ontoKsys:Begin和ontoKsys:End等指示約束范圍的關(guān)鍵字不需要進(jìn)行轉(zhuǎn)換。上述描述轉(zhuǎn)換如下:
??? (病毒文件,TYPE,類);
??? (病毒文件,subclass,Software);
??? (病毒文件,subclass,x:L1);&&將匿名類名用SNetL的變量x代替,并加標(biāo)號(hào)修飾
??? L1:(x,對(duì)于屬性,fileSize:L2);&&將owl:onProperty轉(zhuǎn)換為“對(duì)于屬性”
??? L2:(fileSize,是屬性,x);
??? (fileSize,最大基數(shù),y:L3:L4);
??? L3:(y,be,非負(fù)整數(shù));
??? L4:(y,number,1024);
??? owl:cardinality、owl:minCardinality、owl:maxCardinality轉(zhuǎn)換為SNetL的方法是相同的。圖2是對(duì)owl:someValuesFrom、owl:allValuesFrom、owl:hasValue到SNetL的轉(zhuǎn)換描述。

?


??? (2)復(fù)雜類
??? OWL中復(fù)雜類包括:owl:oneOf(枚舉)、owl:intersectionOf(交集)、owl:unionOf(并集)、owl:complementOf(補(bǔ)集)、owl:disjointWith(不相交集)、owl:equivalentClass(等價(jià)類)。由于在復(fù)雜類的轉(zhuǎn)換中涉及到RDF:List及參照對(duì)象,因此需要加入標(biāo)號(hào)進(jìn)行修飾。
??? 圖3描述了“圖形圖像處理”軟件是“圖形處理軟件”和“圖像處理軟件”的并集。

?


??? 其他的復(fù)雜類與owl:unionOf有相似之處,因篇幅有限,這里就不作介紹。
??? (3)IF-THEN規(guī)則表示
??? 在OWL擴(kuò)展中,規(guī)則表示涉及到蘊(yùn)涵關(guān)系式、與關(guān)系式、或關(guān)系式和非關(guān)系式等,在轉(zhuǎn)換過程中也要考慮標(biāo)號(hào)的轉(zhuǎn)換問題。
??? 如果要描述:“如果A是B的子類,B是C的子類,則A是C的子類”,則RDF三元組可表示為:
??? (子類傳遞性,TYPE,IF-THEN規(guī)則)
??? (子類傳遞性,規(guī)則名稱,subClass Transitive Relation)
??? 轉(zhuǎn)換如下:
??? (L1,imply,L2)?? &&L1表示規(guī)則的前件,L2表示規(guī)則的后件
??? L1:(L3,and,L4)? &&owlplus:AND映射為SNetL的and,表示L3和L4成立,則L1成立
??? L3:(A,subclass,B) &&owlplus:predication的謂詞sub ClassOf轉(zhuǎn)換為SNetL的subclass
??? L4:(B,subclass,C)
??? L2:(A,subclass,C)? &&A、B、C是概念集的元素,在轉(zhuǎn)換過程中要作初始化
2.3 RDF到SNetL的主要關(guān)鍵字轉(zhuǎn)換表
??? RDF到SNetL的主要關(guān)鍵字轉(zhuǎn)換表如表2所示。

?


2.4 RDF到SNetL轉(zhuǎn)換算法的描述
??? 算法TORTS(Transfer of RDF to SNetL RDF到SNetL的轉(zhuǎn)換算法):
??? 功能描述:算法將RDF三元組表示的知識(shí)庫(kù)轉(zhuǎn)換為SNetL表示。
??? 輸入:RDF三元組表示的知識(shí)庫(kù)(rdf_knowledge_triple)。
??? 輸出:SNetL表示的知識(shí)庫(kù)。
??? 算法簡(jiǎn)單描述:
??? TORTS1[初始化]對(duì)RDF表示的知識(shí)進(jìn)行一致性檢查;基于本體,建立RDF到SNetL的關(guān)鍵字轉(zhuǎn)換表;p1←rdf_knowledge_triple
??? TORTS2[p1等于NULL?] 若p1等于NULL,則算法結(jié)束;
??? TORTS3[分類轉(zhuǎn)換處理]判斷是否可以直接進(jìn)行三元組轉(zhuǎn)換或者要進(jìn)行標(biāo)號(hào)處理。如果是,屬性約束、規(guī)則表示、復(fù)雜類等轉(zhuǎn)到TORTS4;否則,轉(zhuǎn)到TORTS5
??? TORTS4[帶有標(biāo)號(hào)的關(guān)系式處理]讀入RDF到SNetL的關(guān)鍵字轉(zhuǎn)換表;
??? 下面對(duì)在屬性約束、規(guī)則表示、復(fù)雜類等的表示范圍內(nèi)調(diào)用相應(yīng)的轉(zhuǎn)換規(guī)則進(jìn)行處理。
??? (1)屬性約束:約束開始即進(jìn)行標(biāo)號(hào)處理,并分類,對(duì)owl:cardinality、owl:minCardinality、owl:maxCardinality、owl:someValuesFrom、owl:allValuesFrom、owl:hasValues進(jìn)行處理。
??? (2)復(fù)雜類:復(fù)雜類定義開始進(jìn)行標(biāo)號(hào)處理,主要考慮RDF列表類(RDF:LIST)的轉(zhuǎn)換,并分類,對(duì)owl:oneOf(枚舉)、owl:intersectionOf(交集)、owl:unionOf(并集)、owl:complementOf(補(bǔ)集)、owl:disjointWith(不相交集)、owl:equivalentClass(等價(jià)類)進(jìn)行處理。
??? (3)規(guī)則表示:規(guī)則的前提定義owlplus:Rule-Premise開始時(shí)進(jìn)行標(biāo)號(hào)處理,(前提 結(jié)論)轉(zhuǎn)換到SNetL表示為:(L1,imply,L2),L1表示規(guī)則的前提,L2表示規(guī)則的結(jié)論;搜索RDF的謂詞到SNetL的轉(zhuǎn)換;對(duì)規(guī)則中的與、或、非關(guān)系式進(jìn)行處理。
??? (4)其他標(biāo)號(hào)的處理
??? TORTS5[直接轉(zhuǎn)換處理]讀入RDF到SNetL的關(guān)鍵字轉(zhuǎn)換表;
??? 搜索在RDF的主體、謂詞、對(duì)象中是否與SNetL有對(duì)應(yīng)的轉(zhuǎn)換關(guān)系,并將RDF的<主體,謂詞,對(duì)象>直接轉(zhuǎn)換為<事實(shí)節(jié)點(diǎn),關(guān)系,事實(shí)節(jié)點(diǎn)>。
??? TORTS6[知識(shí)指針移動(dòng)]p1←next(p1)轉(zhuǎn)到TORTS2。
3? 結(jié)束語
??? 本文提出了RDF到SNetL知識(shí)表示的轉(zhuǎn)換思想與算法?;谡Z義網(wǎng)絡(luò)的SNetL表示的知識(shí)在推理技術(shù)上已逐漸成熟,因此,可以借助于SNetL的技術(shù)進(jìn)行語義Web的知識(shí)推理。另外,語義Web與語義網(wǎng)絡(luò)的關(guān)聯(lián)研究也將促進(jìn)這兩個(gè)領(lǐng)域的共同發(fā)展。
參考文獻(xiàn)
1?? 王永慶.人工智能原理與方法.西安:西安交通大學(xué)出版社,2001
2?? 夏幼明.擴(kuò)展的SNETL語言語法描述.云南省重點(diǎn)項(xiàng)目鑒定材料文集,2003
3?? 徐天任,夏幼明,甘健侯.用語義網(wǎng)絡(luò)語言描述知識(shí)的表示.云南師范大學(xué)學(xué)報(bào),2003;(5)
4?? W3C Recommendation.Resource Description Framework(RDF):Concepts and Abstract Syntax.http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/.2004,2
5?? W3C Recommendation.RDF/XML Syntax Specification(Revised).http://www.w3.org/TR/2004/REC-rdf-syntax-gram-mar-20040210/.2004,2
6?? W3C Recommendation.OWL Web Ontology Language Semantics and Abstract Syntax.http://www.w3.org/TR/2004/REC-owl-semantics-20040210/.2004,2
7?? W3C Recommendation.OWL Web Ontology Language?Guide.http://www.w3.org/TR/2004/REC-owl-guide-20040210/.2004,2

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。