Ⅰ 語義web的體系結構
下圖描述了語義Web的七層體系結構: 自描述
文檔 數據 數據 規則 信任 證明 數
字
簽
名 邏輯 本體 RDF+RDF Schema XML+NS+XML Schema 名稱空間 Unicode URI 第一層:Unicode和URI。
Unicode是一個字元集,這個字元集中所有字元都用兩個位元組表示,可以表示65536個字元,基本上包括了世界上所有語言的字元。數據格式採用Unicode的好處就是它支持世界上所有主要語言的混合,並且可以同時進行檢索。URI(Uniform ResourceIdentifier),即統一資源定位符,用於唯一標識網路上的一個概念或資源。在語義Web體系結構中,該層是整個語義Web的基礎,其中Unicode負責處理資源的編碼,URI負責資源的標識。
第二層:XML+NS+xmlschema。
XML是一個精簡的標准通用標記語言,它綜合了標准通用標記語言的豐富功能與HTML的易用性,它允許用戶在文檔中加入任意的結構,而無需說明這些結構的含意。NS(NameSpace)即命名空間,由URI索引確定,目的是為了避免不同的應用使用同樣的字元描述不同的事物。XML Schema是文檔類型定義(外語縮寫:DTD)的替代品,它本身採用XML語法,但比DTD更加靈活,提供更多的數據類型,能更好地為有效的XML文檔服務並提供數據校驗機制。正是由於XML靈活的結構性、由URI索引的NS而帶來的數據可確定性以及XMLSchema所提供的多種數據類型及檢驗機制,使其成為語義Web體系結構的重要組成部分。該層負責從語法上表示數據的內容和結構,通過使用標準的語言將網路信息的表現形式、數據結構和內容分離。
第三層:RDF+rdfschema。
資源描述框架(外語縮寫:RDF)是一種描述WWW上的信息資源的一種語言,其目標是建立一種供多種元數據標准共存的框架。該框架能充分利用各種元數據的優勢,進行基於Web的數據交換和再利用。RDF解決的是如何採用XML標准語法無二義性地描述資源對象的問題,使得所描述的資源的元數據信息成為機器可理解的信息。如果把XML看作為一種標准化的元數據語法規范的話,那麼RDF就可以看作為一種標准化的元數據語義描述規范。Rdfschema使用一種機器可以理解的體系來定義描述資源的詞彙,其目的是提供詞彙嵌入的機制或框架,在該框架下多種詞彙可以集成在一起實現對Web資源的描述。
第四層:「本體詞彙」(Ontology vocabulary)。
該層是在RDF(S)基礎上定義的概念及其關系的抽象描述,用於描述應用領域的知識,描述各類資源及資源之間的關系,實現對詞彙表的擴展。在這一層,用戶不僅可以定義概念而且可以定義概念之間豐富的關系。
第五至七層:Logic、Proof、Trust。
Logic負責提供公理和推理規則,而Logic一旦建立,便可以通過邏輯推理對資源、資源之間的關系以及推理結果進行驗證,證明其有效性。通過Proof交換以及數字簽名,建立一定的信任關系,從而證明語義Web輸出的可靠性以及其是否符合用戶的要求。
Ⅱ web前端學習路線
您好,web前端的學習路線分為以下8個階段:
階段1.前端核心基礎
HTML +_CSS核心、JavaScript基礎語法、JavaScript面向對象、JavaScript DOM和BOM編程、jQuery框架
階段2.HTML5 + CSS3 + 移動端核心
HTML5新特性、Canvas專列、CSS3新特性、CSS3進階、CSS3實例演練
階段3.移動端
移動端核心、移動端適配、移動端特效
階段4.伺服器端
伺服器端開發、資料庫操作、前後端交互核心、微信公眾號開發
階段5.JavaScript高級
JavaScript基礎深入剖析、JavaScript面向對象深入講解、JavaScript非同步編程、JavaScript函數式編程、JavaScript設計模式
階段6.前端必備
性能優化、版本控制工具、模塊化、項目構建工具
階段7.高級框架
React框架基本使用、React框架進階、Vue框架基本使用、Vue框架進階、Vue源碼分析
階段8.小程序
原生小程序入門、原生小程序API使用、小程序框架Mpvue
希望對您有幫助。
Ⅲ owl的中文意思是什麼
OWL(Web Ontology Language)是W3C開發的網路本體語言,用於對本體進行語義描述。
Ⅳ 求問什麼是本體(Ontology)轉載
Ontology也稱為本體,它最初是一個哲學范疇,後來隨著人工智慧的發展,被人工智慧界賦予了新的定義。而在Web飛速發展的今天,Ontology的發展已由哲學、人工智慧領域延伸到了圖書館學、情報學等其他各個領域,並受到專家和學者的關注。
Ontology在不同的領域有不同的定義,關注的焦點也不同:
人工智慧領域:認為本體是一種知識的人工引擎。但本體究竟是什麼仍是爭論中的一個話題。美國Stanford大學的知識系統實驗室(Knowledge System Laboratory)的學者Tom Gruber在1993年提出了第一個被廣泛接受的定義:本體是概念化的顯式的表示。之後Studer在Gruber的基礎上於1998年擴展了本體的概念,即本體是共享概念模型的明確形式化規范說明。顯然後一個定義更能夠說明什麼是本體。
這個定義的具體含義如下:
概念化:將客觀世界中的一些現象抽象出來得到的模型。它是客觀世界的抽象和簡化。
明確:即顯式地定義所使用的概念以及概念的約束。形式化:即精確的數學表述,能夠為計算機讀取。
共享:本體描述的概念應該是某個領域公認的概念集。
Ontology的種類
在介紹本體描述語言之前,我們先來看一下本體的種類。
Guarino提出了從詳細程度與領域依賴度兩個方面對Ontology進行劃分。詳細程度是一個相對的、比較模糊的概念,指描述或刻畫建模對象的程度。詳細程度高的稱作參考(reference)Ontologies,詳細程度低的稱為共享(share)Ontologies。依照領域依賴程度,可以細分為頂層Ontology、領域Ontology、任務Ontology和應用Ontology四類。
頂層Ontologies描述的是最普遍的概念及概念之間的關系,如空間、時間、事件、行為等等,與具體的應用無關,其他種類的Ontologies都是該類Ontologies的特例;
領域Ontologies描述的是某個特定領域(如醫葯、地理等)中的概念及概念之間的關系;任務Ontologies描述的是特定任務或行為中的概念及概念之間的關系;
應用Ontologies描述的是依賴於特定領域和任務的概念及概念之間的關系
Ontology的用途
Ontology是共享概念的顯示表述。它關注概念之間的內在的語義聯系,一般具有交流、互用性、軟體工程等三類用途。
交流是指人與人、組織與組織、以及人與組織之間的溝通。Ontology可以提供一組共同的詞彙和概念,從而實現交流。在交流活動中,Ontology是一個標准化模型,任何大規模集成軟體系統內,各種各樣、背景不同的人必須對系統及其目標有一種共同的認識,因此必須建立起標准化模型,否則無法進行溝通;Ontology對軟體系統中所用的術語所提供的明確定義,對於同一個事物在系統中有完全一致的認識,而且這種認識也是確定的;通過Ontology可以集成不同用戶的不同觀點,以形成更加全面完整的看法。
互用性是指系統間協同工作的能力。Ontology可以在完全不同的建模方法、範例、語言及軟體工具之間進行翻譯和轉換,從而實現不同系統之間的相互操作和集成。
Ontology在軟體工程方面的作用是從軟體系統的設計和開發方面進行考慮的。Ontology可以在可重用性、可靠性、規格說明等方面在軟體工程中發揮作用。
從Ontology的這些用途來看,Ontology可用於許多領域,如人工智慧、知識工程、知識管理、語義檢索、信息檢索和提取、企業集成、自然語言翻譯等各種信息系統。目前在上述領域中,對Ontology的應用探索開展得如火如荼。
Ⅳ 服務層次的語義描述
服務描述就是對服務的相關信息進行描述,WSDL 並不能很好地表達 Web Service 的語義信息,無法解釋其中的標識所表達的語義。而本體具有概念化,明確化,形式化和共享的特點,並且具有的良好的概念層次結構和對邏輯推理的支持能力,因此本節在上一章提出的基於本體的語義網路地理信息服務架構的基礎上,採用本體對網路地理信息服務進行標注,實現對服務的語義化描述。
5.4.2.1 地理信息服務的語義標注對象
信息資源和本體之間的關系可以通過一個稱為 「標注」的過程得以實現(Lemmens,2006)。這個過程可以看做是信息資源的元數據信息的創建,只不過使用的是本體作為參考框架。因此服務的語義化描述,可以通過在一個良好的框架下,使用合適的方法對其進行標注得以實現。這個框架和方法取決於被標注資源的特性。本節首先介紹了一般服務所具有的一些特徵,以及現有的服務語義模型和方法,並在此基礎上著重分析地理空間信息網路服務可能存在的語義方面及適合於它的語義描述模型和方法。
地理空間語義可以傳遞地理空間數據、實體、現象、功能、關系、流程、服務等許多方面的內容,它涵括的范圍可以非常廣泛(樂鵬,2007)。本研究主要關注於網路地理信息服務的語義描述,從而能夠有助於動態和自動的組合異構數據和不同類型的服務來解決實際地理應用問題。因此,為了建立地理空間信息網路服務語義,首先要理解網路服務的語義。
圖 5.20 基於本體的網路服務描述(Su et al.,2003)
Su 等(2003)提出的一種基於本體的全面的服務描述模型。從圖 5.20 中可以看見,服務的許多特徵可以描述和語義標注。為了使得這些特徵之間的關系更加清晰,Sheth(2003)把他們劃分為如下四類。
(1)數據或信息語義: 數據語義形式化的標明了網路服務輸入輸出數據的語義。所有的服務都有一系列的輸入和輸出,服務交互時它們相互銜接就構成了消息流。這些語義信息在服務的發現和互操作上發揮重要作用。然而現有的 WSDL 只能提供數據語法和結構上的細節,這些細節僅僅能夠被程序級的遠程介面調用。為了智能化的發現服務,必須賦予輸入輸出數據以定義良好的語義信息。可以通過引用以形式化、顯式化的本體語言建立的本體概念對這些輸入輸出數據進行標注,實現對他們的語義化描述。
(2)功能或操作語義: 操作語義形式化的標明了網路服務功能的語義。這些語義在服務發現和聚合的時候起關鍵作用。Web 服務期望滿足服務請求者需求的服務被發現。但是目前通常用的基於輸入輸出的匹配並不一定能找到滿足功能需求的合適的服務。輸入輸出的匹配是必要的,但不是充分的。因為,具有相同輸入輸出的兩個服務很有可能具有完全不同的功能。比如柵格數據相加分析和柵格數據相減分析,它們輸入都是柵格數據,輸出數據類型也都是柵格數據。但是他們卻代表完全不同的任務。因此,僅僅依靠輸入輸出的數據語義表示並不能充分描述服務的功能,它只是部分實現了功能語義。必須考慮介面語義以及功能實際的效用語義才能更好地得意表達。這可以通過對服務的操作的介面參數,前提條件(precondition),後效(effect)等用本體進行標注實現。
(3)執行語義: 顯式化地表達服務操作的執行的要求以及執行過程中的信息流和行為流。他們可以用來分析和驗證處理過程以及異常處理。這些可以通過狀態圖,Petri 網,或者活動圖來實現。
(4)質量語義(Quality of Service,簡稱 QoS): QoS 語義提供了選擇服務的質量標准,形式化描述了服務的操作度量。通常我們會得到不止一個匹配的服務,那麼下一個步驟就應該是選擇最合適的服務。每個服務都有自己的質量屬性,而服務選擇是服務組合非常關鍵的步驟,因此需要服務語義具有質量語義信息以輔助進行服務選擇。這些可以通過 QoS模型來實現。
地理空間信息服務作為一種特殊的網路服務,它在這些方面的語義信息比一般網路服務要復雜得多。這是由於地理信息服務所處理地理數據具有海量、高維、非結構化、復雜的特徵造成的。地理信息服務的輸入輸出通常是一個數據量達百兆的非結構化的遙感影像,而不僅僅是像普通服務那樣只是一個字元串。地理信息服務的處理模型也可能涉及多方面的子模型,並且可能是高數據和計算密集型的。這些都使得地理信息服務的語義化標注更加復雜。而由前面的論述可知,海洋數據是地理信息中特殊的一類,具有更加豐富的特性。這使得海洋信息服務的語義化描述更富有挑戰性。
通常來講,全面的找出現實世界對象的所有特徵屬性非常難,基本上不可能通過屬性定義語義的最主要的一個任務就是確定所要選的屬性。考慮到本研究中的主要任務是實現地理信息服務的發現和組合; 此外,服務的質量方面的語義特性不明顯,更像是一種元數據; 因此本研究中不考慮服務質量的語義。
鑒於 OGC 的服務領域的規范已經被越來越多的組織和個人所接受,已成為行業標准。它們都有明確、標準的開放介面,對它們的調用執行也比較明確,因此我們主要關注於滿足 OGC 標准規范的下三類最常用的服務,並從數據/信息方面,功能方面、介面方面對這些服務進行語義標注。對這種服務的描述不應該從服務本身的操作介面來描述,而應該從其實際底層支持的數據或功能的語義來描述。
(1)數據服務: 比如 WFS,WCS。這些服務使得用戶通過 Internet 獲取遠程的地理數據成為可能。對於這類服務,沒有必要描述它的內部結構與流程。而只關注其最終提供的數據是什麼數據,被抽象成什麼模式。因此對這種類型的服務只需從所提供的數據的語義來進行描述,主要包含幾個方面來描述: ①專題類型,表示服務是什麼數據。②地理形態: 表明地理數據被抽象成什麼空間形態。③數據模式: 主要表達數據被抽象成什麼數據模型。④數據的時空尺度。通常數據的專題類型和時空尺度是常用的。
(2)地理學處理模型服務: 比如 WPS。它可以使用戶通過 Internent 訪問遠程的處理功能成為可能。對這類服務的語義描述可以從以下幾個方面來刻畫: ①地學處理模型的分類; ②地學處理的輸入輸出; ③服務操作的內部結構與流程; ④服務的前提及後效。對這類數據服務的功能分類和內部結構與流程是最關鍵的。
(3)可視化服務: 比如 WMS。通常用來提供可視化的地圖,為用戶提供定位功能。這類服務同數據服務很相似,唯一不同的是,數據服務可以獲取實際的數據,而這類服務只能獲取這些數據的可視化展示結果。因此對這類服務的語義描述,可以參考數據服務的語義描述,主要從以下三個方面來進行。①專題(可能具有多專題)。②時空尺度。③數據模式。同樣,對這類服務,也沒有必要描述其功能介面、內部結構與內部流程方面的語義。
5.4.2.2 海洋地理信息服務語義標注方法
原則上,對於任何能為網路服務提供語義的語義描述語言都能夠用於描述地理信息服務。但是由於不同的描述語言具有各自的特色和側重點,因此也各有適用面。
當前關於語義網路服務有一些不同的技術方案存在,各有不同的側重點。關於服務的語義描述目前已經有很多研究工作,比如已經提交到 W3C 的有: OWL-S(W3C,2004)、網路服務建模語言(Web Service Modelling Language,WSML)(W3C,2005)、網路服務本體建模(Web Servie Modelling Ontology,簡稱 WSMO)(W3C,2005),網路服務語義描述語言(Web Service Descrpition Language Semantic,簡稱 WSDL-S)(W3C,2005)以及網路服務描述語言的語義標注(Semantic Annotations for Web Service Description Language,簡稱 SAWSDL)(W3C,2007)。
Hassina Nacer Talantikite 等(2009)從以下六個方面對這些本體語言進行了一個綜合性的比較(表 5.1)。
表 5.1 網路服務語義描述方法對比
(1)資源: 語義描述對應的資源(XML Schema,WSDL,UDDI 等)。
(2)屬性: 文檔中所能描述的屬性。功能性如(輸入、輸出)或非功能屬性如實施方法等。
(3)語言: 指語義模型的表達語言。比如 OWL,WSML 等。
(4)標注: 指標注存儲於文檔內(內部方式)還是獨立於文檔本身(外部方式)。
(5)模型: 指語義參考的領域模型是內部的還是外部定義的。
(6)匹配: 指匹配演算法的類型和對應的一些屬性。
通過對比可知,WSMO 邏輯表達不局限於描述邏輯,因此它們沒有像 OWL-S 那樣建立在 W3C 推薦的標准 OWL 的基礎上。WSDL-S 和 SAWSDL 側重於對 WSDL 元素進行擴展,而沒有提供一個描述服務的完整本體框架。許多已有的工作使用了 OWL-S,而且已經有不少軟體工具支持 OWL-S,OWL-S 因此成為了很多研究者的首選。
5.4.2.2.1 OWL-S 適用性分析
OWL-S 是基於 OWL 語言的語義 Web 服務的本體描述框架。OWL-S 定義了一組核心語言構件,用於對 Web 服務進行邏輯化描述,所生成的描述文件支持機器理解,從而支持代理程序基於邏輯語義實現對 Web 服務的自動發現、調用、組合及監控。
OWL-S 預先定義了一組用來描述服務的頂層本體(Ontology),通過這些本體讓機器能夠理解 Web 服務。如圖 5.21 所示,OWL-S 的本體由三部分組成: ServiceProfile、Ser-viceModel 和 ServiceGrounding。它們都是關於服務的最本質的描述,分別描述了服務的作用,服務如何工作,以及如何訪問服務。
圖 5.21 OWL-S 的頂層服務本體模型
Service 類是語義描述的 Web 服務的引用點,其實例將對應一個發布的服務。通過屬性 pres-ents、 describedBy 和 supports 與 ServiceProfile、ServiceModel 和 ServiceGrounding 相關聯。這三個類的實例從三個不同角度對 Web 服務進行描述,根據所描述的服務的不同,其內容可能大不相同,但都描述了一個 Web 服務的重要內容。
(1)ServiceProfile: 主要描述服務做了什麼,對於 Web 服務而言,相當於服務的廣告,描述服務的能力; 對於用戶而言,是用戶需求服務的描述。OWL-S 提供了服務的一個可能的表達 Profile 類(圖 5.22 )。Profile 為服務添加三種類型信息: 服務的提供者,服務提供的功能,服務的特徵屬性。提供者信息包括服務該提供者的聯系信息; 服務的功能描述包括: 服務的輸入、輸出; 服務執行的前置條件以及服務執行產生的預期效果; 服務特徵屬性包括: 服務所屬的種類; 服務的質量評價; 一個不限長度的服務參數列表,可以包含任何類型的信息,如: 服務的最大響應時間,服務的領域特性等其他屬性。
(2)ServiceModel: 描述服務如何工作,即描述服務在執行時是如何運作的。一個服務(Service)被視為一個過程(Process)。OWL-S 定義了 ServiceModel 的一個子類———ProcessModel。過程本體(Process)又分為 3 種,分別是: 原子過程(Atomic Process),簡單過程(Simple Process)以及組合過程(Composite Process)(圖 5.23)。過程本體(Process)通過輸入、輸出、前提條件、效果來描述過程。其中輸入、輸出屬性取值可以為任何事物。而在特定領域中,過程類的子類可以用 OWL 語言元素來聲明值域限制,包括這些屬性的取值個數限制。原子過程是不可分解的 Web 服務,能夠被直接調用,且可以單步執行。Web 服務被調用後,響應用戶調用後立即結束,不需要調用它的用戶或Web 服務與之建立會話過程。
圖 5.22 Profile 類的相關屬性(部分)
圖 5.23 Process 類的相關屬性
(3)ServiceGrounding: 指明了訪問一個 Web 服務的細節。通常包括消息格式、通信協議以及其他如埠號等和服務相關的細節。還指定對於在 ServiceModel 中說明的抽象類型,在進行信息交換時的數據元素的明確的表達方式。原子過程被認為是基本的過程的抽象描述。OWL-S 的 ServiceGrounding 最主要的功能就是描述原子過程的輸入、輸出是怎樣被具體實現為消息的。
從上面的分析可見,雖然 OWL-S 提供了一個比較全面的通用的服務語義描述框架,但是 OWL-S 針對地理空間信息服務,尤其是海洋領域,存在一定的缺陷,主要表現在:
(1)OWL-S 是高層本體模型,並不提供任何領域本體。領域本體的建立必須靠領域內的團體自己去完成。然而 OWL-S 作為一種通用性質的框架,不可能對具體的行業領域的特性進行特殊的考慮,因此在地理空間信息服務這種復雜的服務的語義描述上不夠。
(2)OWL-S 對服務的標注的最小單位是服務介面下的各種實際的操作方法。比如對於一個網路服務,其可能支持好幾個操作方法,OWL-S 提供了對這些方法的語義描述。而對於 OGC 這種標准化介面的服務,這種服務語義建模方法顯然不適用。因為 OGC 服務的方法和其相應的介面參數都是已知的、已標准化的。如圖 5.24 為 WPS 服務所支持的操作列表,從圖中可知 OGC 標准規范的 WPS 服務具有哪些方法,並且各方法的含義也是已知的,比如 「Excute」方法為執行某項功能。如圖 5.25 為 「Excute」方法的參數列表。從圖中可知該方法的各個參數類型和結構。但是該方法底層所支持的實際功能以及功能的各參數的實際意義卻被這些參數給屏蔽了。因此 OGC 服務本身開放的那些操作方法的語義標注與描述意義不大。這就好比當我們按照 OGC 的 WFS 服務介面標准實現了網路要素數據服務,我們就沒必要再像其他普通的網路服務那樣提供一個 WSDL 文件,來對服務進行描述一些樣。因為這個服務的介面已經是眾所周知的。所以關於這類服務的描述重點不在於這個介面,而在於這些介面方法背後所提供的數據或功能服務。但是 OWL-S 卻沒法對這些服務後台所支持的實際的數據或者方法做相應的語義描述。
圖 5.24 WPS 的介面
(3)由於在知識庫中已經把數據以及模型顯式化的用 OWL 的方式表達出來,對於服務尤其是 OGC 標準的服務來講,語義標注已經不必太復雜。對於數據服務來講只需從上述論述的八方面對服務輸出的數據進行標注即可,對於功能服務則更簡單,只需簡單的引用模型庫中的模型本體的概念對服務的模型屬性進行標注。
(4)OWL-S 中存在 ServiceProfile 和 ServiceModel 對參數描述方面存在重復。OWL-S中將服務的語義和語法混合起來,使得邏輯不清晰。服務的語義描述和服務的語法介面描述(WSDL)沒有必要放在一起。而且對於 OGC 標准化介面服務,其調用調用執行也比較明確,沒有必要對其綁定等信息進行描述,因此 OWL-S 中的 ServiceGrounding 對於 OGC標准服務來說不是很必要。
圖 5.25 WPS 的 Excute 方法的參數對照表(部分
(5)OWL-S 中的思路是對每個服務都進行語義建模,相當於對服務的建模到了實例級別。但是事實上這種是沒必要的。因為我們只需要定義到模型級別就可以了。OWL-S 中每個服務都要重復的(盡管也可以重用已 經建立 的 模 型)進 行 定義 profile,process,ground,使得效率很 低。而本 研究 采 用的 策 略 是, 只 對 模 型級 別 進 行 建 模,不對服務實例建模。服務的語義描述,僅需簡單的引用已經建立的模型本體概念,來實現對它的語義表達。而且這中語義信息通常可以用資料庫表的形式進行組織。
(6)OWL-S 中服務的模型介面參數的類型定義是參考相應的本體,而這個本體是屬於類級別,代表屬於某個類。但是這種以一個簡單的類來區別參數的方法只能適用於簡單的數據類型,比如售票服務中的航次信息,而地理信息服務的參數是復雜的,不能通過簡簡單單的本體類來區別。前面已經論述了地理數據的語義可以從八方面的來進行描述,顯然 OWL-S 這種表達方式適應不了。
(7)現有的很多基於 OWL-S 的服務檢索方法,都是基於 OWL 格式文件進行匹配,其檢索效率和基於資料庫存儲的方式顯然不言而喻。
5.4.2.2.2 基於 OWL 的服務語義標注
本研究中服務語義標注的主要目的是進行服務的發現和集成,主要考慮服務的數據語義和功能語義,暫不考慮服務的質量語義及執行過程中的一些語義。此外服務語義標注的目標范圍設定在滿足 OGC 標準的地理空間信息服務。在這些前提下,當基於語義的服務發現後,服務的調用執行則可以通過已知的標准化介面獲取其實際的操作和所需的參數,進行相應的調用執行。
通過上一節分析可以看出,目前一些服務語義描述語言(包括 OWL - S)在面對海洋信息服務方面都存在一定缺陷。為此本研究採用了一種知識庫的建立和服務語義標注分離的策略,並基於 OWL 對服務進行語義描述。
在建立海洋知識庫基礎上,海洋信息服務的描述相對比較簡單。對於數據服務,只需從 5.4.1 中闡述的數據的八個方面,用知識庫中相應的本體概念對這八個方面進行標注即可(圖 5.26)表達; 對於功能服務,則更為簡單,只需簡單對服務的模型語義屬性標記為模型庫中對應的模型即可(圖 5.27)。表 5.2 以及表 5.3 是數據服務和功能服務對應的語義描述示例。
表 5.2 WCS 數據服務的語義標注示例
表 5.3 功能服務的語義標注示例
圖 5.26 數據服務的語義標注
圖 5.27 功能服務的語義標注
通過這種將數據類型、抽象模型等領域知識庫的語義建模與服務本身的語義標注分離,具有這樣一些優勢: ①邏輯清晰,維護容易。領域知識庫由領域專家建立,而服務的語義標注則可以由很普通的服務提供者(是非專家用戶)完成。②服務的語義標注非常簡單,只需簡單地對服務的各需標注的元素引用已經建立的一些本體概念進行標注。③重用度高,同類型的服務不必經過繁瑣的過程,只需簡單引用同一個抽象模型即可。
Ⅵ 本體論的其他領域
本體論(ontology)是哲學概念,它是研究存在的本質的哲學問題。近幾十年裡,這個詞被應用到計算機界,並在人工智慧、計算機語言以及資料庫理論中起到越來越重要的作用。
然而,到目前為止,對於本體論,還沒有統一的定義和固定的應用領域。斯坦福大學的Gruber給出的定義得到了許多同行的認可,即本體論是對概念化的精確描述(Gruber,1995),本體論用於描述事物的本質。
在實現上,本體論是概念化的詳細說明,一個ontology往往就是一個正式的詞彙表,其核心作用就在於定義某一領域或領域內的專業詞彙以及他們之間的關系。這一系列的基本概念如同工程一座大廈的基石,為交流各方提供了一個統一的認識。在這一系列概念的支持下,知識的搜索、積累和共享的效率將大大提高,真正意義上的知識重用和共享也成為可能。就此意義而言,Web語言XML(Extensible Markup Language,可擴展標識語言)就是本體理論的一項典型應用;.xml文檔就是一個標簽化的詞彙表。
本體論可以分為四種類型:領域、通用、應用和表示。領域本體包含著特定類型領域(如電子、機械、醫葯、教學)等的相關知識,或者是某個學科、某門課程中的相關知識;通用本體則覆蓋了若干個領域,通常也稱為核心本體;應用本體包含特定領域建模所需的全部知識;表示本體不只局限於某個特定的領域,還提供了用於描述事物的實體,如「框架本體」,其中定義了框架、槽的概念。
可見,本體論的建立具有一定的層次性,在教學領域而言,如果說某門課程中的概念、術語及其關系看成是特定的應用本體,那麼所有課程中的共同的概念和特徵則具有一定的通用性。
Ontology 這個哲學范疇,被人工智慧界賦予了新的定義,從而被引入信息科學中。然而信息科學界對 Ontology 的理解也是逐步發展才走向成熟的。1991 年 Neches 等人最早給出 Ontology 在信息科學中的定義:「給出構成相關領域詞彙的基本術語和關系,以及利用這些術語和關系構成的規定這些詞彙外延規則的定義。」後來在信息系統、知識系統等領域,隨著越來越多的人研究 Ontology,產生了不同的定義。1993 年 Gruber 定義 Ontology 為「概念模型的明確的規范說明」。1997 年 Borst 進一步完善為「共享概念模型的形式化規范說明」。Studer 等人對上述兩個定義進行了深入研究,認為 Ontology 是共享概念模型的明確的形式化規范說明,這也是目前對 Ontology 概念的統一看法。
Studer 等人的 Ontology 定義包含四層含義:概念模型(Conceptualization)、明確(Explicit)、形式化(Formal)和共享(Share)。「概念模型」是指通過抽象出客觀世界中一些現象(Phenomenon)的相關概念而得到的模型,其表示的含義獨立於具體的環境狀態;「明確」是指所使用的概念及使用這些概念的約束都有明確的定義;「形式化」是指 Ontology 是計算機可讀的,也就是計算機可處理的;「共享」是指 Ontology 中體現的是共同認可的知識,反映的是相關領域中公認的概念集,它所針對的是團體而非個體。Ontology 的目標是捕獲相關領域的知識,提供對該領域知識的共同理解,確定該領域內共同認可的詞彙,並從不同層次的形式化模式上給出這些詞彙(術語)和詞彙之間相互關系的明確定義。
盡管定義有很多不同的方式,但是從內涵上來看,不同研究者對於 Ontology 的認識是統一的,都把它當作是領域(領域的范圍可以是特定應用中,也可以是更廣的范圍。)內部不同主體(人、機器、軟體系統等)之間進行交流(對話、互操作、共享等)的一種語義基礎,即由 Ontology 提供一種共識。而且Ontology提供的這種共識更主要的是為機器服務,機器並不能像人類一樣理解自然語言中表達的語義,目前的計算機也只能把文本看成字元串進行處理。因此,在計算機領域討論 Ontology,就要討論如何表達共識,也就是概念的形式化問題。
Semantic Web 中的 Ontology?
Ontology 研究熱點的出現還與 Semantic Web 的提出和發展直接相關。
Semantic Web是Tim Berners-Lee提出的又一個概念。Tim Berners-Lee 認為,當前的 Web 是供人閱讀和理解的,它作為一個越來越大的文件媒體,並不利於實現數據和信息的自動化處理。新一代的 Semantic Web 將不僅僅為人類而且能為計算機(信息代理)帶來語義內容,使計算機(或信息代理)能夠「理解」Web 內容,進而實現信息處理的自動化。他認為 Semantic Web 不是與當前 Web 隔離的另一個 Web,而是對當前 Web 的擴充,在 Semantic Web 中,信息的語義經過完好的定義,能夠更好地促進計算機和人之間的相互合作。?
為了實現 Semantic Web 的功能,需要提供一種計算機能夠理解的、結構化的語義描述機制,以及一系列的推理規則以實現自動化推理。Semantic Web 的挑戰在於提供一種語言,
它能夠表述數據和在數據中進行推理的規則,而且需要這種語言能夠將目前存在於知識表述系統之中的規則能夠被應用到 Web 上。
在Tim Berners-Lee的Semantic Web 框架中,有幾個關鍵的組成元素。它們分別是XML,RDF(S)和 Ontology。
XML 允許用戶定義自己的文件類型,允許用戶定義任意復雜的信息結構,但是 XML 只具有語法性,它不能說明所定義的結構的語義。XML 之所以在 Semantic Web 中處於重要的地位與 XML 是一種載體語言、XML 命名機制等有很大的關系。
在 Tim Berners-Lee 看來,語義的描述是通過 RDF 進行的。RDF 的兩個特性對此有著特殊的貢獻:
(1)RDF 是一種由資源、屬性、屬性值組成的三元結構。這種三元結構形似句子中的主語、謂語、賓語之間的關系。一個描述資源的 RDF 語句,就如同「某件事具有什麼樣的屬性」這樣的句子一樣有效。它能夠表明一種對事物存在狀態的斷言,可以表述大多數情況下計算機需要處理的知識。
(2)RDF 的另一個重要特點就是組成 RDF 的資源、屬性、屬性值這三個元素都必須是被 URI(統一資源標識)所標識的。由於 RDF 利用 URI 來對信息進行編碼,它意味著被 RDF 所引用的任何資源、屬性和屬性值都是經過預先定義的、不具二意性的概念。?
由於 RDF 能夠表示陳述句,並且主語、謂語和賓語的三個組成元素都是通過URI所標識的,故它具有語義表述的特性。但 Semantic Web 的要求還遠不止於此,Semantic Web還需要加入邏輯功能:Semantic Web需要能夠利用規則進行推理、選擇行動路線和回答相關問題。Ontology是Semantic Web實現邏輯推理的基礎。?
Semantic Web 研究者也認為,Ontology 是一個形式化定義語詞關系的規范化文件。對於 Semantic Web 而言,最典型的 Ontology 具有一個分類體系和一系列的推理原則。其中,分類體系定義對象的類別和類目之間的關系。實體之間的類/子類關系對於 Web 應用具有重要的價值。在 Ontology 中,還可以為某個類添加屬性來定義更多的類目關系。這些類目關系提供了的推理的基礎。
藉助 Ontology 中的推理規則,Semantic Web 應用系統可以提供更強的推理能力,例如可以在一個地理 Ontology 中加入這樣一條規則,「如果一個城市代碼與一個省代碼相關,並且一個地址利用了城市代碼,那麼這個地址與就與相應的省代碼相關」。通過這一規則,程序可以推理出中國科學院文獻情報中心,在中關村,應當在北京市。
為了 Semantic Web 研究者為了實現對 Ontology 的描述,在 RDF 的基礎之上,發展了 RDFS。RDFS 藉助幾個預先義的語詞(如 rdfs:Resource, rdfs:Class, rdf:Property, rdfs:subClassOf, rdfs:subPropertyOf, rdfs:domain, rdfs:range)能夠對概念之間的關系進行有限的描述。為了更方便全面地實現 Ontology 的描述,W3C 在 RDFS 的基礎之上,藉助了 DAML 和 OIL 的相關研究,正在積極推進 OWL(Web Ontology Language)的應用。自 2004 年 2 月 10 日,OWL 已經成為了一個 W3C 推薦的標准。
Gene Ontology
為了查找某個研究領域的相關信息,生物學家往往要花費大量的時間,更糟糕的是,不同的生物學資料庫可能會使用不同的術語,好比是一些方言一樣,這讓信息查找更加麻煩,尤其是使得機器查找無章可循。Gene Ontology (GO) 就是為了解決這種問題而發起的一個項目。
Gene Ontology 中最基本的概念是 term 。GO 裡面的每一個 entry 都有一個唯一的數字標記,形如 GO:nnnnnnn,還有一個 term 名,比如 cell, fibroblast growth factor receptor binding,或者 signal transction。每個 term 都屬於一個 ontology,總共有三個ontology,它們分別是 molecular function, cellular component 和 biological process。
一個基因 proct 可能會出現在不止一個 cellular component 裡面,也可能會在很多 biological process 裡面起作用,並且在其中發揮不同的 molecular function。比如,基因 proct cytochrome c 用 molecular function term 描述是 oxidorectase activity,而用 biological process term 描述就是 oxidative phosphorylation 和 inction of cell death,最後,它的 celluar component term 是 mitochondrial matrix 和 mitochondrial inner membrane。
Gene Ontology 中的 term 有兩種相互關系,它們分別是 is_a 關系和 part_of 關系。is_a 關系是一種簡單的包含關系,比如 A is_a B 表示 A 是 B 的一個子集。比如 nuclear chromosome is_a chromosome。part_of 關系要稍微復雜一點,C part_of_D 意味著如果 C 出現,那麼它就肯定是 D 的一部分,但 C 不一定總會出現。比如 nucleus part_of cell,核肯定是細胞的一部分,但有的細胞沒有核。
Gene Ontology 的結構是一個有向無環圖,有點類似於分類樹,不同點在於 Gene Ontology 的結構中一個 term 可以有不止一個 parent。比如 biological process term hexose biosynthesis 有兩個 parents,它們分別是 hexose metabolism 和 monosaccharide biosynthesis,這是因為生物合成是代謝的一種,而己糖又是單糖的一種。
Gene Ontology 使用 Oxford Dictionary of Molecular Biology (1997) 中的定義,在分選時還要參考 SWISS-PROT, PIR, NCBI CGAP, EC…中的注釋。建立起來的標准不是唯一的標准(這是GOC所一直強調的),自然也不規定每個研究者必須遵循這套控制字集系統。所採用的動態結構(dynamic structure)使用 DAGs(Directed Acyclic Graphs)方式的 network,將每一個ontology串連起來,形成樹狀結構(hierarchical tree),也就是由前面所說的「is a」和「part of」兩種關系。
由於 GO 是一種整合性的分類系統,其下的 3 類主 ontology 我們前面說是獨立的,但是無論是 GOC 原初的設計還是我們的使用中其實都還是存在一定的流程關系。一個基因/蛋白質或者一個 ontology 在註解的過程中,首先是考慮涉及在構成細胞內的組分和元件 (cellular component),其次就是此組分/元件在分子水平上所行使的功能 (molecular function),最後能夠呈現出該分子功能所直接參與的生物過程 (biological process)。由於這是一種存在反饋機制的注釋過程,並且整個系統是動態開放實時更新的,因此在某種程度上說它具有糾錯的能力。
TAMBIS 計劃是目前唯一實現了在概念和聯系層次上集成信息源的系統。但是還有其他一些相關計劃正在研究之中。
比如 BioKleisli(賓夕法尼亞大學計算機系),採用 Mediator(調節器)技術實現了若干數據源的集成,其後的 K2/Kleisli 系統還利用數據倉庫實現了 OLAP(聯機分析處理)。
DiscoveryLink (IBM 研究院),基於 Wrapper/ Mediator(包裝器/調節器)實現了信息源集成,提出了查詢的分解和基於代價的優化策略。
TAMBIS(曼徹斯特大學計算機系)基於Wrapper/ Mediator實現了信息源集成,藉助 BioKleisli 中的CPL語言作為查詢語言並給出了查詢優化的方法。通過 TaO(TAMBIS Ontology)本體定義為用戶瀏覽和查詢處理提供領域知識。
TINet(GSK 公司和 IBM 研究院),基於多資料庫中間件OPM(Object-Protocol Model,對象協議模型)定義數據源的對象視圖,其CORBA(Common Object Request Broker Architecture,公共對象請求代理體系結構)伺服器使各數據源 Wrapper(包裝器)更易於擴充。
但是他們都存在一定的缺陷。BioKleisli 系統查詢能力相對較弱,而且並未給出查詢優化策略;TAMBIS系統和 DiscoveryLink 系統集成的數據源數量相對還很少,後者在查詢處理中並未運用領域知識,因而查詢分解也未從語義角度考慮;TINet 系統中的查詢處理能力不強。
現在面臨的突出問題是在資料庫查詢中尤其是當多個資料庫存在信息重疊時,缺乏從中選擇最佳檢索成員,動態生成優化檢索方案的能力。而且現有的工作主要面向數據集成,而對服務集成考慮不多。支持數據與服務綜合性集成的體系仍欠完備。因此這也將是GO未來發展和提升的一個重要方向。