摘 要: 收集語義Web服務(wù)搜索研究的3個(gè)主要內(nèi)容:服務(wù)資源的索引、搜索條件的表達(dá)和服務(wù)資源的匹配、排序方面的相關(guān)工作,對(duì)當(dāng)前研究工作進(jìn)行了分類歸納,最后歸納語義Web服務(wù)搜索所面臨的挑戰(zhàn)。
關(guān)鍵詞: 語義Web服務(wù);搜索條件;索引;表達(dá)方法;匹配
1 語義Web服務(wù)搜索
語義Web服務(wù)[1]源自2001年Berners Lee提出語義Web[2]的概念,并繼承了大量有關(guān)Web服務(wù)的研究成果,是語義Web技術(shù)和Web服務(wù)[3]技術(shù)相結(jié)合的產(chǎn)物。相關(guān)研究主題包括:服務(wù)發(fā)布/注冊(cè)、服務(wù)搜索、服務(wù)組合、服務(wù)調(diào)用/執(zhí)行、服務(wù)管理/監(jiān)控等。在上述研究主題中,語義Web服務(wù)搜索處于整個(gè)語義Web服務(wù)生命周期中的關(guān)鍵位置。服務(wù)的組合和調(diào)用都必須以找到滿足用戶需求的服務(wù)資源為前提條件,而服務(wù)的搜索又與語義Web服務(wù)資源的發(fā)布和注冊(cè)機(jī)制密切相關(guān),這使得服務(wù)資源的搜索功能在整個(gè)語義Web服務(wù)生命周期中起著承上啟下的重要作用。
語義Web服務(wù)搜索利用語義Web服務(wù)的描述模型和描述語言給予Web服務(wù)的語義信息進(jìn)行搜索操作[4],以獲得滿足用戶需求的Web服務(wù)資源。這種方式能夠提高服務(wù)搜索的精度,改善用戶體驗(yàn),并為語義Web服務(wù)的組合、執(zhí)行提供更為可靠地支持。
2 語義Web服務(wù)搜索相關(guān)研究主題
目前語義Web服務(wù)搜索相關(guān)研究的側(cè)重點(diǎn)都集中在如何利用語義信息進(jìn)行服務(wù)的匹配,即在大量已有語義服務(wù)資源的基礎(chǔ)之上,快速、準(zhǔn)確地搜索和發(fā)現(xiàn)滿足用戶需求的服務(wù)。對(duì)于語義Web服務(wù)搜索的研究工作,通常從以下3個(gè)方面進(jìn)行,即服務(wù)資源的收集/索引、搜索條件表達(dá)/處理和服務(wù)資源的匹配/排序[5]。語義Web服務(wù)的相關(guān)研究內(nèi)容和語義Web服務(wù)搜索的研究主題可用下圖1說明。
語義服務(wù)資源的收集和索引研究涉及語義Web服務(wù)的發(fā)布和注冊(cè)機(jī)制,服務(wù)資源的收集,以及對(duì)于收集的服務(wù)資源進(jìn)行索引和索引資源后續(xù)管理方面的問題。語義搜索條件的表達(dá)則主要研究提供一種方法,使用戶利用語義信息,清晰、明確地表達(dá)其對(duì)所需服務(wù)資源的需求。語義Web服務(wù)資源的匹配/排序研究用戶對(duì)Web服務(wù)資源的需求的語義描述與Web服務(wù)資源的語義信息的契合程度,并根據(jù)契合程度對(duì)服務(wù)資源進(jìn)行排序,以便擇優(yōu)選擇。
3 Web服務(wù)資源收集/索引
3.1 傳統(tǒng)的注冊(cè)和發(fā)布機(jī)制
UDDI主要提供基于Web服務(wù)的注冊(cè)和發(fā)現(xiàn)機(jī)制,為Web服務(wù)提供3個(gè)重要的技術(shù)支持:標(biāo)準(zhǔn)的描述Web服務(wù)的機(jī)制;調(diào)用的Web服務(wù)的機(jī)制;可以訪問的Web服務(wù)注冊(cè)中心。UDDI規(guī)范由OASIS標(biāo)準(zhǔn)化組織制定。其缺點(diǎn)是僅支持語法層的操作,在服務(wù)的注冊(cè)階段無法準(zhǔn)確的描述服務(wù)的功能,而在服務(wù)的搜索階段也是僅提供基于關(guān)鍵字的匹配策略,因而無法提供精確的搜索結(jié)果。另一方面UDDI集中式Web服務(wù)發(fā)現(xiàn)結(jié)構(gòu)也存在缺乏可擴(kuò)展問題。
3.2 分布式注冊(cè)中心
為了解決注冊(cè)中心因?yàn)槿狈τ行Х植际讲呗远鴮?dǎo)致的系統(tǒng)存在可擴(kuò)展問題,Perryea等[6]提出通過注冊(cè)中心組成社區(qū)(community),利用服務(wù)間的依賴關(guān)系生成食物鏈來幫助發(fā)現(xiàn)Web服務(wù),這種方式雖然提高了發(fā)現(xiàn)效率,卻導(dǎo)致大量的額外存儲(chǔ),降低了可擴(kuò)展性。Verma等[7]通過聯(lián)盟(federation)來組織注冊(cè)中心,即一個(gè)注冊(cè)中心可以屬于多個(gè)聯(lián)盟。這種方式會(huì)導(dǎo)致在極端的情況下,如一個(gè)注冊(cè)中心屬于所有的聯(lián)盟,該策略就不能很好地將注冊(cè)中心分類,無法高效地完成服務(wù)注冊(cè)和發(fā)現(xiàn)任務(wù)。參考文獻(xiàn)[8]通過P2P覆蓋網(wǎng)將注冊(cè)中心組織起來以提供好的可擴(kuò)展性,然而采用非結(jié)構(gòu)化P2P方式,很難解決系統(tǒng)內(nèi)請(qǐng)求消息轉(zhuǎn)發(fā)次數(shù)太多導(dǎo)致的占用帶寬過多等問題。參考文獻(xiàn)[9]則通過crawler主動(dòng)地訪問各個(gè)注冊(cè)中心來提取服務(wù)信息。
4 語義Web服務(wù)搜索條件表達(dá)
4.1 假想完整服務(wù)搜索條件描述模型
以假想的完整服務(wù)描述模型來表示服務(wù)搜索條件。在參考文獻(xiàn)[10]中給出了以完整服務(wù)描述模型來表示報(bào)務(wù)搜索條件的一般范式。以這種方式進(jìn)行的研究工作主要分為兩類:(1)基于OWL-S服務(wù)描述模型的,代表性工作有[11];(2)基于WSMO服務(wù)描述模型的,代表性工作包括[12]。從地域上看,基于OWL-S模型進(jìn)行研究工作的研究機(jī)構(gòu)和人員主要分布在美國和亞洲地區(qū),而基于WSMO模型的研究工作則集中在歐洲和大洋洲地區(qū)。此外,對(duì)于WSDL規(guī)范進(jìn)行語義描述的擴(kuò)展,以使其能夠描述語義Web服務(wù)的研究工作相對(duì)時(shí)間較早,現(xiàn)已基本偃旗息鼓。
4.2 簡化的服務(wù)描述模型元素
以簡化后的服務(wù)描述模型元素來表示服務(wù)搜索條件。服務(wù)描述模型元素包括服務(wù)描述中的功能語義,服務(wù)的前置條件(Precondition,P),服務(wù)接口的效果(Effect,E)[13],服務(wù)的各種操作(operation),更進(jìn)一步的還有服務(wù)的輸入(Input,I)和服務(wù)的輸出(Output,O)[14]。
4.3 自定義服務(wù)搜索條件格式
自定義服務(wù)搜索條件格式。以該種方式進(jìn)行語義Web服務(wù)資源的搜索和發(fā)現(xiàn)的研究工作比較多,其實(shí)該類研究工作是在簡化后的服務(wù)描述模型基礎(chǔ)上對(duì)相關(guān)的元素進(jìn)行了規(guī)范化。具體的方法有:以服務(wù)模版(Service Template)的概念表示服務(wù)的搜索請(qǐng)求條件;以能力描述(Capability Description)來表述語義服務(wù)的搜索請(qǐng)求條件;提出過程查詢語言PQL(Process Query Language),基于其提出的過程本體(process ontology)表述服務(wù)搜索條件。而更多的研究工作則基于上述簡化后的服務(wù)描述模型元素,將其抽取出來后進(jìn)行規(guī)范化表述,以N元組的方式來表述服務(wù)搜索條件。如參考文獻(xiàn)[15]中用服務(wù)請(qǐng)求三元組req={reqName,InReqSet,OutReqSet}。此外,語義上下文(Semantic Context)也可以包含在服務(wù)搜索條件中。
4.4 特定語言或語法結(jié)構(gòu)
利用現(xiàn)有的特定語言或語法結(jié)構(gòu)來表示服務(wù)搜索條件。在OWL-S 2004版本規(guī)范中,已經(jīng)考慮了關(guān)于服務(wù)條件的表述,其中就包括SWRL(Semantic Web Rule Language)和KIF(Knowledge Interchange Format)。SWRL(Semantic Web Rule Language)是W3C的標(biāo)準(zhǔn)之一,作為OWLS-Lite和Rule ML的綜合,它可以表示面向OWL-S服務(wù)資源的規(guī)則,并能將其用于語義Web服務(wù)資源的搜索中。但很明顯,上述兩種描述語言只能適用于用OWL-S規(guī)范描述的服務(wù)搜索,且KIF是面向機(jī)器的、在不同程序間交換知識(shí)的語言,不適用于半自動(dòng)化的、由用戶自己提交服務(wù)搜索條件的情況。這種方式直接用于語義Web服務(wù)搜索時(shí),對(duì)用戶的要求過高[16]。
5 語義Web服務(wù)匹配/排序
5.1 基于邏輯推理的語義Web服務(wù)匹配方法
基于邏輯推理的Web服務(wù)匹配方法是Web服務(wù)搜索的主要方法之一,即通過本體概念之間包含的邏輯關(guān)系來實(shí)現(xiàn)基于語義的服務(wù)匹配。當(dāng)前基于邏輯推理的匹配方法主要是根據(jù)其語義關(guān)系,特別是在本體分類層次中的關(guān)系來確定。服務(wù)的接口的描述主要有輸入(Input,I)參數(shù)的語義標(biāo)注、輸出(Output,O)參數(shù)的語義標(biāo)注、接口的前置條件(Precondition,P)、接口的效果(Effect,E)組成。根據(jù)匹配的內(nèi)容不同可以分為基于輸入輸出(IO)的匹配和基于輸入輸出和前置后置條件的匹配(IOPE)的匹配。基于IO語義匹配的匹配器有OWLSM,OWLS-UDDI,他們通過發(fā)布服務(wù)的IO與請(qǐng)求服務(wù)IO之間的語義包含關(guān)系來確定服務(wù)的匹配程度。基于IOPE的服務(wù)匹配除了考慮IO外,還考慮前置條件P和后置條件E,目前提出的有,采用兩階段的方法來度量用戶目標(biāo)的滿足程度,第一階段度量WSMO目標(biāo)模板與WSMO中Web服務(wù)匹配程度,若滿足,再在此基礎(chǔ)上度量目標(biāo)實(shí)例與Web服務(wù)的相似度[17]。
5.2 基于語義相似度的語義Web服務(wù)匹配算法
基于語義相似度計(jì)算的匹配方法,以本體概念之間的相似性為基礎(chǔ),通過計(jì)算服務(wù)描述之間的相似性來確定服務(wù)的匹配程度。當(dāng)前研究工作有,通過計(jì)算本體概念之間相同和不同的屬性來得到相似度值,其代表是Amos Tversky的基于屬性相似度的算法[18];通過測(cè)量本體間概念連接邊長度,用概念間的幾何距離來衡量語義相關(guān)度的基于語義相似度的計(jì)算算法[19];還有一種基于信息容量的相似度算法,其核心是根據(jù)兩個(gè)本體概念所擁有的共同部分來決定他們之間的相似度。
從上述對(duì)語義Web服務(wù)搜索的研究工作的總結(jié)和分析中可得出以下結(jié)論。首先,語義Web服務(wù)搜索是語義Web服務(wù)研究工作中一個(gè)基礎(chǔ)性問題?,F(xiàn)有的研究工作主要集中在Web服務(wù)的匹配上,基于邏輯推理的匹配方法和基于語義相似度的匹配方法以及它們的組合的方法都為Web服務(wù)的匹配提供的豐富的選擇。隨著服務(wù)效果、服務(wù)的情景等信息的引入,有效地提高了語義Web服務(wù)匹配的質(zhì)量。其次,目前尚沒有一種完備的、規(guī)范的服務(wù)搜索條件表達(dá)方式,進(jìn)而使得當(dāng)前的服務(wù)的匹配算法大多都是在自我假定環(huán)境中實(shí)現(xiàn)的,不具有通用性。最后,Web服務(wù)的注冊(cè)和索引沒有一種統(tǒng)一的規(guī)范,UDDI注冊(cè)中心的集中式Web服務(wù)發(fā)現(xiàn)結(jié)構(gòu)存在可擴(kuò)展性不足的問題。
參考文獻(xiàn)
[1] MCILRAITH S A, SON T C, ZENGH. Semantic web services[J]. Intelligent Systems, IEEE, 2001,16(2):46-53.
[2] BERNERS-LEE T, HENDLER J, LASSILA O. The semantic web[J]. Scientific american,2001,284(5):28-37.
[3] 岳昆,王曉玲,周傲英.Web服務(wù)核心支撐技術(shù):研究綜述[J].軟件學(xué)報(bào),2004,15(3):428-442.
[4] 孟祥福,張霄雁,馬宗民,等.基于語義相似度的Web 數(shù)據(jù)庫不精確查詢方法[J].計(jì)算機(jī)科學(xué),2012,39(4): 154-158.
[5] 曾志浩.用于語義Web服務(wù)搜索的語義條件表達(dá)式的研究[D].武漢:武漢大學(xué),2010.
[6] PERRYEA C A, CHUNG S. Community-based service discovery[C]. Web Services, 2006. ICWS′06. International Conference on. IEEE, 2006.
[7] SIVASHANMUGAM K, VERMA K, SHETH A. Discovery of web services in a federated registry environment[C]. Web Services, 2004. Proceedings. IEEE International Conference on. IEEE, 2004.
[8] 劉志忠,王懷民,周斌.一種雙層P2P結(jié)構(gòu)的語義服務(wù)發(fā)現(xiàn)模型[J].軟件學(xué)報(bào),2007,18(8):1922-1932.
[9] AL-MASRI E, MAHMOUD Q H. WSCE: A crawler engine for large-scale discovery of web services[C]. Web Services, 2007. ICWS 2007. IEEE International Conference on. IEEE, 2007.
[10] GRIMM S, MOTIK B, PREIST C. Matching semantic service descriptions with local closed-world reasoning[M].The Semantic Web: Research and Applications. Springer Berlin Heidelberg, 2006.
[11] PAOLUCCI M, KAWAMURA T, PAYNE T R, et al. Semantic matching of web services capabilities[M]. The Semantic Web—ISWC 2002. Springer Berlin Heidelberg, 2002.
[12] STOLLBERG M, HEPP M, HOFFMANN J. A caching mechanism for semantic web service discovery[M]. The Semantic Web. Springer Berlin Heidelberg, 2007.
[13] BENER A B, OZADALI V, ILHAN E S. Semantic matchmaker with precondition and effect matching using SWRL[J]. Expert Systems with Applications, 2009,36(5): 9371-9377.
[14] 張佩云,黃波,孫亞民.一種基于語義與QoS感知的 Web服務(wù)匹配機(jī)制[J].計(jì)算機(jī)研究與發(fā)展,2010(5):780-787.
[15] 鄒國兵,向陽,甘楊蘭,等.利用語義匹配度計(jì)算的 Web服務(wù)發(fā)現(xiàn)方法[J].小型微型計(jì)算機(jī)系統(tǒng),2010 (5):807-812.
[16] 王海,高嶺,范琳,等.基于SPARQL-DL的語義Web 服務(wù)查詢[J].電子學(xué)報(bào),2011,39(A03):52-56.
[17] STOLLBERG M, KELLER U, LAUSEN H, et al. Two-phase web service discovery based on rich functional descriptions[M]. The Semantic Web: Research and Applications. Springer Berlin Heidelberg, 2007.
[18] TVERSKY A. Features of similarity[J]. Psychological review, 1977, 84(4): 327-352.
[19] CRAMER I, WANDMACHER T, WALTINGER U. Exploring resources for lexical chaining: A comparison of automated semantic relatedness measures and human judgments[M]. Modeling, Learning, and Processing of Text Technological Data Structures. Springer Berlin Heidelberg,2012.