摘 要:隨著Web環(huán)境下服務(wù)數(shù)量的快速增長,如何高效快速地發(fā)現(xiàn)服務(wù)成為迫切需要解決的問題。基于Web服務(wù)圖的服務(wù)發(fā)現(xiàn)方法,利用Web服務(wù)之間的語義關(guān)系來進行服務(wù)發(fā)現(xiàn),仿真實驗證明這種方法能極大的提高Web服務(wù)的發(fā)現(xiàn)效率。但是目前的研究還未涉及到Web服務(wù)組合流的網(wǎng)絡(luò)傳輸、服務(wù)組合流的可視化表示以及多服務(wù)組合流的客戶自主與交互選擇。而這些是基于Web服務(wù)圖的服務(wù)發(fā)現(xiàn)方法得以實現(xiàn)和應(yīng)用的重要環(huán)節(jié)。本文以知識地圖為基礎(chǔ),通過對服務(wù)關(guān)系進行建模來解決這些問題,從而進一步完善基于Web服務(wù)圖的服務(wù)發(fā)現(xiàn)理論與方法。
關(guān)鍵詞:Web服務(wù)圖;服務(wù)發(fā)現(xiàn);知識地圖;XTM
中圖分類號:TP393 文獻標識碼:A
1 引言
在傳統(tǒng)的Web服務(wù)發(fā)現(xiàn)方法中,服務(wù)發(fā)現(xiàn)過程是客戶根據(jù)語法、語義和策略在服務(wù)注冊機構(gòu)中一個一個的查找滿足條件的服務(wù),然后在返回的多個服務(wù)中選擇滿意的服務(wù)結(jié)點,最后組合成符合用戶需求的服務(wù)流。這種服務(wù)發(fā)現(xiàn)方法沒有考慮服務(wù)提供組織提供的系列服務(wù)之間的聯(lián)系和客戶需求系列服務(wù)之間的邏輯關(guān)系,從而使得要在服務(wù)提供商提供的海量服務(wù)中尋找單個的服務(wù)非常耗時。為了解決該問題,提出了web服務(wù)圖的概念。基于Web服務(wù)圖的服務(wù)發(fā)現(xiàn)方法不再搜索單個的服務(wù),而是將客戶自定義的需求服務(wù)流作為一個完整的請求對象傳遞給UDDI注冊中心,UDDI注冊中心在Web服務(wù)圖的基礎(chǔ)上進行匹配,返回的結(jié)果是多個滿足條件的服務(wù)組合,而不是傳統(tǒng)服務(wù)發(fā)現(xiàn)方法中的多個滿足條件的單一服務(wù)結(jié)點。基于web服務(wù)圖的服務(wù)發(fā)現(xiàn)過程如圖1所示,實驗研究表明,該方法能極大提高Web服務(wù)發(fā)現(xiàn)的效率。

但是,基于Web服務(wù)圖的服務(wù)發(fā)現(xiàn)方法在實際的應(yīng)用中還有很多具體問題需要考慮,如在實際服務(wù)發(fā)現(xiàn)過程中,即便是組合的請求流,可滿足條件的待選組合流數(shù)量有可能龐大,需要客戶交互式參與選擇,這就要求實現(xiàn)多個服務(wù)組合流在網(wǎng)上傳輸以及實現(xiàn)多個組合服務(wù)在客戶端的可視化表示和交互選擇機制,從而使客戶能更方便地選擇出滿意的服務(wù)組合。針對該問題,本文嘗試以知識地圖為基礎(chǔ),通過對服務(wù)關(guān)系建模來解決這些問題,從而進一步完善基于Web服務(wù)圖的服務(wù)發(fā)現(xiàn)理論與方法。
2 基于知識地圖的組合Web服務(wù)流模型
要將候選的服務(wù)流在網(wǎng)絡(luò)中傳輸并以可視化的形式顯示在客戶端,首先需要一個表示模型。BPEIAWS雖然能夠描述組合Web服務(wù)流,但它只是描述了什么時候,以什么順序,到哪兒,去調(diào)用那些Web服務(wù),怎樣組織這些調(diào)用,不能涉及服務(wù)的細節(jié),因此無法給客戶提供評價的標準,進行雙向選擇。在本研究中,考慮到Web服務(wù)是一類知識而知識地圖能夠用來描述知識以及知識與知識之間的關(guān)系,并且有完備的理論與工具將知識與關(guān)系可視化表示,因此我們采用知識地圖模型對候選服務(wù)流中的Web服務(wù)以及Web服務(wù)之間的關(guān)系建模。

2.1 Topic Maps and XTM(XML Topic Maps)
ISO標準ISO/IEC 13250 Topic Map定義了一個模型作為鏈接網(wǎng)絡(luò)的語義結(jié)構(gòu)。Topic Maps把知識描述、信息管理與實際的信息資源聯(lián)系起來。Topic Map標準為企業(yè)提供了一個清晰的結(jié)構(gòu),這有助于企業(yè)對不同的信息資源進行知識組織。并為用戶訪問知識建造了一個知識共享環(huán)境。一般,TopicMaps用于構(gòu)造組合電子服務(wù)的導航圖。
XML topic maps(XTM)是TopicMaps.org制定的使用XML語法來描述基于Web的主題地圖的抽象模型,它使用
2.2 使用知識地圖來表示組合web服務(wù)

組合的Web服務(wù)是一種知識,它包含兩類,一種是Web服務(wù)本身如服務(wù)名稱,服務(wù)提供者,服務(wù)的地址,服務(wù)的分類等,另一種是Web服務(wù)之間的關(guān)系,如publish assertion等。為了將知識表示出來,首先必須選擇一個模型。知識的表示有很多種模型,如元數(shù)據(jù),XML,謂詞邏輯等,但是考慮到需要將Web服務(wù)組合流在網(wǎng)絡(luò)上傳輸和可視化顯示,我們采用了XTM(XML Topic Maps)來存儲Web服務(wù)流中的知識,它是基于XML標準的,因此能夠使用Soap協(xié)議來進行有效的傳輸,而且目前的可視化技術(shù)能夠很好的解析XML文檔。
基于XTM的組合Web服務(wù)流表示
要使用XTM來描述Web服務(wù)流中的服務(wù)結(jié)點和關(guān)聯(lián),首先要做的就是將服務(wù)結(jié)點的元數(shù)據(jù)信息和服務(wù)之間的關(guān)系抽象出來,對應(yīng)于XTM中的元素就是

WSDL文檔是服務(wù)提供者描述所提供服務(wù)的XML文檔,它包含了Web服務(wù)的元信息,這些信息有:服務(wù)的名字,服務(wù)的提供者,服務(wù)的位置,服務(wù)的分類等等,這些元數(shù)據(jù)信息都可以抽象為
到目前為止,我們已經(jīng)使用XTM將Web服務(wù)流表示出來了,全部建模過程結(jié)束。
3 應(yīng)用分析
建立知識地圖的目的是為了解決知識共享和知識利用等問題,目前知識地圖的利用熱點包括以下幾個方面:知識預(yù)訂與推送;信息可視化。因此知識地圖模型之所以能夠在網(wǎng)絡(luò)上傳輸和以可視化的形式顯示在客戶端是由它本身的特性所決定的。

XTM的主要功能在于給用戶提供導航,讓客戶可以瀏覽Web服務(wù)流和與Web服務(wù)流相關(guān)的知識,其詳細的流程如圖5所示:
在這個過程中,也是把客戶自定義的需求服務(wù)流作為一個完整的請求對象傳遞給UDDI注冊中心,UDDI注冊中心在Web服務(wù)圖的基礎(chǔ)上進行匹配,知識地圖系統(tǒng)會將返回的所有符合條件的Web服務(wù)組合進行建模存儲,存儲的內(nèi)容包括Web服務(wù)結(jié)點的詳細信息以及Web服務(wù)組合中的彼此服務(wù)結(jié)點之間的關(guān)系,然后再將結(jié)果在網(wǎng)絡(luò)上進行傳輸并以可視化的方式顯示在客戶端,客戶端進行選擇后綁定到自己選擇的服務(wù)提供商上。
4 具體實現(xiàn)
用Ecliese開發(fā)工具和Java語言本文實現(xiàn)了XTM中所表示的用戶導航接口模塊和Sequence關(guān)系。圖7表示Sequence關(guān)系的一個Web服務(wù)組合流,圖8是生成的用戶導航接口。對程序進行測試中,根據(jù)用戶對服務(wù)的不同的需求,程序運行良好。在系統(tǒng)生成用戶導航接口后,用戶能夠選擇服務(wù)。
此外,我們需要確定導航系統(tǒng)的表示邏輯,為用戶提供導航接口。既然是Web服務(wù)知識導航,面向的用戶當然也是網(wǎng)絡(luò)用戶,因此采用Web服務(wù)器作為導航服務(wù)平臺。XTM是基于XML的,現(xiàn)有的XML技術(shù)已經(jīng)完全能夠滿足XTM處理的需要。導航的基本模式與當前通用的導航模式一樣,提供兩種方式:搜索與瀏覽。

當利用知識地圖把模型建立好以后,我們把基于Web服務(wù)圖的服務(wù)發(fā)現(xiàn)過程改進為如圖6所示:
5 結(jié)束語
知識地圖是一個研究了很多年的領(lǐng)域,它具有完備的理論來支持查詢和可視化顯示。由于基于Web服務(wù)圖的服務(wù)發(fā)現(xiàn)方法得到的結(jié)果可能很多,客戶要做出選擇仍然是一個困難的過程。所以,我們應(yīng)該實現(xiàn)多個服務(wù)組合流在網(wǎng)上傳輸以及實現(xiàn)多個組合服務(wù)在客戶端的可視化表示和交互選擇機制。通過對知識地圖的研究,我們提出了基于XTM的模型來描述組合的Web服務(wù),并對其進行可視化表示和傳輸。
下一步研究的工作是可以使用某種評價函數(shù)對搜索出來的結(jié)果排序,如根據(jù)用戶的歷史執(zhí)行記錄來判斷哪一組服務(wù)流是客戶經(jīng)常選擇的,進一步來完善web服務(wù)圖理論。