〔摘 要〕本文給出 了基于本體的數字圖書館5S模型并用5SL進行了描述,同時提出了一種基于本體的數字圖書館的層次模型:資源層#65380;元數據層#65380;本體層和互操作層,詳述了各層的作用,并用OWL的抽 象語法描述了各層的概念與關系#65377;最后探討了利用語義Web Services實現數字圖書館的語義 互操作#65377;
〔關鍵詞〕數字圖書館;本體;5S ;OAIS;OWL
〔中圖分類號〕C931.6 〔文獻標識碼〕A 〔文章編號 〕1008-0821(2009)08-0066-04
Semantic Interoperability Models
of Digital Library Based on OntologyLiu Chengshan Zhao Pengwei Liu Huailiang
(School of Economics Management,Xidian University,Xian 710071,China)
〔Abstract〕In this paper,a 5S model of digital libraries described by 5SL
based on ontology was given.A hierarchical model of digital libraries based on
ontology with four layers,i.e.,resource layer,metadata layer,ontology layer an d interoperation layer was proposed and the function of each layer was elaborate d.Then classes and their relationships in each layer were described by abstract
syntax of OWL.Finally,semantic interoperation of digital libraries achieved by S emantic Web Services was also discussed.
〔Key words〕digital librarie s;ontologies;5S;OAIS;OWL
數字圖書館的互操作是解決一個數字圖書館系統能夠理解另一個數字圖書館的資源的問 題#65377;而語義互操作是數字圖書館系統通過本體映射等方法,理解多個領域的語義表達,使資 源的語義外顯化,從而能夠使系統具有語義交互的能力#65377;也就是說,數字圖書館需要在承認 環境無序的前提下尋求一種跨語義的解決方案#65377;顯然,解決語義互操作的核心在于建立一個 統一#65380;公認的概念模型#65377;本文分別在數字圖書館的5S模型和開放存檔信息系統(OAIS)模型 的基礎上,提出基于本體的語義互操作的模型#65377;
1 基于本體的5S模型
5S模型定義了數字圖書館是具有5個模塊的復雜系統:社會性模塊(Societies,各個角色和 職能);情境性模塊(Scenarios,提供相應的服務行為細節);結構性模塊(Structures ,以有用的方式組織內容);空間性模塊(Spaces,描述內容的內在屬性和關系);流體性 模塊(Streams,展示內容的外在表示)#65377;5SL是一種基于XML的對數字圖書館5S模型進行建 模的語言,用于表達某領域各類實體及其相互關系,以及對問題進行抽象表述[1] #65377;
本體(Ontology)通過對術語的嚴格概念定義和術語間的關系來確定術語的精確含義,用于 表示共同認可的#65380;可共享的知識,從而產生計算機可理解的語義,因此本體是解決語義層次上的信息交換和共享的基礎,圖1是利用5SL建立的基于本體的數字圖書館語義模型#65377;
流體性模塊包含了數字圖書館內容(Collection)的多媒體表現格式:文本#65380;圖像#65380;音頻和 視頻等;空間性模塊用于對數字圖書館內容屬性和關系的描述;結構性模塊主要由數字對象 (流體性模塊所表現的內容)和元數據組成;情景性模塊描述查詢#65380;瀏覽#65380;推送等服務行為 的細節;社會性模塊包含用戶所需要的服務,通過管理員或代理實現#65377;
在該模型中,將本體引入結構性模塊中,利用5SL編碼如下:

resource=″http:∥sigmakee.cvs.sourceforge.net/*checkout*/sigmakee /KBs/Merge.kif″/> schema=″http:∥purl.org/dc/elements/1.1″/> …… 本體的作用在于共享和重用語義,不同領域#65380;不同應用系統之間通過本體映射進行交流#65380;協 定并可以共享理解#65377;以下是引入本體后,以情景性模塊中的Search服務為例的5SL編碼: …… …… 2 基于本體的層次模型 數字圖書館從海量的#65380;分布式的資源中采集到有價值的信息,有效地提供給用戶使用,它需 要提供一個規范信息描述和信息解釋的系統環境作為一個統一框架,以適當的方法管理和使 用不同元數據和本體建立的語義系統,需要建立或對已有系統抽象出一個統一的能夠進行互 操作的語義層次#65377;本文借鑒OAIS模型[2],提出基于本體的數字圖書館語義互操作 的層次模型,分為4層:資源層(SIP)#65380;元數據層(AIP)#65380;本體層(AIP)和互操作層(DI P),如圖2#65377;上層通過接口訪問下層,下層為上層提供服務#65377; 2.1 資源層(Resource Layer) 資源層包括基本的對象數據,為系統提供海量的數據資源,建立動態的#65380;跨平臺的#65380;虛擬的信息環境組成領域數據庫或知識庫#65377;Unicode用于資源的編碼,統一標識URI(Uniform Reso urce Identifier)負責標識資源#65377;數字圖書館中的每個資源至少用一種元數據方案的一種 元素進行描述,元數據應用綱要(AP)通過URI標識在網上聲明#65377;AP要求元數據元素都取自U RI的命名域,不再定義新的元素,但可以定義相關的編碼體系和規則,融合和復用來自于不 同元數據標準的術語,在一個共同的抽象模型中達到語義互操作的目的[3]#65377; 2.2 元數據層(Metadata Layer) 如何將資源層的多種資源映射成數據庫的數據實體是語義互操作要解決的首要問題,元數據 描述是將數字圖書館中的信息資源語義化的基本方式,它是數字圖書館的語義基礎,可以對 資源進行語義描述,提供資源的微觀結構#65377; 該層主要包括XML/XML Schema#65380;RDF/RDF Schema#65380;AP以及元數據注冊系 統(MDRS)等#65377;XML/XML Schema表示數據的內容和語法結構[4];RDF/RDF Schema描述資源及其類型[5]#65377; XML可以由用戶靈活定義在不同的應用中所使用的標記組合,是計算機之間共享數據的一種 有效方式,但它不具備語義描述能力#65377;RDF提供了一個通用模型用于對任意類型資源的描述 ,它以一種標準化#65380;互操作的方式來規范XML的語義,在XML中引用RDF可以將XML的解析過程 與解釋過程相結合,即RDF可以幫助解析器在閱讀XML時,獲得XML所要表達的主題和對象, 并可以根據它們的關系進行推理,從而做出基于語義的判斷#65377;因而可以把XML看作為一種標 準化的元數據語法規范,而RDF是一種標準化的元數據語義描述規范#65377; 該層用到的元數據收割模型(比如OAI-PMH)[6]能夠從每個數字圖書館系統中采 集并提取元數據,經過處理#65380;合并后集中保存在一個元數據庫中,方便用戶對元數據進行查 詢#65377;該方法有效地解決了各資源庫在元數據格式上可能存在的異構性問題,實現跨庫互操作 #65377;元數據注冊系統MDRS能夠提供元數據術語的定義#65380;屬性和關系,用于進行查詢#65380;映射和轉 換服務#65377; 2.3 本體層(Ontology Layer) 本體是“元”元數據,可以從宏觀層面上描述數字圖書館的語義模型[7]#65377;模型中 的本體層用于描述數據的語義內容,封裝數據的異構性,向上層提供語義服務, 同時提供邏輯推理的規則#65377;包括對傳輸對象進行描述的語義本體#65380;對服務過程和行為描述的 服務本體以及發布和共享相同或相似服務的機制(即注冊體系和本體的建立/映射/融合機 制)#65377; 該層是整個模型的核心,由本體代理#65380;本體查詢模塊#65380;本體庫和包裝器等部分組成#65377;本體代 理用于提取該領域的本體,生成本體庫#65377;上層的查詢送到該層,由本體查詢模塊分解成子查 詢,與本體庫進行語義匹配,通過包裝器傳遞給下層#65377;包裝器的功能是與響應的信息源進行 交互,將代理所使用的查詢語言翻譯給相關信息源,并將查詢結果送回上層#65377; 不同的領域有不同的本體,即使是相同的領域也可能存在不同的本體,需要用本體映射的方 法解決本體的互操作問題,通常可采用直接翻譯或者共享本體的方法#65377; 2.4 互操作層(Interoperation Layer) 該層是整個數字圖書館面向用戶的統一服務平臺,由客戶代理向本體層提出服務請求(本層 也可直接訪問資源層的局部對象數據和元數據層的元數據),在本體層構造的邏輯集成信息 服務機制上提供數字圖書館各類分布式#65380;異構資源的透明訪問,為用戶提供個性化的信息內 容和業務服務#65377;用戶可以通過單一的語義入口獲取個性化服務,在單一的語義空間里獲取共 享知識#65377;該層還對下層送回的結果進行抽取#65380;推理,然后更新知識庫#65377; 3 層次模型的本體描述 如上所述,XML/XML Schema提供了語法,但沒有語義約束;RDF/RDF Schema是描述資源的類 和屬性的詞匯表,提供了這些類和屬性的層次結構的語義#65377;而本體描述語言OWL(Web Ontol ogy Language)[8]添加了更多的用于描述類和屬性的詞匯,可用來明確表示詞匯 表中術語的概念以及術語間的關系#65377;在表達概念和語義方面,OWL比XML(S)/RDF(S) 有更多的表達手段,因此在Web上表達計算機可理解的語義的能力也更強#65377; OWL的抽象語法[9]可讀性強,易于修改,本文使用OWL的抽象語法來描述各層中主 要的術語的概念和關系[10]#65377; Ontology(Annotation(owl:imports http:∥sigmakee.cvs.sourceforg e.net/*checkout*/sigmakee/KBs/Merge.kif)∥僅為舉例 Annotation(rdfs:label″SUMOnto″)∥IEEE的“建議上層共用本體” ……) 3.1 資源層的主要概念和關系定義 Class(Concept owl:Thing)∥Concept是根類 Class(Collection Concept)∥Collection分為3個不相關的子類: Class(PersistentCollection Collection)∥靜態收藏,也即數字圖書館的存儲資源 Class(DynamicCollection Collection)∥用戶服務時使用的動態數據 Class(TemporaryCollection Collection)∥臨時數據,比如檢索結果等 Class(DataCollection PersistentCollection) DisjointClasses(PersistentCollection DynamicCollection TemporaryCollection) ObjectProperty(derivedfrom range(Collection)domain(Collection))∥內容派生 ObjectProperty(referto range(Collection)domain(Collection)) 3.2 元數據層的主要概念和關系定義 Class(Metadata Concept) Class(Profile Concept) Class(MetadataCollection PersistentCollection) Class(MetadataProfile Profile)∥元數據應用綱要 Class(Actor Concept) Class(Agent Actor) Class(SearchAgent Agent) ObjectProperty(hasmetadata domain(DataColletion)range(MetadataCollection)) ObjectProperty(hasrule domain(MetadataProfile)range(MetadataCollection)) ObjectProperty(uses domain(SearchAgent)range(MetadataCollection)) 3.3 本體層的主要概念和關系定義 Class(Relationship owl:Thing)∥Relationship是抽象類,分為3個子類: Class(Belongto Relationship)∥隸屬 Class(Relateto Relationship)∥相關 Class(Create Relationship)∥產生 Class(OntologyAgent Agent) Class(Synonym Concept) ObjectProperty(uses domain(OntologyAgent)rang(Synonym)) 3.4 互操作層的主要概念和關系定義 Class(Service Concept) Class(Interface Concept) Class(User Actor) Class(ClientAgent Agent) ObjectProperty(hasaccess domain(User)range(Interface)) ObjectProperty(hasservice domain(ClientAgent)range(Service)) ObjectProperty(uses domain(Service)range(Collection)) ObjectProperty(updates uses domain(Agent)range(Collection)) OWL通過把抽象語法轉化為RDF圖來定義RDF/XML語法#65377;OWL所描述的術語之間的關系存在于層 中,也存在于層間,這些術語的概念和關系產生了本體#65377; 4 數字圖書館語義互操作的實現 數字圖書館系統語義互操作的最終目標是使計算機能夠自動處理語義,這需要在建立大量的 標準規范的基礎上,還要一定的系統架構來保障語義功能的實現#65377;面向服務架構(SOA)從 本質上說是一種理念,它是一種軟件架構,由一組獨立的#65380;自我描述的服務組成,并能夠通 過標準的方式進行訪問#65377;SOA非常適合解決分布式環境下的不同應用之間的集成問題,而數 字圖書館的異構信息系統都是具有獨立功能的實體,相互之間只具有松散聯系#65377;SOA強調架 構中提供服務的功能實體的完全獨立的自我管理和恢復能力,非常適合于實現數字圖書館的 語義互操作#65377;目前SOA最普遍的應用是Web Services#65377; Web Services是一種動態的互操作方案,通過UDDI(統一描述#65380;發現和集成)動態地發現#65380; 綁定和使用服務[11]#65377;在基于本體的互操作模型中,本體的引入使得軟件代理可 以對Web Services的服務過程和行為進行語義描述,從而實現語義互操作#65377;服務本體可分為 3個子本體[12]:ServiceProfile提供了服務的功能與接口,以便于服務代理能 夠搜索與匹配該服務;ServiceModel詳細說明了服務如何工作,進行語義匹配,同時協調不 同的源,實現互操作;ServiceGrounding指定調用服務的具體細節,解決代理通過什么樣的 手段去訪問服務的問題,比如RPC#65380;CORBA IDL#65380;SOAP#65380;Java remote calls#65380;OAA#65380;Jini等#65377; 以下是基于本體的語義Web Services的實現#65377; 首先是服務提供者注冊#65377;各個資源和服務在現有基礎之上增加一個Web Services的接口封裝 ,轉換成為Web服務#65377;采用Web Services描述語言WSDL的元素來描述文檔,常用的元素有:< portType>定義一種服務訪問入口的類型; 然后服務請求者通過UDDI注冊機制查找需要的服務(由ServiceModel描述)#65377;軟件代理提供 服務參數后,請求被送到語義匹配器(Semantic MatchMaker),在此被轉換為ServiceProf ile文檔,并利用ServiceProfile本體庫中所描述的有效服務進行語義匹配,找到服務提供 者#65377; 最后返回結果#65380;綁定#65377;組件根據返回的WSDL,生成SOAP消息,Web服務器得到SOAP應答后,把查詢結果整理#65380;合并,送回到客戶代理#65377;這樣就可以遠程調用該服務了#65377; 5 結 論 要有效地利用數字圖書館各類信息資源和服務,需要在分布式環境下尋找一種跨語義的互操 作解決方案#65377;建立領域本體是語義互操作不可缺少的工具,本文提出了基于本體的數字圖書 館語義互操作模型:5S模型和層次模型,分別用5SL和OWL進行了語義描述,并分析了利用語 義Web Services實現數字圖書館的語義互操作#65377; 語義網格是在Web環境中再構建一個中間的環境,能夠提供更高的語義和更強的計算能力[13],使得符合這個環境的信息體都具有語義互操作功能#65377;其分布式環境與數字圖 書館的信息環境是完全一致,因此可以認為語義網格也將為數字圖書館提供語義互操作方案 #65377; 參考文獻 [1]M.Goncalves,E.Fox,L.Watson and N.Kipp:Streams,Structures,S paces,Scenarios,Societies(5S):A Formal Model for Digital Libraries[J].ACM Tra nsactions on Information Systems,2004,22(2):270-312. [2]A Reference Model for an Open Archival Information System,Document Number: ISO14721:2003. [3]Liu Wei.The Semantic Architecture for Chinese Cultural Celebrities Manus cript Library[C].ICADL 2004,LNCS 3334:245-254. [4]XML/XML Schema[EB/OL].http:∥www.w3.org/XML,200 6-09-20. [5]RDF[EB/OL].http:∥www.w3.org/TR/2002/WD-rdf-concepts-20021 108,2006-09-20. [6]The Open Archives Initiative Protocol for Metadata Harvesting[J/OL] .http:∥www.openarchives.org/OAI/openarchivesprotocol.html,2 008-07-13. [7]Kevens blog[EB/OL].http:∥www.kevenlw.name,20 06-09-20. [8]J.Heflin,R.Volz and J.Dale:Requirements for a Web Ontology Language[R ].W3C Working Draft,July 8,2002. [9]OWL semantics and abstract syntax[EB/OL].http:∥www.w3.org /TR/owl-semantics,2006-05-10. [10]László Kovács and András Micsik.An Ontology-Based Model of Digital L ibraries[C].ICADL 2005,LNCS 3815:38-43. [11]Habegger B,Quafafou M.Web services for information extraction from the W eb[J].Web Services,2004 Proceedings,IEEE International Conference on 6-9 July 2004:279-286. [12]Service Ontology[EB/OL].http:∥www.daml.org/services/owl -s/1.2/Service.owl,2008-07-13. [13]Zhuge H.Semantic grid:scientific issues,infrastructure,and methodology[ J].Communications of the ACM,2005,48(4):117-119.