摘 要: 收集語(yǔ)義Web服務(wù)搜索研究的3個(gè)主要內(nèi)容:服務(wù)資源的索引、搜索條件的表達(dá)和服務(wù)資源的匹配、排序方面的相關(guān)工作,對(duì)當(dāng)前研究工作進(jìn)行了分類(lèi)歸納,最后歸納語(yǔ)義Web服務(wù)搜索所面臨的挑戰(zhàn)。
關(guān)鍵詞: 語(yǔ)義Web服務(wù);搜索條件;索引;表達(dá)方法;匹配
1 語(yǔ)義Web服務(wù)搜索
語(yǔ)義Web服務(wù)[1]源自2001年Berners Lee提出語(yǔ)義Web[2]的概念,并繼承了大量有關(guān)Web服務(wù)的研究成果,是語(yǔ)義Web技術(shù)和Web服務(wù)[3]技術(shù)相結(jié)合的產(chǎn)物。相關(guān)研究主題包括:服務(wù)發(fā)布/注冊(cè)、服務(wù)搜索、服務(wù)組合、服務(wù)調(diào)用/執(zhí)行、服務(wù)管理/監(jiān)控等。在上述研究主題中,語(yǔ)義Web服務(wù)搜索處于整個(gè)語(yǔ)義Web服務(wù)生命周期中的關(guān)鍵位置。服務(wù)的組合和調(diào)用都必須以找到滿足用戶需求的服務(wù)資源為前提條件,而服務(wù)的搜索又與語(yǔ)義Web服務(wù)資源的發(fā)布和注冊(cè)機(jī)制密切相關(guān),這使得服務(wù)資源的搜索功能在整個(gè)語(yǔ)義Web服務(wù)生命周期中起著承上啟下的重要作用。
語(yǔ)義Web服務(wù)搜索利用語(yǔ)義Web服務(wù)的描述模型和描述語(yǔ)言給予Web服務(wù)的語(yǔ)義信息進(jìn)行搜索操作[4],以獲得滿足用戶需求的Web服務(wù)資源。這種方式能夠提高服務(wù)搜索的精度,改善用戶體驗(yàn),并為語(yǔ)義Web服務(wù)的組合、執(zhí)行提供更為可靠地支持。
2 語(yǔ)義Web服務(wù)搜索相關(guān)研究主題
目前語(yǔ)義Web服務(wù)搜索相關(guān)研究的側(cè)重點(diǎn)都集中在如何利用語(yǔ)義信息進(jìn)行服務(wù)的匹配,即在大量已有語(yǔ)義服務(wù)資源的基礎(chǔ)之上,快速、準(zhǔn)確地搜索和發(fā)現(xiàn)滿足用戶需求的服務(wù)。對(duì)于語(yǔ)義Web服務(wù)搜索的研究工作,通常從以下3個(gè)方面進(jìn)行,即服務(wù)資源的收集/索引、搜索條件表達(dá)/處理和服務(wù)資源的匹配/排序[5]。語(yǔ)義Web服務(wù)的相關(guān)研究?jī)?nèi)容和語(yǔ)義Web服務(wù)搜索的研究主題可用下圖1說(shuō)明。
語(yǔ)義服務(wù)資源的收集和索引研究涉及語(yǔ)義Web服務(wù)的發(fā)布和注冊(cè)機(jī)制,服務(wù)資源的收集,以及對(duì)于收集的服務(wù)資源進(jìn)行索引和索引資源后續(xù)管理方面的問(wèn)題。語(yǔ)義搜索條件的表達(dá)則主要研究提供一種方法,使用戶利用語(yǔ)義信息,清晰、明確地表達(dá)其對(duì)所需服務(wù)資源的需求。語(yǔ)義Web服務(wù)資源的匹配/排序研究用戶對(duì)Web服務(wù)資源的需求的語(yǔ)義描述與Web服務(wù)資源的語(yǔ)義信息的契合程度,并根據(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ī)制;可以訪問(wèn)的Web服務(wù)注冊(cè)中心。UDDI規(guī)范由OASIS標(biāo)準(zhǔn)化組織制定。其缺點(diǎn)是僅支持語(yǔ)法層的操作,在服務(wù)的注冊(cè)階段無(wú)法準(zhǔn)確的描述服務(wù)的功能,而在服務(wù)的搜索階段也是僅提供基于關(guān)鍵字的匹配策略,因而無(wú)法提供精確的搜索結(jié)果。另一方面UDDI集中式Web服務(wù)發(fā)現(xiàn)結(jié)構(gòu)也存在缺乏可擴(kuò)展問(wèn)題。
3.2 分布式注冊(cè)中心
為了解決注冊(cè)中心因?yàn)槿狈τ行Х植际讲呗远鴮?dǎo)致的系統(tǒng)存在可擴(kuò)展問(wèn)題,Perryea等[6]提出通過(guò)注冊(cè)中心組成社區(qū)(community),利用服務(wù)間的依賴(lài)關(guān)系生成食物鏈來(lái)幫助發(fā)現(xiàn)Web服務(wù),這種方式雖然提高了發(fā)現(xiàn)效率,卻導(dǎo)致大量的額外存儲(chǔ),降低了可擴(kuò)展性。Verma等[7]通過(guò)聯(lián)盟(federation)來(lái)組織注冊(cè)中心,即一個(gè)注冊(cè)中心可以屬于多個(gè)聯(lián)盟。這種方式會(huì)導(dǎo)致在極端的情況下,如一個(gè)注冊(cè)中心屬于所有的聯(lián)盟,該策略就不能很好地將注冊(cè)中心分類(lèi),無(wú)法高效地完成服務(wù)注冊(cè)和發(fā)現(xiàn)任務(wù)。參考文獻(xiàn)[8]通過(guò)P2P覆蓋網(wǎng)將注冊(cè)中心組織起來(lái)以提供好的可擴(kuò)展性,然而采用非結(jié)構(gòu)化P2P方式,很難解決系統(tǒng)內(nèi)請(qǐng)求消息轉(zhuǎn)發(fā)次數(shù)太多導(dǎo)致的占用帶寬過(guò)多等問(wèn)題。參考文獻(xiàn)[9]則通過(guò)crawler主動(dòng)地訪問(wèn)各個(gè)注冊(cè)中心來(lái)提取服務(wù)信息。
4 語(yǔ)義Web服務(wù)搜索條件表達(dá)
4.1 假想完整服務(wù)搜索條件描述模型
以假想的完整服務(wù)描述模型來(lái)表示服務(wù)搜索條件。在參考文獻(xiàn)[10]中給出了以完整服務(wù)描述模型來(lái)表示報(bào)務(wù)搜索條件的一般范式。以這種方式進(jìn)行的研究工作主要分為兩類(lèi):(1)基于OWL-S服務(wù)描述模型的,代表性工作有[11];(2)基于WSMO服務(wù)描述模型的,代表性工作包括[12]。從地域上看,基于OWL-S模型進(jìn)行研究工作的研究機(jī)構(gòu)和人員主要分布在美國(guó)和亞洲地區(qū),而基于WSMO模型的研究工作則集中在歐洲和大洋洲地區(qū)。此外,對(duì)于WSDL規(guī)范進(jìn)行語(yǔ)義描述的擴(kuò)展,以使其能夠描述語(yǔ)義Web服務(wù)的研究工作相對(duì)時(shí)間較早,現(xiàn)已基本偃旗息鼓。
4.2 簡(jiǎn)化的服務(wù)描述模型元素
以簡(jiǎn)化后的服務(wù)描述模型元素來(lái)表示服務(wù)搜索條件。服務(wù)描述模型元素包括服務(wù)描述中的功能語(yǔ)義,服務(wù)的前置條件(Precondition,P),服務(wù)接口的效果(Effect,E)[13],服務(wù)的各種操作(operation),更進(jìn)一步的還有服務(wù)的輸入(Input,I)和服務(wù)的輸出(Output,O)[14]。
4.3 自定義服務(wù)搜索條件格式
自定義服務(wù)搜索條件格式。以該種方式進(jìn)行語(yǔ)義Web服務(wù)資源的搜索和發(fā)現(xiàn)的研究工作比較多,其實(shí)該類(lèi)研究工作是在簡(jiǎn)化后的服務(wù)描述模型基礎(chǔ)上對(duì)相關(guān)的元素進(jìn)行了規(guī)范化。具體的方法有:以服務(wù)模版(Service Template)的概念表示服務(wù)的搜索請(qǐng)求條件;以能力描述(Capability Description)來(lái)表述語(yǔ)義服務(wù)的搜索請(qǐng)求條件;提出過(guò)程查詢(xún)語(yǔ)言PQL(Process Query Language),基于其提出的過(guò)程本體(process ontology)表述服務(wù)搜索條件。而更多的研究工作則基于上述簡(jiǎn)化后的服務(wù)描述模型元素,將其抽取出來(lái)后進(jìn)行規(guī)范化表述,以N元組的方式來(lái)表述服務(wù)搜索條件。如參考文獻(xiàn)[15]中用服務(wù)請(qǐng)求三元組req={reqName,InReqSet,OutReqSet}。此外,語(yǔ)義上下文(Semantic Context)也可以包含在服務(wù)搜索條件中。
4.4 特定語(yǔ)言或語(yǔ)法結(jié)構(gòu)
利用現(xiàn)有的特定語(yǔ)言或語(yǔ)法結(jié)構(gòu)來(lái)表示服務(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ī)則,并能將其用于語(yǔ)義Web服務(wù)資源的搜索中。但很明顯,上述兩種描述語(yǔ)言只能適用于用OWL-S規(guī)范描述的服務(wù)搜索,且KIF是面向機(jī)器的、在不同程序間交換知識(shí)的語(yǔ)言,不適用于半自動(dòng)化的、由用戶自己提交服務(wù)搜索條件的情況。這種方式直接用于語(yǔ)義Web服務(wù)搜索時(shí),對(duì)用戶的要求過(guò)高[16]。
5 語(yǔ)義Web服務(wù)匹配/排序
5.1 基于邏輯推理的語(yǔ)義Web服務(wù)匹配方法
基于邏輯推理的Web服務(wù)匹配方法是Web服務(wù)搜索的主要方法之一,即通過(guò)本體概念之間包含的邏輯關(guān)系來(lái)實(shí)現(xiàn)基于語(yǔ)義的服務(wù)匹配。當(dāng)前基于邏輯推理的匹配方法主要是根據(jù)其語(yǔ)義關(guān)系,特別是在本體分類(lèi)層次中的關(guān)系來(lái)確定。服務(wù)的接口的描述主要有輸入(Input,I)參數(shù)的語(yǔ)義標(biāo)注、輸出(Output,O)參數(shù)的語(yǔ)義標(biāo)注、接口的前置條件(Precondition,P)、接口的效果(Effect,E)組成。根據(jù)匹配的內(nèi)容不同可以分為基于輸入輸出(IO)的匹配和基于輸入輸出和前置后置條件的匹配(IOPE)的匹配?;贗O語(yǔ)義匹配的匹配器有OWLSM,OWLS-UDDI,他們通過(guò)發(fā)布服務(wù)的IO與請(qǐng)求服務(wù)IO之間的語(yǔ)義包含關(guān)系來(lái)確定服務(wù)的匹配程度?;贗OPE的服務(wù)匹配除了考慮IO外,還考慮前置條件P和后置條件E,目前提出的有,采用兩階段的方法來(lái)度量用戶目標(biāo)的滿足程度,第一階段度量WSMO目標(biāo)模板與WSMO中Web服務(wù)匹配程度,若滿足,再在此基礎(chǔ)上度量目標(biāo)實(shí)例與Web服務(wù)的相似度[17]。
5.2 基于語(yǔ)義相似度的語(yǔ)義Web服務(wù)匹配算法
基于語(yǔ)義相似度計(jì)算的匹配方法,以本體概念之間的相似性為基礎(chǔ),通過(guò)計(jì)算服務(wù)描述之間的相似性來(lái)確定服務(wù)的匹配程度。當(dāng)前研究工作有,通過(guò)計(jì)算本體概念之間相同和不同的屬性來(lái)得到相似度值,其代表是Amos Tversky的基于屬性相似度的算法[18];通過(guò)測(cè)量本體間概念連接邊長(zhǎng)度,用概念間的幾何距離來(lái)衡量語(yǔ)義相關(guān)度的基于語(yǔ)義相似度的計(jì)算算法[19];還有一種基于信息容量的相似度算法,其核心是根據(jù)兩個(gè)本體概念所擁有的共同部分來(lái)決定他們之間的相似度。
從上述對(duì)語(yǔ)義Web服務(wù)搜索的研究工作的總結(jié)和分析中可得出以下結(jié)論。首先,語(yǔ)義Web服務(wù)搜索是語(yǔ)義Web服務(wù)研究工作中一個(gè)基礎(chǔ)性問(wèn)題?,F(xiàn)有的研究工作主要集中在Web服務(wù)的匹配上,基于邏輯推理的匹配方法和基于語(yǔ)義相似度的匹配方法以及它們的組合的方法都為Web服務(wù)的匹配提供的豐富的選擇。隨著服務(wù)效果、服務(wù)的情景等信息的引入,有效地提高了語(yǔ)義Web服務(wù)匹配的質(zhì)量。其次,目前尚沒(méi)有一種完備的、規(guī)范的服務(wù)搜索條件表達(dá)方式,進(jìn)而使得當(dāng)前的服務(wù)的匹配算法大多都是在自我假定環(huán)境中實(shí)現(xiàn)的,不具有通用性。最后,Web服務(wù)的注冊(cè)和索引沒(méi)有一種統(tǒng)一的規(guī)范,UDDI注冊(cè)中心的集中式Web服務(wù)發(fā)現(xiàn)結(jié)構(gòu)存在可擴(kuò)展性不足的問(wèn)題。
參考文獻(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] 孟祥福,張霄雁,馬宗民,等.基于語(yǔ)義相似度的Web 數(shù)據(jù)庫(kù)不精確查詢(xún)方法[J].計(jì)算機(jī)科學(xué),2012,39(4): 154-158.
[5] 曾志浩.用于語(yǔ)義Web服務(wù)搜索的語(yǔ)義條件表達(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)的語(yǔ)義服務(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] 張佩云,黃波,孫亞民.一種基于語(yǔ)義與QoS感知的 Web服務(wù)匹配機(jī)制[J].計(jì)算機(jī)研究與發(fā)展,2010(5):780-787.
[15] 鄒國(guó)兵,向陽(yáng),甘楊蘭,等.利用語(yǔ)義匹配度計(jì)算的 Web服務(wù)發(fā)現(xiàn)方法[J].小型微型計(jì)算機(jī)系統(tǒng),2010 (5):807-812.
[16] 王海,高嶺,范琳,等.基于SPARQL-DL的語(yǔ)義Web 服務(wù)查詢(xún)[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.