《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > 基于RDF的知識表示到語義網(wǎng)絡語言SNetL的轉換研究
基于RDF的知識表示到語義網(wǎng)絡語言SNetL的轉換研究
甘健侯1,夏幼明1,徐天偉1,,徐天任2
1.云南師范大學 計算機科學與信息技術學院,云南 昆明650092,;2.云南師范大學 旅游與地理科學
摘要: 資源描述框架RDF是處理元數(shù)據(jù)的基礎,它提供了Web上應用程序間機器能理解的信息的互操作性能,;語義網(wǎng)絡語言SNetL是語義網(wǎng)絡的形式化描述語言,。本文提出了從RDF知識表示到SNetL語言轉換的思想與算法。
Abstract:
Key words :

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

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


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


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

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


  其他的復雜類與owl:unionOf有相似之處,,因篇幅有限,,這里就不作介紹。
  (3)IF-THEN規(guī)則表示
  在OWL擴展中,,規(guī)則表示涉及到蘊涵關系式,、與關系式、或關系式和非關系式等,,在轉換過程中也要考慮標號的轉換問題,。
  如果要描述:“如果A是B的子類,B是C的子類,,則A是C的子類”,,則RDF三元組可表示為:
  (子類傳遞性,TYPE,,IF-THEN規(guī)則)
  (子類傳遞性,,規(guī)則名稱,subClass Transitive Relation)
  轉換如下:
  (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轉換為SNetL的subclass
  L4:(B,subclass,,C)
  L2:(A,,subclass,C)  &&A,、B,、C是概念集的元素,在轉換
                                                過程中要作初始化
2.3 RDF到SNetL的主要關鍵字轉換表
  RDF到SNetL的主要關鍵字轉換表如表2所示,。
 

2.4 RDF到SNetL轉換算法的描述
  算法TORTS(Transfer of RDF to SNetL RDF到SNetL的轉換算法):
功能描述:算法將RDF三元組表示的知識庫轉換為SNetL表示,。
輸入:RDF三元組表示的知識庫(rdf_knowledge_triple)。
輸出:SNetL表示的知識庫,。
  算法簡單描述:
  TORTS1[初始化]對RDF表示的知識進行一致性檢查,;
             基于本體,建立RDF到SNetL的關鍵字轉換表,;
             p1←rdf_knowledge_triple
  TORTS2[p1等于NULL?] 若p1等于NULL,,則算法結束;
  TORTS3[分類轉換處理]判斷是否可以直接進行三元組轉換或者要進行標號處理,。如果是,,屬性約束、規(guī)則表示,、復雜類等轉到TORTS4,;否則,轉到TORTS5 TORTS4[帶有標號的關系式處理]讀入RDF到SNetL的
  關鍵字轉換表,;
  下面對在屬性約束,、規(guī)則表示,、復雜類等的表示范圍內(nèi)調用相應的轉換規(guī)則進行處理,。
  (1)屬性約束:約束開始即進行標號處理,并分類,,對owl:cardinality,、owl:minCardinality、owl:maxCardinality,、owl:some-ValuesFrom,、owl:allValuesFrom、owl:hasValues進行處理,。
  (2)復雜類:復雜類定義開始進行標號處理,,主要考慮RDF列表類(RDF:LIST)的轉換,,并分類,對owl:oneOf(枚舉),、owl:intersectionOf(交集),、owl:unionOf(并集)、owl:complementOf(補集),、owl:disjointWith(不相交集),、owl:equivalentClass(等價類)進行處理。
  (3)規(guī)則表示:規(guī)則的前提定義owlplus:Rule-Premise開始時進行標號處理,,(前提 結論)轉換到SNetL表示為:(L1,,imply,L2),,L1表示規(guī)則的前提,,L2表示規(guī)則的結論;搜索RDF的謂詞到SNetL的轉換,;對規(guī)則中的與,、或、非關系式進行處理,。
  (4)其他標號的處理
  TORTS5[直接轉換處理]讀入RDF到SNetL的關鍵字轉換表,;
  搜索在RDF的主體、謂詞,、對象中是否與SNetL有對應的轉換關系,,并將RDF的<主體,謂詞,,對象>直接轉換為<事實節(jié)點,關系,事實節(jié)點>,。
  TORTS6[知識指針移動]p1←next(p1)轉到TORTS2。
3  結束語
  本文提出了RDF到SNetL知識表示的轉換思想與算法,?;谡Z義網(wǎng)絡的SNetL表示的知識在推理技術上已逐漸成熟,因此,,可以借助于SNetL的技術進行語義Web的知識推理,。另外,語義Web與語義網(wǎng)絡的關聯(lián)研究也將促進這兩個領域的共同發(fā)展,。
參考文獻
1   王永慶.人工智能原理與方法.西安:西安交通大學出版社,,  2001
2   夏幼明.擴展的SNETL語言語法描述.云南省重點項目鑒定材料文集,2003
3   徐天任,,夏幼明,,甘健侯.用語義網(wǎng)絡語言描述知識的表示.  云南師范大學學報,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-grammar-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)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載。