核心,定義,元數據概念.,引言,語義Web 的支撐軟體現狀,WODOS 的結構,內容,本體的局限性大,􀁺 查詢語句的可讀性差,本體推理機制,數據源的多樣性,本體粒度的細化,WODOS 運行舉例,運行環境和問題描述,使用的RQL 查詢語句,查詢結果,
核心
它的核心是:通過給全球信息網上的文檔(如:HTML)添加能夠被計算器所理解的語義(Meta data),從而使整個
網際網路成為一個通用的信息交換媒介。語義全球信息網通過使用標準、置標語言和相關的處理工具來擴展全球信息網的能力。不過語義網概念實際上是基於很多現有技術的(某些技術甚至可以追溯到20世紀60年代末期), 也依賴於後來和text-and-markup與知識表現的綜合.
定義
"語義"網是由比現今成熟的網際搜尋工具更加行之有效的、更加廣泛意義的並且自動聚集和蒐集信息的文檔組成的。 其最基本的元素就是語義連結
通過下列方法可以提升全球資訊網以及其互連的資源的可用性(usability)和有效性(usefulness):
"標記"了語義信息的文檔。這可以是機器可以理解的關於文檔內容(例如文檔的作者,標題,簡介等)的描述, 或者是描述該網站所擁有的服務和資源.(注意:任何東西都是能被URI-
統一資源定位符-所描述的,因此語義網能理解人物、地方、想法、類別等等)
通用元數據辭彙表(本體論)及辭彙間的影射使得文檔案作者知道如何來標記文檔案方可讓機器識別他想提供的元數據.
利用元數據為語義網用戶執行任務的自動軟體代理(agent).
為自動軟體代理提供特定信息的網路服務 (例如, 可信度服務可以讓軟體代理查詢某個線上商店是否曾經有過不良紀錄或者傳送過垃圾郵件).
這方面的技術依靠下列的工具: URIs (以識別任何資源定位) 及 XML 及 名字空間. 這些技術,加點邏輯,能組成RDF,一種用於描述任何事物的
標記語言. 和RDF類似, 很多其它技術, 例如 概念圖 和 Web之前的
人工智慧 技術,例如知識庫和描述邏輯, 都有可能對語義網有貢獻.
目前的各種
全球資訊網技術都有可能被套用於語義網 (在語義環球網的意義上),
例如 :
DOM 文檔案對象模型, 一組訪問XML和HTML 文檔案組成部分的標準接口.
XPath、XLink、XPointer
XInclude XML fragment XML查詢語言 XHTML
XML Schema, RDF (Resource Description Framework)
XSL, XSLT Extensible Stylesheet Language
SVG (Scalable Vector Graphic)
SMIL
SOAP
DTD
元數據概念.
你可以使用Friend-of-a-Friend-o-matic 創建一小篇RDF代碼(FOAF)來在語義網中描述你自己
引言
隨著INTERNET 套用的普及和軟體技術的進步,基於Web 的網路計算模式或INTERNET計算模式得到了廣泛的重視和套用。目前, 面向Web 套用的
三層結構( 或多層結構)、
構件化的商務邏輯封裝、基於XML 和Web Services 的自動電子商務等理論和技術深入人心。而現有的這些Web 技術並不能真正解決人們期待已久的
智慧型搜尋引擎、智慧型信息代理、
智慧型交易代理等基於Web 的個性化、智慧型化的服務。這正是語義Web(Semantic Web) [9]要解決的問題。用本體來改進目前Web Services,使之成為語義Web 服務( Semantic Web Services)[5],正是目前國際上語義Web 研究中的共識。基於此,W3C,DARPA 等研究機制定了基於本體的, 套用於Web 的技術標準,如RDF[4]、
DAML 和OWL 等[1] [2 ]。
建立語言標準是實現Semantic Web 的重要基礎性工作, 但還需要在語言標準的研究之上建立支持這些標準的相應
支撐軟體,這一軟體是最終實現Semantic Web 的一個重要的基礎軟體[3] [6]。所以開發一種可以處理本體形式化表示、
存儲管理、分散式管理、甚至是推理機制的Semantic Web
支撐軟體成為發展Semantic Web Services 的重要一環。本文討論的就是這樣的可以套用於Semantic Web 的
支撐軟體。
本文第二部分對國內外現有
支撐軟體進行了比較詳盡的分析; 第三部分描述了本文提出的一個語義Web 的支撐軟體的體系結構;第四部分對這一支撐軟體中的各個功能的實現進行了說明; 最後給出針對本文中提出的方法需要進一步研究的內容。
語義Web 的支撐軟體現狀
基於Semantic Web 對於支撐軟體的需求, 很多科研機構和學校、公司在Semantic Web
和
DAML、RDF 的基礎上開展了自己的研究工作, 開發了許多工具和平台。
最早出現的是SiRPAC (Simple RDF Parser & Compiler), 它是一個由Stanford 大學開發
的RDF 的解釋器,被廣泛套用於許多SW1 項目。其功能還比較簡單,實際上只是一個 RDF
API, 本體存儲形式仍然是檔案系統, 不能充分發揮資料庫的事務管理、分布性以及便於查
詢的結構等特性。而隨後出現的OpenCyc、
Sesame、KAON、Jena 就顯得相對完善了, 但是
也都包含不足。
OpenCyc 是一個基於常識的,具有最完整知識庫的,世界上最大的邏輯推理引擎。現在
最新的版本是0.7Beta,已經可以支持Linux、Windows NT/2000/XP 等多種作業系統。OpenCyc
可以用於各種領域的智慧型推理軟體, 例如語音理解、資料庫集成、快速開發本體、郵件的優
先級、郵件路由、郵件摘要、郵件標註等。即將推出的OpenCyc1.0 將包括6000 條概念、60000
條斷言、Cyc
推理引擎、Cyc 基於知識的瀏覽器、CycL 規範(Cyc language, 用於開發Cyc
的語言)、CycL 到Lisp 以及C 語言的翻譯器等等。採用
開放原始碼的授權機制, 可從
sourceforge 下載。但是OpenCyc 也存在不足, 由於它所支持的CycL 並不是一種通用的標準
語言,這就使得它與標準化的本體表示的兼容性成為瓶頸。並且它使用C 語言開發,其代碼
的可重用性、可移植性和平台無關性就不如用純Java 語言的代碼好。
Sesame 是一個
開放原始碼的本體存儲與查詢系統,由Aidministrator 公司開發。它解決
(RDF Query Language)查詢語言,可以在資料庫中檢索需要的本體。
Sesame 雖然解決了本
體資料庫的存儲問題,但是它所實現的RQL 是對於整個本體數據進行的,當本體數據量達到
一定程度時, 其查詢效率就會成為整個系統的瓶頸。
KAON, 即“ The Karlsruhe Ontology and Semantic Web Infrastructure” 是德國Karlsruhe
大學的一個科研項目。致力於語義Web 提供所需的基礎本體系統和相關工具。它針對基於本
體的上層商業套用的需求提供了一個開放的本體管理
基礎軟體, 為本體的存儲、創建、標識
提供了一個全面的支撐平台。它目前的版本是1.2。
HP 實驗室的Jena 是一個以RDF API 為核心, 用於實現
語義網路( Sematic Web) 的工
具。Jena 由Network API、Query、Readers、Inference、Writers、Stores 幾部分圍繞RDF API
組成。它支持RDF 的創建、操作和查詢等功能。而RDF API 也能夠支持很多不同的數據存
儲技術。外掛程式式的接口設計能夠自動適應各種由不同的語言編寫的讀寫RDF 檔案的需要。推
理層、查詢功能以及網路API 建立在RDF API 之上。Jena 目前的版本是1.6.0,支持N3,可
以更快速的處理關係資料庫模型, 並且修正了一些錯誤。
KAON 和Jena 可以說是目前功能和結構較完善的Semantic Web 的支撐軟體, 它們都支
持本體資料庫的存取操作,支持RDF 標準,使用純Java 語言開發,有著良好的結構和性能。
但美中不足的是,它們不支持基於本體信息的邏輯推理,只能查詢當前資料庫中已有的信息。
我們知道對於一種本體
知識庫來說, 有些知識本身是隱含的, 需要進行推理才能得到, 這隻
有在已有的本體知識庫中運用基於知識的推理才能真的展示出本體知識的豐富性, 更好的發
揮本體知識的作用。
我們看到, 雖然圍繞語言標準已經推出了很多的支撐平台和軟體工具, 但分析其現有研
究狀況, 它們都普遍存在以下問題:
語言支持問題。從國內外發表的論文情況來看,目前這方面的主要研究成果暫時還是來自於國外, 現有平台並不支持中文。
Semantic Web 要使本體以一種高效的、穩定的機制存於資料庫中,並支持分散式的本
體訪問、存取與搜尋查詢。目前雖然在這方面已經有了比較多的研究,但是如何提高
本體存儲、訪問和搜尋的效率還有待於進一步的研究
[ 7 ]
。
分散式本體粒度問題與具體處理機制還有待於進一步的深入研究
[ 8 ]
。目前本體分布的粒度比較簡單,是本體的一個類。實際上,這種粒度太小,從效率等各方面看,可以
把多個關係密切的CLASS 看成是一個本體
構件,以本體構件為單位進行本體的分布,
提高對本體訪問和處理的效率。但本體構件以何標準劃分,這種劃分是靜態的還是動
態自適應的, 都是一個有待解決的、值得研究的理論問題。
將推理機制與本體
知識庫整合,實現一個直接運算元據庫中的基於本體推理系統,是
一個尚待研究的課題。
基於調研以上各種的Semantic Web 支撐軟體的現狀並分析他們的不足,我們開發了一個
面向web 的分散式本體系統—WODOS(Web Oriented Distributed Ontology System)。它本身
是一個語義Web 的支撐軟體,該軟體具有以下功能:支持中英文,可以將本體信息存於關係
型資料庫中, 做RDF 檔案的導入導出, 支持RQL 查詢, 第三方軟體可以通過OdoAPI 進行
操作。本支撐軟體還引入推理機制, 可以對存於WODOS 中的本體事實施以規則( 基於
F-Logic), 並在這些規則的基礎上進行推理。WODOD 建立了統一的用戶界面, 可以把對它
的各種操作( 如原有的RQL 查詢、RDF 檔案導入導出和新加入的F-Logic 操作等)集成在一
起。
表1 綜合說明了前面介紹的各種研究成果。從表中看出, 本文研究的
語義web 的支撐軟
件在支持本體的分布性、支持語言和推理機制方面要好於現有其他的支撐軟體。
WODOS 的結構
內容
通過分析目前其他Semantic Web
支撐軟體的功能和結構。我們把WODOS 系統的功能模
塊規劃成四個部分,這四個部分相輔相成,各自都有明確的功能。首先,這個系統要提供本
體信息的資料庫存儲機制, 這就需要本體資料庫的訪問操作模組, 我們定義為RCS; 其次,
作為支撐軟體,WODOS 是以
第三方軟體的形式提供給別人使用的, 這就需要定義一個對外
的接口個OdoAPI 查詢模組( 含RQL
解釋器), 整個接口模組我們定義為ACS; 再次, 處理本體需要很多的參數, 而且要調用系統的功能需要一個可視化的界面,我們將這一部分界面和管理功能模組定義為MCS;最後,為了實現基於本體的推理機制, 我們定義了以F-Logic 推理核心為核心的功能模組ICS。4.WODOS 的實現我們發現WODOS 雖然可以進行RQL(RDF Query Language) 查詢, 實現了在本體資料庫中比SQL 更高級的查詢模式, 但是僅僅依靠RQL 還存在著一些明顯的不足:
本體的局限性大
RQL 只能查詢本體資料庫中已有的本體知識,不能推理出隱含的本
體知識。而在實際套用中,發現隱含的本體知識也應該是本體資料庫的一個重要組成
部分。
查詢語句的可讀性差
RQL 語句雖在形式上和SQL 有一些相似之處, 但是由於其處理的對象是本體知識,而不是簡單的記錄,因此在語法上變得更為靈活和複雜。例如以下語句:
select P from subClassOf(Class[4]){P} where P in Class
可以查詢出一個類的所有子類。但是這種形式的語言與自然語言還有很大差距, 不容易
讓人很直觀的理解一個稍微複雜一些的RQL 語句。
通過分析上述不足, 我們迫切需要一種能夠基於本體進行真正的邏輯推理並且語句更接
近自然語言的新的查詢方法。經過調研, 我們發現F-Logic 語言表達邏輯推理比較合適。目
前支持F-Logic 的系統是SiLRI( Simple Logic-based RDF Interpreter)。
一個一般的F-Logic 描述由三個部分組成:事實、規則和查詢。在SiLRI 系統中,事實可
以用RDF 檔案或者F-Logic 自己定義的事實表示方法來描述; 規則和查詢都是用F-Logic 語
句來實現。比如用F-Logic 定義一個祖父關係的推理規則, 然後查找出所有的有祖父關係的
祖孫對, 就可以這樣來寫:
注意我們默認已經存在“ Father”本體關係,但是沒有“ Grandpa”本體關係。“ Grandpa”
本體關係是通過第一條規則語句用戶自己定義的, 即如果Y 是X 的“ Father”, Z 是Y 的
“ Father”,那么Z 是X 的“Grandpa”。然後通過第二條查詢語句查找出所有的有祖父關係的
祖孫對。很明顯,這樣定義的推理規則以及查詢語句恰到好處的解決了RQL 的兩個不足,即
可以推理出隱含的本體關係, 且語句更接近自然語言, 更為人性化。
在SiLRI 的調研基礎上,我們進一步完善了WODOS,加入了F-Logic 邏輯推理核心。目
前的WODOS 具備以下新特性:
本體推理機制
集成了SiLRI 的F-Logic 推理核心, 實現基於本體的推理機制。
數據源的多樣性
我們發現如果僅僅以RDF 檔案做為F-Logic 運算的數據源,那么就
不能利用上分散式本體資料庫的優勢,因此我們研究出了直接從分散式本體資料庫獲
本體粒度的細化
我們考慮到在實際套用的系統中,可能由於本體庫中會有各種不同
的本體,大量本體之間的聯繫不一定很緊密,如果在如此龐雜的各類本體中進行某種
邏輯推理,效率是一個問題。因此,我們繼續研究了本體庫的粒度問題,進而實現了
從本體資料庫中導出某一個或某些本體的功能。為了使使用更為靈活,更能表達語義
信息, 對於這個功能, 我們實現了用RQL 查詢語句直接查詢出相應的規則
作用域,
之後在此規則作用域上繼續進行F-Logic 的邏輯運算。這種功能的實現更能滿足實際
工程的需求。
WODOS 運行舉例
運行環境和問題描述
此系統可以運行於Windows、Linux 等各種作業系統, 支持Mysql 資料庫, 通過RDF
檔案描述本體信息, 並且將RDF 解析到本體資料庫中, 進而在此基礎上進行RQL 查
詢以及F-Logic 邏輯推理。下面的例子說明了這個過程。
此RDF 檔案描述了簡單的Father 和Mother 本體關係, 比如本體Robbie 是本體Ellen 的
Father, 本體Marilyn 是本體Ellen 的Mother 等。
使用的RQL 查詢語句
select X, Y from {X}Property[6]{Y}其中Property[6]就是Father 屬性( 說明:系統的固有的屬性有:type、domain、range、subClassOf 和subPropertyOf 等5 個, 因此Father 屬性是第6 個屬性, 相應的Mother屬性是第7 個屬性)。這條RQL 語句的含義就是查詢出所有的有Father 屬性關係的主語和賓語。 使用的F-Logic 查詢語句:FORALL X,Y,Z Grandpa(X,Z) <- X[">Y">規則FORALL grandson,grandpa <- Grandpa(grandson,grandpa).//查詢如同前面介紹的那樣,通過Father 屬性關係的傳遞性定義了Grandpa 屬性關係,並且查詢出所有的祖孫對。
查詢結果
分三個部分:1. RQL 語句的查詢結果:RQL Query 本例小結:在這個例子中, 說明了WODOS 將RDF 本體信息導入本體資料庫, 執行RQL 語句,執行F-Logic 語句, 以及RQL 和F-Logic 的綜合查詢等功能。6. 結論和下一步工作通過上述分析和討論, 我們發現雖然目前存在著各種各樣的語義Web 的支撐軟體, 但是功能並不是十分完善, 有的不支持資料庫操作, 有的操作界面還是字元形式, 有的還停留在使用C 語言開發( 不如java 有更好的可擴展性和移植性), 大多數不支持基於本體的邏輯運算。我們則從中吸取了經驗, 使用純java 開發, 支持資料庫的本體信息存取, 使用F-Logic語言作為本體的邏輯推理核心,在同一個綜合界面上實現了RQL 和F-Logic 功能的集成,可以先使用RQL 查出相應本體, 再運用F-Logic 進行基於規則的邏輯推理。當然, 我們的WODOS 系統也在逐步的成熟階段, 還有相當的工作要做: 制定用RDF 表示F-Logic 規則的規範。將目前的本體資料庫發展成本體規則資料庫,使得資料庫中不僅保存本體信息,並且也保存相應的規則,提供更為簡潔的推理機制。 支持XML 資料庫以及面向對象的資料庫也是比較重要的發展方向。由於處理的對象是本體信息, 並且本體信息一般用RDF 檔案的形式表示, 而RDF 本身就是XML 的擴展, 因此進一步研究XML 資料庫以及面向對象的資料庫對於本體信息的存取, 可以更好的保存語義信息, 提供更高的性能。References:1. XU Jian-Jun et al, “The Intelligent Web Services Based on the Ontology”,Computer Science,2002,29(12):92-942. James Hendler. “Agents and the Semantic Web” IEEE Intelligent Systems March/April2001: 30-373. Jeff Heflin and James Hendler. “A Portrait of the Semantic Web in Action” IEEEIntelligent Systems March/April 2001: 54-594. Michel Klein. “XML, RDF and Relatives” IEEE Intelligent Systems March/April 2001:26-285. Sheila A. McIlraith, Tran Cao Son and Honglei Zeng. “Semantic Web Service” IEEEIntelligent Systems March/April 2001: 46-536. Deborah L. McGuinness, Richard Fikes, James Rice, and Steve Wilder. “The ChimaeraOntology Environment” Proceedings of the Seventeenth National Conference on ArtificialIntelligence (AAAI 2000). Austin, Texas. July 30-August 3, 20007. Deborah L. McGuinness. “Conceptual Modeling for Distributed Ontology Environments”Proceedings of the Eighth International Conference on Conceptual Structure Logical,Linguistic, and Computational Issues(ICCS 2000), Darmstadt, Germany, August 14-18, 2000.8. McGuinness, D.L., Fikes, R., Rice, J. and Wilder, S. “An Environment for Merging andTesting Large Ontologies,” Principles of Knowledge Representation and Reasoning:Proceedings of the Seventh International Conference(KR 2000). A.G.Cohn, F.Giunchiglia andB.Selman, editors. San Francisco, CA, Morgan Kaufmann Publishers.9. Tim Berners-Lee, James Hendler and Ora Lassila. “ The Semantic Web”, SCIENTIFICAMERICAN, May, 2001: 34-43附中文參考文獻:1. 徐劍軍等,“ 基於本體的智慧型Web 服務” ,計算機科學,2002,第29 卷第12 期:92-94