基於關聯數據的Web服務語義標註方法
2023-04-26 19:37:26
專利名稱:基於關聯數據的Web服務語義標註方法
技術領域:
本發明涉及web服務技術領域,具體來說,涉及基於關聯數據的Web服務語義標註。
背景技術:
通過傳統的關鍵字匹配技術得到的服務發現結果,不能夠準確地滿足給定的服務請求,同時,只具有語法信息的Web服務不足以實現自動的Web服務組合。然而,當前網際網路上絕大部分的Web服務都缺乏充足的語義信息,這導致在服務發現的過程中不能夠提供用戶需求相關的所有Web服務,並且為自動的服務組合產生了困難。因此,為了給Web服務添加缺失的成分,語義標註是非常有必要的。語義Web服務的提出就是為了通過語義標註為服務的發現、組合與執行提供更好的支持。結合Web服務和語義網技術,語義Web服務的特徵被一系列的概念模型所體現,例如OWL-S,Web服務模型語言(WSML),Web服務模型本體(WSMO),Web服務描述語言語義(WSDL-S)和為Web服務描述語言的語義標註(SAWSDL)。這些Web服務的語義描述已經向W3C提出,但是,因為不同的表示語言和概念上的差異,使得它們本質上是不相容的。從而,語義Web服務的應用受到了影響,其效果也僅被訓練的專家實現。
特別地,METEOR-S語義標註框架提出了一種通過本體,為Web服務進行半自動地語義標註方法,它還利用領域本體對將Web服務分類到不同的領域中。除此之外,ASSAM工具通過應用機器學習技術將Web服務進行分類,之後通過使用字符串相似性度量將一些服務描述映射到本體上。也有分析WSDL與OWL-S之間的相似點和不同點,通過一些特殊轉換規則,將Web服務標註成為OWL-S格式的服務。還有在領域專家以及WordNet的幫助下,對Web服務進行分類和標註,從而構建語義Web服務網絡。以上技術雖然對Web服務的標註提出了不同的解決方案,但是存在如下的問題:(I)大部分方法需要通過分類法對服務進行分類,才能使用領域本體進行服務標註。而進行分類的過程就是耗時繁瑣的。(2)不夠自動,或者說它們過於複雜而不能用到實際的Web服務標註中,對自動的服務發現過程帶來極少的好處。(3) 一些方法需要對不同的服務使用不同的本體,否則標註結果就不合理和準確。而不同的領域本體需要不同的領域專家創建,這個過程帶來的額外的工作。對於我們網際網路上開放的世界來說,以上方法是有所限制。當前,源於語義網的研究工作,關聯數據(Linked Data)成為了網際網路上發布並連接結構化數據的最佳實現,弓丨起了一個覆蓋廣泛領域的,包含了數億條的RDF三元組的全球數據空間——數據的全球資訊網(Web of Data)的產生。作為數據全球資訊網的核心關聯數據集,DBpedia知識庫正發揮著越來越重要的作用,並且DBpedia本體是一致的,並有著層級結構。因此,這個豐富的關聯數據集包含了大量的相互連接的數據,跨領域的本體,以及基於DBpedia的廣泛應用,為Web服務標註帶了豐富的語義。目前還沒有工作將關聯數據與Web服務標註相結合。
發明內容
本發明旨在克服現有技術的不足,提供一個Web服務語義標註的方法,從而實現具有充分語義信息的Web服務,建立關聯數據集與Web服務之間的關係橋梁,為更為自動的Web服務發現和組合奠定了基礎。另一方面,本發明將提供了一種對應於本標註方法的評價框架,對網上大量的Web服務的標註結果做出評價,分析標註方法的可行性和有效性。為此,本發明採取的技術方案是,基於關聯數據的Web服務語義標註方法,包括如下步驟:(I)建立基於DBpedia關聯數據的Web服務標註模型;(2)實現基於DBpedia關聯數據的Web服務語義標註,包含以下步驟:2-1對Web服務進行解析,主要包括以下兩個任務:.驗證合法的對於用戶有意義的WSDL文檔;.對於每個Web服務,解析獲得上述標註模型中描述的三個語義層面的元素;2-2對Web服務參數層進行參數精化:對於解析得到的輸入參數和輸出參數集,將帶有結構的複雜參數類型分解為簡單參數;2-3對Web服務參數層進行參數清洗;2-4利用DBpedia Spotlight應用,將Web服務的每個清洗後的參數關聯到一個合適的DBpedia實例數據上;2-5將Web服務的參數對應到DBpedia的本體概念上。
參數清洗過程包括以下步驟:A.根據輸入和輸出信息獲得關鍵詞,許多服務的輸入和輸出參數有著getAbyB的命名形式,或者有的輸出參數是getB的形式,A是輸入參數的關鍵詞,B是輸出參數的關鍵詞;B.實現分詞:由於參數名稱的定義中沒有空格,需要根據首字母大寫對參數進行分詞,此外,還需要過濾標點符號和連結符號;C.過濾無意義的單詞,分詞之後得到了一組獨立的單詞,它們中的一些是沒有意義的,需要被忽略,無意義詞彙表在資料庫中維護;D.恢復縮寫詞,另一個在我們資料庫中維護的表是縮寫詞彙表,處理參數的最後一步是通過比較縮寫詞彙表,還原單詞數組中的縮寫詞。按照提出的評價框架的指標來分析實驗結果,對應於基於DBpedia關聯數據的語義標註方法,該評價框架主要包括標註結果(RS)和評價結果(EV)兩個指標:RS=
,該六元組中:.A為所有服務參數的集合;.B為通過本文算法標註後,有實例和本體概念標註的服務參數的集合;.S為通過本文算法標註後,標註的實例概念正確的服務參數的集合;.I為通過本文算法標註後,標註的本體概念正確的服務參數的集合;.Ε為通過本文算法標註後,參數相似於對應的標註實例或本體概念的服務參數的集合;.W為通過本文算法標註後,標註的實例概念錯誤的服務參數的集合;EV=
.Ar 為服務標註的標註率(AnnotationRate), Ar=|B Π A|/IA| ;.Re 為服務標註的精確度(Precision),Re= (S U I) Π A|/|B ;.Am 為服務標註的模糊度(Ambiguity), Am= E Π A | / | B |。本發明的技術特點及效果:運用本發明可以對大規模、跨領域的Web服務進行標註,能夠得到有效且極高標註率的結果,為自動的Web服務發現、自動的服務組合,以及語義Web服務網絡的分析提供了堅實的語義基礎。由於DBpedia本體概念的一般性,本方法得到的有價值的服務語義還可以實現Web服務導航和推薦。結合了當前開放、數量龐大的關聯數據,本發明的效果還在於,一方面,挖掘了語義數據網上豐富的語義給Web服務,反過來,產生了數據全球資訊網上的Web服務的語義網絡,將為語義Web服務、語義服務網絡的訪問和利用帶來重要的變革。
圖1基於DBpedia關聯數據的Web服務語義標註模型示意圖。圖2基於DBpedia的服務標註方法整體框架。圖3映射DBpedia實例數據到參數概念的過程示意圖。圖4標註錯誤的服務參數在接口中的分布:(a) Travel300服務集中錯誤參數標註在1897個接口中的分布;(b) 0WLS-TC4服務集中錯誤參數標註在1090個接口中的分布。
具體實施方式
·本發明涉及一種對Web服務進行自動語義標註的方法,在開放的關聯數據集及本體的基礎上,如DBpedia知識庫,提出了的相應的Web服務標註語義模型,為缺乏語義的Web服務增加了語義信息;為更為自動的Web服務發現和組合奠定了基礎。同時,本發明還提供了一種對應於本標註方法的評價框架。本發明的優勢是,一方面,挖掘了語義數據網上豐富的語義給Web服務,反過來,將為語義Web服務、語義服務網絡的訪問和利用產生重要的變革。提供一個基於DBpedia關聯數據的Web服務語義標註的方法,從而實現具有充分語義信息的Web服務,建立關聯數據集與Web服務之間的關係橋梁,為更為自動的Web服務發現和組合奠定了基礎。另一方面,本發明將提供了一種對應於本標註方法的評價框架,並使用本語義標註方法對網上大量的Web服務的標註結果做出評價,分析標註方法的可行性和有效性。為了實現本發明的目的,本發明的技術方案如下:(I)建立基於DBpedia關聯數據的Web服務標註模型。該模型主要包含兩個部分,一部分是語義Web服務,從技術上來說,每個WSDL描述的Web服務可以分為服務、接口和參數三層。對應地,從語義層面上來說,每個Web服務也將分為服務層(Service Level)、接口層(Interface Level)和參數層(Parameter Level)。另一部分是 DBpedia 本體,包括了DBpedia實例數據和本體的類。兩部分是通過DBpedia實例數據到參數層之間的語義映射從而建立語義關係。這樣,通過在DBpedia本體中推理,即可得到Web服務之間潛在的語義關係。
(2)實現基於DBpedia關聯數據的Web服務語義標註。標註方法的核心問題在於,如何利用關聯數據資源對增加Web服務的語義,更具體地說,是怎麼樣將合適的DBpediaURI映射到Web服務的輸入和輸出參數上。因此,本語義標註方法主要包含以下步驟:2-1對Web服務進行解析,主要包括以下兩個任務:.驗證合法的對於用戶有意義的WSDL文檔;.對於每個Web服務,解析獲得上述標註模型中描述的三個語義層面的元素。2-2對Web服務參數層進行參數精化。對於解析得到的輸入參數和輸出參數集,將帶有結構的複雜參數類型分解為簡單參數。2-3對Web服務參數層進行參數清洗。由於在WSDL文檔中,參數名是不規則的詞,並且不是具有分詞結構的格式,而是連寫或者縮寫,因此,參數清洗過程是有必要的,通過對上個WSDL文檔中的服務參數分析,本發明提出處理服務參數名稱的方法,包括以下步驟:E.根據輸入和輸出信息獲得關鍵詞。許多服務的輸入和輸出參數有著getAbyB的命名形式,或者有的輸出參數是getB的形式,很顯然地,在這種情況下,A是輸入參數的關鍵詞,B是輸出參數的關鍵詞;F.實現分詞。由於參數名稱的定義中沒有空格,我們需要根據首字母大寫對參數進行分詞。此外,還需要過濾標點符號和連結符號;G.過濾無意義的單詞。分詞之後得到了一組獨立的單詞,它們中的一些是沒有意義的,需要被忽略。在WSDL文檔中出現頻率超過90%的詞是沒有意義的,因為它們很難辨別之間的差異。無意義詞彙表在我們資料庫中維護;
H.恢復縮寫詞。另一個在我們資料庫中維護的表是縮寫詞彙表,處理參數的最後一步是通過比較縮寫詞彙表,還原單詞數組中的縮寫詞。2-4利用DBpedia Spotlight應用,將Web服務的每個清洗後的參數關聯到一個合適的DBpedia實例數據上。2-5將Web服務的參數對應到DBpedia的本體概念上。整個過程中,標註詞表記錄了所有的服務標註信息,當處理到之前標註過的參數,標註詞表即可發揮作用,同時,隨著標註的不斷進行,標註詞表不斷充實並完善,最終能夠成為Web服務和關聯數據關係的知識庫。(3)按照提出的評價框架的指標來分析實驗結果。對應於基於DBpedia關聯數據的語義標註方法,該評價框架主要包括標註結果(RS)和評價結果(EV)兩個指標:RS=
,該六元組中:.A為所有服務參數的集合。.B為通過本文算法標註後,有實例和本體概念標註的服務參數的集合。.S為通過本文算法標註後,標註的實例概念正確的服務參數的集合。.I為通過本文算法標註後,標註的本體概念正確的服務參數的集合。.Ε為通過本文算法標註後,參數相似於對應的標註實例或本體概念的服務參數的
隹A
口 O.W為通過本文算法標註後,標註的實例概念錯誤的服務參數的集合。EV=
.Ar 為服務標註的標註率(AnnotationRate), Ar= IB Π A|/|A|。.Re 為服務標註的精確度(Precision),Re= (S U I) Π A|/|B|。.Am 為服務標註的模糊度(Ambiguity), Am= E Π A | / | B |。本發明主要是利用作為關聯數據核心數據集的DBpedia知識庫,提出Web服務語義標註的模型,在此基礎上實現一種自動的Web服務語義標註方法,並對此方法提出一種語義標註評價框架。現在,將對這三個方面的具體實施方式
進行闡述。基於DBpedia關聯數據的Web服務標註模型主要包含兩個部分,如圖1所示。位於虛直線上部分是語義層面上的Web服務,包括如下三層:.服務層:是指最原始的Web服務。該層包含了一個服務的基本信息,如服務的名稱,服務使用的協議,服務的URI,服務的描述信息,服務的執行時間等。一個服務至少包含一個或者多個實現服務功能的接口,如圖1中的實直線表示。 接口層:接口是一個Web服務的基本功能單元,在服務發現和組合的過程中具有重要作用。接口層也包含了 Web服務能夠提供的所有功能。 參數層:參數來源於Web服務的輸入和輸出。服務的輸入是指一個Web服務為了得到預期的答案所需要的信息,服務的輸出是指一個Web服務響應請求後提供的信息。簡單參數是一個Web服務的葉節點。參數層是應該添加語義的地方,也就是標註的主要地方。另一部分是DBpedia本體,包括如下兩層:.DBpedia實例:指的是從維基百科中抽取出來的數百萬的實體,DBpedia實例的URI是以http://dbpedia.0rg/resource/name的方式定義,它們包含了極為廣泛的百科主題,通過RDF三元組的形式相互關聯,大部分的實例數據是被映射到DBpedia本體概念中。DBpedia實例數據給參數層帶來了語義。.DBpedia類:最新版本的DBpedia本體包含了 359個類,被定義在http://dbpedia.0rg/ontology/命名空間下。在本層,我們可以對DBpedia本體進行查詢和推理,從而挖掘服務之間潛在的關係,這也是構建Web服務語義網絡的重要步驟。基於DBpedia的Web服務語義標註方法的主要步驟如圖2所示。首先是按照標註模型對Web服務進行驗證和解析。通過解析後的Web服務具有參數層、操作層和服務層,其中,參數概念是Web服務語義的關鍵。圖2中虛線框內是將關聯數據匹配到參數概念的基本流程。對於每一個參數概念,查詢本地詞表是否已有該參數,若有,則返回存儲的結果則標註結束;反之,則精化和清洗參數,對於處理後的參數,加上其對應的接口描述,作為DBpedia Spotlight 的輸入,從而得到標註的DBpedia實例數據,再查詢得到對應的本體概念。最後,將標註的結果存入本地詞表中。該獲取參數概念的語義標註的過程見算法I。
權利要求
1.一種基於關聯數據的Web服務語義標註方法,其特徵是,包括如下步驟: (1)建立基於DBpedia關聯數據的Web服務標註模型; (2)實現基於DBpedia關聯數據的Web服務語義標註,包含以下步驟: 2-1對Web服務進行解析,主要包括以下兩個任務: 驗證合法的對於用戶有意義的WSDL文檔; 對於每個Web服務,解析獲得上述標註模型中描述的三個語義層面的元素; 2-2對Web服務參數層進行參數精化:對於解析得到的輸入參數和輸出參數集,將帶有結構的複雜參數類型分解為簡單參數; 2-3對Web服務參數層進行參數清洗; 2-4利用DBpedia Spotlight應用,將Web服務的每個清洗後的參數關聯到一個合適的DBpedia實例數據上; 2-5將Web服務的參數對應到DBpedia的本體概念上。
2.如權利要求1 所述的基於關聯數據的Web服務語義標註方法,其特徵是,參數清洗過程包括以下步驟: A.根據輸入和輸出信息獲得關鍵詞,許多服務的輸入和輸出參數有著getAbyB的命名形式,或者有的輸出參數是getB的形式,A是輸入參數的關鍵詞,B是輸出參數的關鍵詞; B.實現分詞:由於參數名稱的定義中沒有空格,需要根據首字母大寫對參數進行分詞,此外,還需要過濾標點符號和連結符號; C.過濾無意義的單詞,分詞之後得到了一組獨立的單詞,它們中的一些是沒有意義的,需要被忽略,無意義詞彙表在資料庫中維護; D.恢復縮寫詞,另一個在我們資料庫中維護的表是縮寫詞彙表,處理參數的最後一步是通過比較縮寫詞彙表,還原單詞數組中的縮寫詞。
3.如權利要求1所述的基於關聯數據的Web服務語義標註方法,其特徵是,按照提出的評價框架的指標來分析實驗結果,對應於基於DBpedia關聯數據的語義標註方法,該評價框架主要包括標註結果(RS)和評價結果(EV)兩個指標:RS= ,該六元組中: A為所有服務參數的集合; B為通過本文算法標註後,有實例和本體概念標註的服務參數的集合; S為通過本文算法標註後,標註的實例概念正確的服務參數的集合; I為通過本文算法標註後,標註的本體概念正確的服務參數的集合; E為通過本文算法標註後,參數相似於對應的標註實例或本體概念的服務參數的集合; W為通過本文算法標註後,標註的實例概念錯誤的服務參數的集合;EV= Ar 為服務標註的標註率(AnnotationRate),Ar=|B Π Al / I Al ;Re 為服務標註的精確度(Precision),Re=| (S U I) Π A|/|B ;Am為服務標註的模糊度(Ambiguity),Am= E Π A | / | B |。
全文摘要
本發明涉及web服務技術領域,為提供一個Web服務語義標註的方法,以及分析標註方法的可行性和有效性,本發明採取的技術方案是,基於關聯數據的Web服務語義標註方法,包括如下步驟(1)建立基於DBpedia關聯數據的Web服務標註模型;(2)實現基於DBpedia關聯數據的Web服務語義標註2-1對Web服務進行解析2-2對Web服務參數層進行參數精化;2-3對Web服務參數層進行參數清洗;2-4將Web服務的每個清洗後的參數關聯到一個合適的DBpedia實例數據上;2-5將Web服務的參數對應到DBpedia的本體概念上。本發明主要應用於web服務技術。
文檔編號G06F17/30GK103246731SQ20131017237
公開日2013年8月14日 申請日期2013年5月10日 優先權日2013年5月10日
發明者張禎, 馮志勇, 陳世展 申請人:天津大學