王 星,陳 吉,孟祥福
(遼寧工程技術(shù)大學(xué)電子與信息工程學(xué)院,遼寧 葫蘆島 125105)
語義Web[1]是當(dāng)前Web的延伸,它賦予Web資源機(jī)器可理解的語義,其重要目標(biāo)是推理Web上廣泛存在的知識。推理的前提是知識表示。近年來,作為知識表示的重要工具,規(guī)則(Rule)受到廣泛關(guān)注,并被引入語義Web。
近年來,隨著規(guī)則的發(fā)展,多種規(guī)則語言、規(guī)則標(biāo)記語言及其系統(tǒng)開始出現(xiàn)。文獻(xiàn)[2]提出一種語義Web規(guī)則語言(Semantic Web Rule Language,SWRL),并實(shí)現(xiàn)了基于SWRL的規(guī)則系統(tǒng)Hoolet。文獻(xiàn)[3]提出一種TRIPLE,實(shí)現(xiàn)了基于TRIPLE的規(guī)則系統(tǒng)。文獻(xiàn)[4]提出并實(shí)現(xiàn)了一種語義Web規(guī)則語言O(shè)WL Rule+。為了標(biāo)記規(guī)則語言,規(guī)則標(biāo)記語言(Rule Markup Language,RuleML)[5]、REWERSE 規(guī)則標(biāo)記語言(REWERSE Rule Markup Language,R2ML)[6]等應(yīng)運(yùn)而生。
規(guī)則語言在語法和語義等方面的異構(gòu)性導(dǎo)致系統(tǒng)之間的交互(即規(guī)則互換)非常困難。為了解決這個(gè)問題,研究者進(jìn)行了不同的嘗試。文獻(xiàn)[7]以R2ML為中心語言,提出SWRL與R2ML、SWRL與OCL之間的規(guī)則轉(zhuǎn)換。文獻(xiàn)[8]設(shè)計(jì)實(shí)現(xiàn)了以RuleML為中心的規(guī)則轉(zhuǎn)換系統(tǒng)。文獻(xiàn)[9]指出,以規(guī)則互換格式(Rule Interchange Format,RIF)[10]為中心的互換規(guī)則是規(guī)則互換發(fā)展的必然趨勢,并提出和設(shè)計(jì)了以RIF元模型為中心的規(guī)則互換結(jié)構(gòu)和原型系統(tǒng)。
上述規(guī)則語言、規(guī)則標(biāo)記語言及其互換系統(tǒng)只能表示互換經(jīng)典知識,而對廣泛存在的模糊知識無能為力。因此,模糊語義Web規(guī)則語言(fuzzy SWRL,f-SWRL)[11]、RuleML的不確定擴(kuò)展[12]、f-NSWRL[13]、f-SW-if-then-RL[14]等語言及其系統(tǒng)相繼出現(xiàn)。這些模糊語言在語法和語義上具有異構(gòu)性,基于它們的系統(tǒng)無法實(shí)現(xiàn)自由交互。因此,實(shí)現(xiàn)模糊規(guī)則語言之間的互換成為亟待解決的問題。到目前為止,除文獻(xiàn)[15]討論了模糊規(guī)則互換之外,尚未見到系統(tǒng)討論以f-RIF為中心的模糊規(guī)則互換的文獻(xiàn)。
針對以上問題,本文基于f-RIF,構(gòu)建以f-RIF XML語法為中心的規(guī)則互換結(jié)構(gòu)(fuzzy Rule InterchangeArchitecture based on XML,f-RIAXML),它支持f-RIF與f-SWRL、f-NSWRL、RuleML(即模糊化擴(kuò)展后的RuleML)、f-SW-if-then-RL等常見模糊規(guī)則語言之間的雙向規(guī)則互換。這5種語言之間的轉(zhuǎn)換都基于XML語法,這樣能保證轉(zhuǎn)換過程中語法的正確性,提高轉(zhuǎn)換效率。分析模糊規(guī)則互換過程中的信息缺失問題,并給出了相應(yīng)的對策以盡量減少信息缺失帶來的影響。最后,設(shè)計(jì)并實(shí)現(xiàn)模糊規(guī)則互換原型系統(tǒng)f-RIAXML1.0,并給出相應(yīng)的實(shí)驗(yàn)分析。
RIF是基于規(guī)則的語言的可擴(kuò)展框架,稱為RIF語系(RIF Dialects),它包括精確的、形式化的語法、語義和XML規(guī)范。目前RIF語系包括RIF-BLD(RIF Basic Logic Dialect)等6個(gè)標(biāo)準(zhǔn)子語系[16]。雖然RIF章程中提到了表示和互換模糊知識的目標(biāo),但它目前不具備此種能力。因此,對RIF進(jìn)行了模糊擴(kuò)展,提出了f-RIF(具體內(nèi)容可詳見文獻(xiàn)[17])。f-RIF是模糊集、可能性分布與RIF相結(jié)合產(chǎn)生的模糊語言,它擁有自己的元模型(模糊規(guī)則元模型如圖1所示)、XML語法和語義,具有較強(qiáng)的表達(dá)能力,能夠承擔(dān)起模糊規(guī)則互換中心語言的角色。
圖1 f-RIF模糊規(guī)則元模型
下面是文獻(xiàn)[13]中式(2)的模糊規(guī)則的f-RIF XML語法片段的部分內(nèi)容,以此來說明f-RIF具體語法的構(gòu)成:
基于f-RIF、f-SWRL、RuleML、f-R2ML和f-SW-ifthen-RL的具體語法,本節(jié)將構(gòu)建模糊規(guī)則互換體系結(jié)構(gòu)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的規(guī)則語言,以及f-SWRL、RuleML、f-NSWRL和f-SW-if-then-RL之間的雙向規(guī)則互換。通過規(guī)則語言之間基于XML的規(guī)則互換,f-RIAXML能夠?qū)崿F(xiàn)輸入輸出文件的全XML化,可以提高轉(zhuǎn)換效率,為計(jì)算機(jī)對模糊規(guī)則語言的自動(dòng)表示和推理打下基礎(chǔ)。
圖2 模糊規(guī)則互換體系結(jié)構(gòu)f-RIAXML
為了使f-RIF與f-SWRL能夠共享規(guī)則,在抽象語法的層次上定義了f-RIF與f-SWRL之間在原子和公理方面的映射。每一個(gè)f-SWRL規(guī)則都可以映射成一個(gè)f-RIF的全稱規(guī)則,而且其中必然包含規(guī)則蘊(yùn)涵。表1詳細(xì)闡述了f-SWRL和f-RIF之間主要原子和公理的映射。
表1 f-SWRL與f-RIF之間的原子和公理映射
其中,F(xiàn)C,FC1,FC2表示模糊類描述,F(xiàn)P1,FP2表示模糊屬性ID,表達(dá)式χf-RIF是轉(zhuǎn)換函數(shù)(即χf-RIF(f-SWRL原子)=f-RIF原子),t是變量,F(xiàn)ormulai(i=1,2)表示f-RIF中維數(shù)為i的模糊公式。這里需要注意的是,f-SWRL中的等價(jià)包括2種情況:類的等價(jià)和屬性的等價(jià)。而且,f-RIF中的常量包括5種類型:即個(gè)體名、數(shù)據(jù)值名、類名、個(gè)體屬性名和數(shù)據(jù)值屬性名。更重要的是,f-RIF中的原子、表達(dá)式和框架由f-SWRL中的類和屬性來表示。為簡化表示形式,從3.2節(jié)開始的語言之間的轉(zhuǎn)換用語言的XML語法表示。
經(jīng)過對f-RIF的XML Schema和RuleML 0.91術(shù)語集的深入分析,可以得到下面的結(jié)論。首先,f-RIF中的元素
通過分析f-RIF XML Schema和f-R2ML XML Schema,可以得到如下的結(jié)論:(1)f-RIF中的
在f-RIF中的
在f-RIAXML中,具有不同表達(dá)能力的模糊規(guī)則語言進(jìn)行規(guī)則互換時(shí),可能出現(xiàn)源語言的原子在目標(biāo)語言中無法找到對應(yīng)原子的情況,這樣模糊規(guī)則互換就可能帶來信息的丟失。重視信息缺失有利于提高轉(zhuǎn)換效率,增強(qiáng)轉(zhuǎn)換系統(tǒng)的可靠性。模糊規(guī)則的轉(zhuǎn)換是雙向的,這導(dǎo)致信息的丟失也具有雙向性[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。盡管在一些情況下信息丟失不可避免,但可以采取補(bǔ)救方法減少它的負(fù)面影響。
(1)從f-RIF 到f-SWRL,f-NSWRL,f-SW-if-then-RL,RuleML的轉(zhuǎn)換
1)從f-RIF到f-SWRL的轉(zhuǎn)換
在此方向上,信息丟失在以下方面體現(xiàn)比較明顯:模糊規(guī)則蘊(yùn)涵,模糊原子與模糊公式,模糊框架。①f-SWRL是建立在SWRL基礎(chǔ)上的規(guī)則語言,它的前提中只允許模糊原子的交,結(jié)論只能是原子公式或者模糊原子的交。當(dāng)要轉(zhuǎn)換的f-RIF規(guī)則的前提由多個(gè)模糊原子的并組成,結(jié)論由模糊原子的交組成時(shí),轉(zhuǎn)換無法完成。但可通過如下的方法完成:依據(jù)任意命題都可以轉(zhuǎn)換成析取范式的結(jié)論,(a∨b→c)?((a→c)∧(b→c))[9]以 及Lloyd-Topor 方 法 ,一個(gè)f-RIF的模糊規(guī)則可以轉(zhuǎn)成前提是模糊原子交的模糊規(guī)則,然后再把規(guī)則分別轉(zhuǎn)換成f-SWRL模糊規(guī)則的合取的形式。②f-RIF的模糊原子與模糊公式可以表示N維屬性,而f-SWRL只能表示類和二維屬性,因此需要把一個(gè)N維屬性轉(zhuǎn)化成多個(gè)二維屬性,即建立Cn2個(gè)f-SWRL模糊屬性代替一個(gè)N維的f-RIF模糊原子或模糊公式。③f-RIF的框架元素?zé)o法映射到f-SWRL中,但可以使用幾個(gè)f-SWRL屬性近似代替f-RIF模糊框架。
2)從f-RIF到f-NSWRL的轉(zhuǎn)換
與f-SWRL類似,f-NSWRL只有模糊類和模糊屬性,因此沒有元素直接對應(yīng)f-RIF的N元原子。解決辦法是近似替代,把N元原子和表達(dá)式轉(zhuǎn)換成Cn2個(gè)f-NSWRL屬性。
3)從f-RIF到f-SW-if-then-RL的轉(zhuǎn)換
f-SW-if-then-RL允許模糊規(guī)則的前提和結(jié)論出現(xiàn)析取,因此f-RIF的模糊規(guī)則可以直接向f-SW-if-then-RL轉(zhuǎn)化。f-SW-if-then-RL所能表示的關(guān)系只有模糊類和模糊屬性,因此f-RIF中有關(guān)N元關(guān)系的模糊原子也需要轉(zhuǎn)換成多個(gè)模糊屬性來實(shí)現(xiàn)。有關(guān)f-RIF槽向f-SW-if-then-RL轉(zhuǎn)化的方法與向f-NSWRL的轉(zhuǎn)化類似,不再贅述。此外,由于f-SW-ifthen-RL不具有表示非單調(diào)規(guī)則的能力,因此f-RIF帶有2種否定的規(guī)則原子無法映射到f-SW-if-then-RL中。
4)從f-RIF到擴(kuò)展的RuleML的轉(zhuǎn)換
擴(kuò)展的RuleML的N維屬性無法直接表示f-RIF中含槽的模糊原子、表達(dá)式和框架。與f-SWRL類似,RuleML也使用近似替代方法把框架轉(zhuǎn)換成多個(gè)二元關(guān)系來實(shí)現(xiàn)。
(2)從f-SWRL,f-NSWRL,f-SW-if-then-RL,RuleML到f-RIF的轉(zhuǎn)換
1)從f-SWRL到f-RIF的轉(zhuǎn)換
一方面,f-SWRL的否定(如ComplementOf和Different-IndividualsAtom)主要映射成f-RIF的否定,至于失敗即否定NAF(Negation As Failure)的轉(zhuǎn)換需要視具體情況來定。另一方面,f-SWRL從OWL繼承來的類和屬性的一些特征(如自反、對稱與傳遞)也無法直接對應(yīng)到f-RIF,此問題主要通過定義多個(gè)對應(yīng)的宏定義來解決。
2)從f-NSWRL到f-RIF的轉(zhuǎn)換
與f-SWRL不同的是,f-NSWRL中的否定以及失敗即否定可以轉(zhuǎn)換成f-RIF的原子。同樣地,需要定義宏定義來解決f-NSWRL中從Web本體語言中繼承的屬性。
3)從f-SW-if-then-RL到f-RIF的轉(zhuǎn)換
與f-SWRL類似,f-SW-if-then-RL從OWL DL繼承來的類和屬性的自反、對稱和傳遞等特征也無法在f-RIF中體現(xiàn),也是需要通過定義宏定義來解決。
4)從RuleML到f-RIF的轉(zhuǎn)換
與經(jīng)典RuleML向RIF的轉(zhuǎn)換類似,擴(kuò)展后的RuleML中不具有安全性的模糊規(guī)則無法轉(zhuǎn)換成f-RIF的模糊規(guī)則。
f-RIAXML1.0(fuzzy Rule Interchange Architecture based on XML,version 1.0)是基于f-RIAXML實(shí)現(xiàn)的原型系統(tǒng)。該系統(tǒng)還實(shí)現(xiàn)了f-RIF的Presentation語法與XML語法之間的轉(zhuǎn)換。由于XML語法是計(jì)算機(jī)能夠“理解”的語法,同時(shí)為了提高轉(zhuǎn)換效率,該原型系統(tǒng)的輸入輸出均為XML語法的形式。
f-RIAXML1.0通過工廠模式和Dom模型等技術(shù)實(shí)現(xiàn)(如圖3所示),它的主要功能是:自動(dòng)處理待轉(zhuǎn)換模糊規(guī)則,并實(shí)現(xiàn)源語言與目標(biāo)語言的模糊規(guī)則互換。
圖3 f-RIAXML1.0系統(tǒng)的功能
以第2節(jié)中f-RIF XML片段為輸入,通過f-RIAXML1.0的一系列處理與轉(zhuǎn)換可以分別得到f-SWRL XML語法、f-NSWRL XML語法、f-SW-if-then-RL XML語法和RuleML XML語法的規(guī)則表示形式,為了簡化表示,本文僅給出RuleML XML形式的規(guī)則:
下面通過轉(zhuǎn)換不同的規(guī)則實(shí)例對f-RIAXML1.0的性能進(jìn)行測試。f-RIAXML1.0所測試的各語言間的平均轉(zhuǎn)換時(shí)間如表2所示(f-SW-if-then-RL縮寫為f-it),對于每一種轉(zhuǎn)換,本文給出了30個(gè)不同的輸入文檔。對于每一個(gè)文檔的轉(zhuǎn)換時(shí)間,這里取最小值作為轉(zhuǎn)換時(shí)間。表2中共有2種轉(zhuǎn)換類型,分別是單步轉(zhuǎn)換和兩步轉(zhuǎn)換,前者如f-RIFpre(f-RIF的表示語法縮寫為f-RIFpre)→f-RIF,后者如RuleML→f-SWRL(實(shí)際上是RuleML→f-RIF→f-SWRL)。
表2 f-RIAXML1.0系統(tǒng)的平均轉(zhuǎn)換時(shí)間 s
該實(shí)驗(yàn)共進(jìn)行了900個(gè)不同規(guī)則實(shí)例的測試,每個(gè)實(shí)例都盡量做到在最大程度上包含盡可能多的源語言的元素,特別是模糊元素。測試實(shí)例表明f-RIAXML1.0能夠支持f-RIF與f-SWRL、RuleML、f-R2ML和f-SW-if-then-unless-RL模糊規(guī)則語言之間的兩兩雙向轉(zhuǎn)換,基于XML語法的轉(zhuǎn)換能夠提高轉(zhuǎn)換的效率,而且系統(tǒng)具有良好的穩(wěn)定性。下一步對系統(tǒng)的改進(jìn)將更加關(guān)注系統(tǒng)的轉(zhuǎn)換效率,盡最大可能減少轉(zhuǎn)換時(shí)間,主要措施有減少文檔自動(dòng)導(dǎo)入和導(dǎo)出的時(shí)間、提高預(yù)處理速度。
異構(gòu)模糊規(guī)則的互換是語義Web的重要議題之一。本文構(gòu)建了以f-RIF XML語法為中心的模糊規(guī)則互換體系結(jié)構(gòu)f-RIAXML,設(shè)計(jì)并實(shí)現(xiàn)了原型系統(tǒng)f-RIAXML1.0。所構(gòu)建的體系結(jié)構(gòu)和實(shí)現(xiàn)的系統(tǒng)能夠很好地解決異構(gòu)模糊規(guī)則系統(tǒng)之間的通信問題,同時(shí)也為語義Web模糊規(guī)則推理奠定了基礎(chǔ)。
[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規(guī)則標(biāo)記語言O(shè)WL Rule+的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)研究與發(fā)展,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]王 星,嚴(yán) 麗,馬宗民.一種以RIF元模型為中心的語義Web規(guī)則互換方法[J].小型微型計(jì)算機(jī)系統(tǒng),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非單調(diào)模糊.
[14]王 星,嚴(yán) 麗,馬宗民,等規(guī)則語言[J].小型微型計(jì)算機(jī)系統(tǒng),2010,31(5):830-834.語義Web模糊if-then和If-then-unless規(guī)則語言[J].小型微型計(jì)算機(jī)系統(tǒng),2012,33(11):2398-2404.
[15]王 星,馬宗民,陳 吉.語義Web模糊規(guī)則的互換與實(shí)現(xiàn)[J].計(jì)算機(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.