曹洪江,聶規劃,陳冬林
CAO Hong-jiang, NIE Gui-hua, CHEN Dong-lin
(武漢理工大學 經濟學院 電子商務研究所,武漢 430070)
基于語義標注的Web服務發現組合策略
Semantic information-based Web service discovery &compostion strategy
曹洪江,聶規劃,陳冬林
CAO Hong-jiang, NIE Gui-hua, CHEN Dong-lin
(武漢理工大學 經濟學院 電子商務研究所,武漢 430070)
為Web服務的提供者以及服務請求者在服務描述以及服務請求中加入相應的語義信息能消除Web服務中服務的查找和匹配環節參數的語義上的模糊性.將有助于服務的自動發現和組合.提出通過語義標注的方法在服務發現組合過程中添加語義信息,構建語義Web服務網絡.并利用Web服務功能屬性之間的語義關聯,使用基于反向推理機制的自動組合算法形成語義Web服務組合方案選出能有效滿足客戶需求的服務組合.
Web服務;語義標注;Web服務組合策略
Web服務被認為是一個被設計來支持網絡上機器之間的可互操作的交互,具有一個清晰的、機器可讀的、通用的標準描述(WSDL),其他系統以該描述中說明的方式與它交互,具有完全開放、松散耦合、標準協議規范和高度可集成能力等特征的一個軟件系統,但傳統的Web服務體系結構中[1],由于WSDL[2]對服務的描述接口是基于語法的以及UDDI本身是一種基于關鍵字的注冊查找機制,都缺乏對服務中必要的語義信息描述,從而無法實現滿足客戶需求的Web服務的自動發現和組合,將語義網的相關知識應用到Web服務領域是一種有效的克服上述缺陷的方法。實現在因特網上,將處于異構環境下的多個單一的Web服務組合成滿足用戶需求的服務的應用需求。本文從增強Web服務語義信息角度出發,提出了通過對請求信息以及服務描述信息進行語義標注[3,4],再將服務請求同Web服務功能屬性的語義描述相匹配。最后利用反向推理方法找出滿足用戶需求的服務組合的策略。
在傳統的Web服務邏輯框架下,底層協議如:UDDI,SOAP[8],WSDL可以滿足跨平臺的不同服務之間傳遞數據的作用,但在較高的層面上由于缺乏語義信息無法滿足服務的語義查找和自動匹配合,因此參考舊有的Web services的框架,在不同的Web services協議棧的層次上加入語義信息,實現對Web服務的語義化[5]。本文提出的基于語義標注的Web services發現組合邏輯框架如圖1所示。

圖1 語義標注的Web 服務發現組合邏輯框架
框架各部分作用簡介:
-Soap協議層:負責以XML格式傳遞各個服務間的消息
-Semantic Description:用OWL-S對WSDL中的Web 服務相關的描述信息進行語義標注
-Publication:將語義Web服務發布到Web服務語義網
-semantic network of Webservices:一個相互之間具有內在聯系的服務集合,每個節點對應一個具體的WEB服務,節點之間的連接線則根據不同Web服務的功能服務屬性(input,output)之間的語義相似度測量值做上對應的標記。
-Discovery&composition:語義Web服務的發現和組合
-Semantic request:服務請求的語義標注
-QoS:服務組合的QoS指標參數
邏輯結構圖中的semantic request 中主要是通過領域本體對服務的input,output參數進行語義標注,Discovery/composition則利用服務請求中的語義信息和semantic network of Websevices中的服務之間的語義關聯來實現服務的有效組合,semantic annotation 則是通過OWL-S[6]對已發布服務的WSDL文件進行語義標注。整個系統工作流程如圖2所示。

圖2 Web服務發現組合工作流程
在進行有效的語義Web服務組合之前,首先建立一個語義Web服務元模型,該模型要考慮到服務的描述信息和其后用于服務發現和組合的功能信息以及用于服務選擇的QoS信息,故使用一種“原子模型”,將有利于增強Web服務的發現組合的有效性和準確性。該文將一個語義Web服務定義為以下四元組:

Web服務的語義標注:以上四元組將用來描述所有的WEB服務,在WEB服務的語義描述中,其中很重要的一點就是將其Inputs、Outputs參數進行語義標注并將它們對應到對應的語義模型中去,從而使WEB服務的功能屬性具有語義信息。目前比較常用的就是使用W3C推薦的OWL-S本體描述語言來實現這一環節。OWL-S中通常由ServiceProfile、ServiceModel、ServiceGrounding[10]三部分組成,其中ServiceProfile主要是描述服務諸如服務名稱,服務功能信息等一般信息,ServiceModel主要是服務提供者用來描述服務的內部流程,而ServiceGrounding 它描述服務是如何被訪問的,在這三部分中,ServiceProfile中的(Inputs,Outputs)將可以被用來進行服務的發現和組合,而ServiceGroundin中的atomic process,(Inputs,Outputs)同WSDL中的operation,Message是一種對應關系[7]??捎脕韺Ψ者M行語義標注。

表1 語義Web services示例

圖3 Web服務的語義標注
服務請求的標注:服務請求和Web服務應該對應到同一個語義模型中來進行,當服務請求提交后。通常經過解析,將對服務組合有用的參數信息提取出來。分別對應到inputs和outputs參數,這個解析過程的完成一般會通過相應的語法解析器,也可以通過用戶頁面直接提交的方式來獲取。當代表服務請求的參數獲取后,inputs和outputs將動態的連接到一個OWL描述的和Web services描述所共享的領域本體,從而消除服務請求同Web services語法語義上存在的二義性,為服務的發現和匹配掃清障礙。

圖4 服務請求的語義標注
為了能自動找出滿足查詢要求的服務組合,本文考慮用反向推理的自動服務算法來查找服務組合。該算法的主要思路是利用目標outputs參數同后續服務inputs參數的相似性來進行。
算法如下:
1)將服務請求的outputs作為目標outputs
2)通過web服務語義網中查找和目標outputs相匹配(equivalent,opposite subsumption)的語義服務
3)將尋找到的語義服務的inputs作為新的目標outputs
4)在還未被查找過的語義服務集合內繼續查找同新目標相匹配outputs從而查找到下一個加入組合方案的新的服務節點。
5) 跳轉到step3
6)所有outputs參數已經查找過或者再無法再找到滿足匹配要求的outputs,服務組合結束。
本文采用反向推理的方法使得出的組合方案都是滿足服務請求的,因此可以減少無用組合方案的產生。
該組合策略在課題組的前序研究中已經得到了初步驗證,能較為快速有效的找出服務組合方案,其中推理機采用JENA,本體建模工具為protégé 3.2,服務本體采用的是: http://www.mindswap.org/2004/owl-s/services.shtml中的實例。但在大量服務本體存在情況下的組合效果還需要進一步驗證和研究。
根據在Web服務發現和組合中增加語義信息有助于提高服務組合的準確性和有效性這一理論,本文采用對服務請求通過領域本體進行語義標注以及在服務請求提出之前利用本體概念間的語義匹配,對不同Web服務的inputs,outputs參數進行匹配,文中提出的利用反向推理機制的服務組合算法,能提高服務組合方案的產生效率避免無用組合方案的產生。該服務發現組合策略是在一些已經具有的標準之上提出的一套形式化方法和算法,因此具有較強的實用性。進一步的研究主要在服務本體的分類、不同類別Web服務語義網的建立、大量Web服務存在時組合算法的優化、考慮用戶偏好的服務語義建模、服務的QoS等非功能屬性的匹配幾個方面。
[1] Oasis,UDDI version 3.0.1[DB/OL].http://uddi.org/pubs/uddi-v3.0.1-20031014.html.
[2] W3C,Web services Description Language,version1.1[DB/OL].http://www.w3.org/tr/wsdl.
[3] Duo zhang,Juan-zi Li,XU Bin.Web Service Annotation using ontology Mapping[C].Proc of IEEE International workshop on Service-oriented System Engineering,2005:243-250.
[4] Semantic Web Annotation&Authoring Community[DB/OL],http://annotation.semanticWeb.org.
[5] I.Arpinar,B.Aleman-Meza,R.Zhang,A.Maduko, Ontologydriven Web services composition platform[J],Inf.Syst.E-Business Management,2005,3.
[6] David Martin,Mark Burstein,et al,owl-s:Semantic Markup for Web services[DB/OL].http://www.daml.org/service/owl-s/1.1/overview/.
[7] Massimo Paolucci,Naveen Srinivasan,Katia P.Sycara et al.Towards a Semantic choreography of Web Services:from wsdl to Daml-s[C],Proc of the International conference on Web Services(ICWS,2003):22-26.
TH166
A
1009-0134(2010)10(上)-0179-03
10.3969/j.issn.1009-0134.2010.10(上).56
2010-04-25
曹洪江(1972 -),男,湖南雙峰人,講師,博士,研究方向為語義網與本體論、知識管理。