王 星,陳 吉,孟祥福
(遼寧工程技術大學電子與信息工程學院,遼寧 葫蘆島 125105)
語義Web[1]是當前Web的延伸,它賦予Web資源機器可理解的語義,其重要目標是推理Web上廣泛存在的知識。推理的前提是知識表示。近年來,作為知識表示的重要工具,規則(Rule)受到廣泛關注,并被引入語義Web。
近年來,隨著規則的發展,多種規則語言、規則標記語言及其系統開始出現。文獻[2]提出一種語義Web規則語言(Semantic Web Rule Language,SWRL),并實現了基于SWRL的規則系統Hoolet。文獻[3]提出一種TRIPLE,實現了基于TRIPLE的規則系統。文獻[4]提出并實現了一種語義Web規則語言OWL Rule+。為了標記規則語言,規則標記語言(Rule Markup Language,RuleML)[5]、REWERSE 規則標記語言(REWERSE Rule Markup Language,R2ML)[6]等應運而生。
規則語言在語法和語義等方面的異構性導致系統之間的交互(即規則互換)非常困難。為了解決這個問題,研究者進行了不同的嘗試。文獻[7]以R2ML為中心語言,提出SWRL與R2ML、SWRL與OCL之間的規則轉換。文獻[8]設計實現了以RuleML為中心的規則轉換系統。文獻[9]指出,以規則互換格式(Rule Interchange Format,RIF)[10]為中心的互換規則是規則互換發展的必然趨勢,并提出和設計了以RIF元模型為中心的規則互換結構和原型系統。
上述規則語言、規則標記語言及其互換系統只能表示互換經典知識,而對廣泛存在的模糊知識無能為力。因此,模糊語義Web規則語言(fuzzy SWRL,f-SWRL)[11]、RuleML的不確定擴展[12]、f-NSWRL[13]、f-SW-if-then-RL[14]等語言及其系統相繼出現。這些模糊語言在語法和語義上具有異構性,基于它們的系統無法實現自由交互。因此,實現模糊規則語言之間的互換成為亟待解決的問題。到目前為止,除文獻[15]討論了模糊規則互換之外,尚未見到系統討論以f-RIF為中心的模糊規則互換的文獻。
針對以上問題,本文基于f-RIF,構建以f-RIF XML語法為中心的規則互換結構(fuzzy Rule InterchangeArchitecture based on XML,f-RIAXML),它支持f-RIF與f-SWRL、f-NSWRL、RuleML(即模糊化擴展后的RuleML)、f-SW-if-then-RL等常見模糊規則語言之間的雙向規則互換。這5種語言之間的轉換都基于XML語法,這樣能保證轉換過程中語法的正確性,提高轉換效率。分析模糊規則互換過程中的信息缺失問題,并給出了相應的對策以盡量減少信息缺失帶來的影響。最后,設計并實現模糊規則互換原型系統f-RIAXML1.0,并給出相應的實驗分析。
RIF是基于規則的語言的可擴展框架,稱為RIF語系(RIF Dialects),它包括精確的、形式化的語法、語義和XML規范。目前RIF語系包括RIF-BLD(RIF Basic Logic Dialect)等6個標準子語系[16]。雖然RIF章程中提到了表示和互換模糊知識的目標,但它目前不具備此種能力。因此,對RIF進行了模糊擴展,提出了f-RIF(具體內容可詳見文獻[17])。f-RIF是模糊集、可能性分布與RIF相結合產生的模糊語言,它擁有自己的元模型(模糊規則元模型如圖1所示)、XML語法和語義,具有較強的表達能力,能夠承擔起模糊規則互換中心語言的角色。

圖1 f-RIF模糊規則元模型
下面是文獻[13]中式(2)的模糊規則的f-RIF XML語法片段的部分內容,以此來說明f-RIF具體語法的構成:



基于f-RIF、f-SWRL、RuleML、f-R2ML和f-SW-ifthen-RL的具體語法,本節將構建模糊規則互換體系結構f-RIAXML。如圖2所示,f-RIAXML以f-RIF 為中心,支持f-RIF、f-SWRL、RuleML、f-NSWRL和f-SW-if-then-RL,f-RIF與基于f-SWRL、RuleML、f-NSWRL和f-SW-if-then-RL的規則語言,以及f-SWRL、RuleML、f-NSWRL和f-SW-if-then-RL之間的雙向規則互換。通過規則語言之間基于XML的規則互換,f-RIAXML能夠實現輸入輸出文件的全XML化,可以提高轉換效率,為計算機對模糊規則語言的自動表示和推理打下基礎。

圖2 模糊規則互換體系結構f-RIAXML
為了使f-RIF與f-SWRL能夠共享規則,在抽象語法的層次上定義了f-RIF與f-SWRL之間在原子和公理方面的映射。每一個f-SWRL規則都可以映射成一個f-RIF的全稱規則,而且其中必然包含規則蘊涵。表1詳細闡述了f-SWRL和f-RIF之間主要原子和公理的映射。

表1 f-SWRL與f-RIF之間的原子和公理映射
其中,FC,FC1,FC2表示模糊類描述,FP1,FP2表示模糊屬性ID,表達式χf-RIF是轉換函數(即χf-RIF(f-SWRL原子)=f-RIF原子),t是變量,Formulai(i=1,2)表示f-RIF中維數為i的模糊公式。這里需要注意的是,f-SWRL中的等價包括2種情況:類的等價和屬性的等價。而且,f-RIF中的常量包括5種類型:即個體名、數據值名、類名、個體屬性名和數據值屬性名。更重要的是,f-RIF中的原子、表達式和框架由f-SWRL中的類和屬性來表示。為簡化表示形式,從3.2節開始的語言之間的轉換用語言的XML語法表示。
經過對f-RIF的XML Schema和RuleML 0.91術語集的深入分析,可以得到下面的結論。首先,f-RIF中的元素
通過分析f-RIF XML Schema和f-R2ML XML Schema,可以得到如下的結論:(1)f-RIF中的
在f-RIF中的
在f-RIAXML中,具有不同表達能力的模糊規則語言進行規則互換時,可能出現源語言的原子在目標語言中無法找到對應原子的情況,這樣模糊規則互換就可能帶來信息的丟失。重視信息缺失有利于提高轉換效率,增強轉換系統的可靠性。模糊規則的轉換是雙向的,這導致信息的丟失也具有雙向性[10],即從f-RIF到f-SWRL,f-NSWRL,RuleML,f-SW-if-then-RL和從f-SWRL,f-NSWRL,RuleML,f-SW-if-then-RL到f-RIF。盡管在一些情況下信息丟失不可避免,但可以采取補救方法減少它的負面影響。
(1)從f-RIF 到f-SWRL,f-NSWRL,f-SW-if-then-RL,RuleML的轉換
1)從f-RIF到f-SWRL的轉換
在此方向上,信息丟失在以下方面體現比較明顯:模糊規則蘊涵,模糊原子與模糊公式,模糊框架。①f-SWRL是建立在SWRL基礎上的規則語言,它的前提中只允許模糊原子的交,結論只能是原子公式或者模糊原子的交。當要轉換的f-RIF規則的前提由多個模糊原子的并組成,結論由模糊原子的交組成時,轉換無法完成。但可通過如下的方法完成:依據任意命題都可以轉換成析取范式的結論,(a∨b→c)?((a→c)∧(b→c))[9]以 及Lloyd-Topor 方 法 ,一個f-RIF的模糊規則可以轉成前提是模糊原子交的模糊規則,然后再把規則分別轉換成f-SWRL模糊規則的合取的形式。②f-RIF的模糊原子與模糊公式可以表示N維屬性,而f-SWRL只能表示類和二維屬性,因此需要把一個N維屬性轉化成多個二維屬性,即建立Cn2個f-SWRL模糊屬性代替一個N維的f-RIF模糊原子或模糊公式。③f-RIF的框架元素無法映射到f-SWRL中,但可以使用幾個f-SWRL屬性近似代替f-RIF模糊框架。
2)從f-RIF到f-NSWRL的轉換
與f-SWRL類似,f-NSWRL只有模糊類和模糊屬性,因此沒有元素直接對應f-RIF的N元原子。解決辦法是近似替代,把N元原子和表達式轉換成Cn2個f-NSWRL屬性。
3)從f-RIF到f-SW-if-then-RL的轉換
f-SW-if-then-RL允許模糊規則的前提和結論出現析取,因此f-RIF的模糊規則可以直接向f-SW-if-then-RL轉化。f-SW-if-then-RL所能表示的關系只有模糊類和模糊屬性,因此f-RIF中有關N元關系的模糊原子也需要轉換成多個模糊屬性來實現。有關f-RIF槽向f-SW-if-then-RL轉化的方法與向f-NSWRL的轉化類似,不再贅述。此外,由于f-SW-ifthen-RL不具有表示非單調規則的能力,因此f-RIF帶有2種否定的規則原子無法映射到f-SW-if-then-RL中。
4)從f-RIF到擴展的RuleML的轉換
擴展的RuleML的N維屬性無法直接表示f-RIF中含槽的模糊原子、表達式和框架。與f-SWRL類似,RuleML也使用近似替代方法把框架轉換成多個二元關系來實現。
(2)從f-SWRL,f-NSWRL,f-SW-if-then-RL,RuleML到f-RIF的轉換
1)從f-SWRL到f-RIF的轉換
一方面,f-SWRL的否定(如ComplementOf和Different-IndividualsAtom)主要映射成f-RIF的否定,至于失敗即否定NAF(Negation As Failure)的轉換需要視具體情況來定。另一方面,f-SWRL從OWL繼承來的類和屬性的一些特征(如自反、對稱與傳遞)也無法直接對應到f-RIF,此問題主要通過定義多個對應的宏定義來解決。
2)從f-NSWRL到f-RIF的轉換
與f-SWRL不同的是,f-NSWRL中的否定以及失敗即否定可以轉換成f-RIF的原子。同樣地,需要定義宏定義來解決f-NSWRL中從Web本體語言中繼承的屬性。
3)從f-SW-if-then-RL到f-RIF的轉換
與f-SWRL類似,f-SW-if-then-RL從OWL DL繼承來的類和屬性的自反、對稱和傳遞等特征也無法在f-RIF中體現,也是需要通過定義宏定義來解決。
4)從RuleML到f-RIF的轉換
與經典RuleML向RIF的轉換類似,擴展后的RuleML中不具有安全性的模糊規則無法轉換成f-RIF的模糊規則。
f-RIAXML1.0(fuzzy Rule Interchange Architecture based on XML,version 1.0)是基于f-RIAXML實現的原型系統。該系統還實現了f-RIF的Presentation語法與XML語法之間的轉換。由于XML語法是計算機能夠“理解”的語法,同時為了提高轉換效率,該原型系統的輸入輸出均為XML語法的形式。
f-RIAXML1.0通過工廠模式和Dom模型等技術實現(如圖3所示),它的主要功能是:自動處理待轉換模糊規則,并實現源語言與目標語言的模糊規則互換。

圖3 f-RIAXML1.0系統的功能
以第2節中f-RIF XML片段為輸入,通過f-RIAXML1.0的一系列處理與轉換可以分別得到f-SWRL XML語法、f-NSWRL XML語法、f-SW-if-then-RL XML語法和RuleML XML語法的規則表示形式,為了簡化表示,本文僅給出RuleML XML形式的規則:


下面通過轉換不同的規則實例對f-RIAXML1.0的性能進行測試。f-RIAXML1.0所測試的各語言間的平均轉換時間如表2所示(f-SW-if-then-RL縮寫為f-it),對于每一種轉換,本文給出了30個不同的輸入文檔。對于每一個文檔的轉換時間,這里取最小值作為轉換時間。表2中共有2種轉換類型,分別是單步轉換和兩步轉換,前者如f-RIFpre(f-RIF的表示語法縮寫為f-RIFpre)→f-RIF,后者如RuleML→f-SWRL(實際上是RuleML→f-RIF→f-SWRL)。

表2 f-RIAXML1.0系統的平均轉換時間 s
該實驗共進行了900個不同規則實例的測試,每個實例都盡量做到在最大程度上包含盡可能多的源語言的元素,特別是模糊元素。測試實例表明f-RIAXML1.0能夠支持f-RIF與f-SWRL、RuleML、f-R2ML和f-SW-if-then-unless-RL模糊規則語言之間的兩兩雙向轉換,基于XML語法的轉換能夠提高轉換的效率,而且系統具有良好的穩定性。下一步對系統的改進將更加關注系統的轉換效率,盡最大可能減少轉換時間,主要措施有減少文檔自動導入和導出的時間、提高預處理速度。
異構模糊規則的互換是語義Web的重要議題之一。本文構建了以f-RIF XML語法為中心的模糊規則互換體系結構f-RIAXML,設計并實現了原型系統f-RIAXML1.0。所構建的體系結構和實現的系統能夠很好地解決異構模糊規則系統之間的通信問題,同時也為語義Web模糊規則推理奠定了基礎。
[1]Berners-Lee T,Hendler J,Lassila O.The Semantic Web[J].The Scientific American,2001,284(5):34-43.
[2]Horrocks I,Patel-Schneider P F,Bechhofer S.OWL Rules:A Proposal and Prototype Implementation[J].Journal of Web Semantics,2005,3(1):23-40.
[3]Sintek M,Decker S.TRIPLE——A Query,Inference,and Transformation Language for the Semantic Web[C]//Proc.of the 2nd International Semantic Web Conference.[S.1.]:IEEE Press,2002:364-378.
[4]梁 晟,付弘宇.語義Web規則標記語言OWL Rule+的設計與實現[J].計算機研究與發展,2004,41(7):1088-1096.
[5]The Rule Markup Initiative[EB/OL].(2012-02-12).htttp://www.ruleml.org/.
[6]Wagner G,Damásio C V,Giurca A.Towards a General Web Rule Language[J].International Journal of Web Engineering and Technology,2005,2(2/3):181-206.
[7]Milanovi? M,Ga?evi? D,Guirca A,et al.Bridging Concrete and Abstract Syntaxes in Model-driven Engineering[J].Journal of Computer Science and Information System,2009,6(2):47-85.
[8]Boley H,Kifer M,Patranjan P L,et al.Rule Interchange on the Web[C]//Proc.of International Conference on Reasoning Web.[S.1.]:IEEE Press,2007:269-309.
[9]王 星,嚴 麗,馬宗民.一種以RIF元模型為中心的語義Web規則互換方法[J].小型微型計算機系統,2011,32(7):1379-1386.
[10]Boley H,Kifer M.A Guide to the Basic Logic Dialect for Rule Interchange on the Web[J].IEEE Transactions on Knowledge and Data Engineering,2010,22(11):1593-1608.
[11]Pan J Z,Stoilos G.f-SWRL:A Fuzzy Extension of Swrl[J].Journal of Data Semantics VI,2006,6(1):28-46.
[12]Damásio C V,Pan J Z.Representing Uncertainty in Ruleml[J].Journal of Fundamenta Informaticae,2008,82(3):265-288.
[13]王 星,馬宗民.f-NSWRL:一種語義Web非單調模糊.
[14]王 星,嚴 麗,馬宗民,等規則語言[J].小型微型計算機系統,2010,31(5):830-834.語義Web模糊if-then和If-then-unless規則語言[J].小型微型計算機系統,2012,33(11):2398-2404.
[15]王 星,馬宗民,陳 吉.語義Web模糊規則的互換與實現[J].計算機工程,2012,38(15):156-158.
[16]Rule Interchange Format Current Status[EB/OL].(2012-03-23).http://www.w3.org/standards/techs/rif#w3c_all.
[17]Wang Xing,Ma Zongmin,Yan Li,et al.RIF-FRD:A Rif Dialect Based on Fuzzy Sets[C]//Proc.of the 9th International Conference on Fuzzy Systems and Knowledge Discovery.[S.1.]:IEEE Press,2010:1912-1916.