吳育芳
(湛江師范學院圖書館,廣東 湛江 524048)
Web為數字圖書館提供了開放的應用及開發環境,從此,越來越多的數字圖書館在 Web上充當起信息提供者的角色。但由于各數字圖書館建設的主體、理念不同,因而使用了不同的標準和技術,使得其體系結構相對復雜多變。用戶查找資料時,必須分別進入各個數字圖書館的界面,適應不同的檢索要求。如何將在 Web上廣泛分布、異構、自治的數字圖書館聯合起來,向用戶提供統一、透明的一站式服務(即實現數字圖書館之間的互操作),也就不可避免地成為數字圖書館研究與開發的中心問題。
根據 USIEEE的定義[1],互操作性是指兩個或多個系統相互使用已被交換的信息的能力。就其本質而言,互操作性是在異質實體(包括異種體系結構、異種操作系統、異種網絡和異種語言等)中獲得資源的透明調用的能力。
數字圖書館的互操作是指數字圖書館交換文檔、查詢和服務的能力[2]?;ゲ僮骷瓤沙霈F在不同數字圖書館系統之間,也可出現在一個數字圖書館系統的內部各構件之間。它要求技術(軟件體系結構、通信協議和數據格式等)、內容(元數據及其語義等)和組織(數字圖書館提的基本訪問原則、支付方式和認證等)三方面的合作。數字圖書館的互操作主要體現在系統間的數據交換和服務協作兩個層面上。
互操作協議是數字圖書館館際通信的基礎,也是數字圖書館互操作的重要研究內容。目前主要有三種典型的互操作協議:HTTP協議是 Web上最寬泛的數字圖書館互操作協議,對參與成員沒有任何要求,最易實現;Z39.50協議是被傳統圖書館廣泛認同和應用的互操作協議;OAI-PMH協議是電子文檔共享的互操作協議。通過對三者的比較,筆者分析各自的優勢和不足,并根據“適度代價獲取充分功能”的原則,認為 OAI-PMH協議更有利于數字圖書館的互操作。
數字圖書館互操作協議定義了信息搜索和檢索的接口界面、查詢語言、結果集格式以及客戶機與服務器之間的交互方式等。實現數字圖書館的互操作,必須建立數字圖書館互操作協議。下面對三種典型的互操作協議進行討論。
HTTP[3](超文本傳輸協議,Hypertext Transfer Protocol),是客戶端瀏覽器或其他程序與 Web服務器之間的應用層通信協議,用于從 WWW服務器傳輸超文本到本地瀏覽器的傳送。
HTTP包含命令和傳輸信息,不僅可用于 Web訪問,也可以用于其他因特網/內聯網等應用系統之間的通信,從而實現各類應用資源超媒體訪問的集成。它可以使瀏覽器更加高效運行,使網絡傳輸量減少。它不僅能保證計算機正確、快速地傳輸超文本文檔,還能確定傳輸文檔中的哪一部分以及哪部分內容首先顯示(如文本先于圖形)等。
HTTP是一個屬于應用層的面向對象的協議,由于其具有簡捷、快速的優點,適用于分布式超媒體信息系統。HTTP協議的主要特點可概括如下[4]:1)支持客戶/服務器模式;2)簡單快捷??蛻粝蚍掌髡埱蠓諘r,只需傳送請求方法和路徑;3)靈活。允許傳輸任意類型的數據對象;4)無連接。限制每次連接只處理一個請求;5)是無狀態協議。
HTTP協議是基于請求/響應模式進行運作的,其客戶機/服務器模式的信息交換過程分為四部分:建立連接、發送請求信息、發送響應信息和關閉連接[5](如圖 1所示)。1)建立連接:連接通過套接字(Socket)實現的;2)發送請求:客戶機把請求送到服務器的停留端口上,完成提出請求的動作;3)結果響應:服務器在處理完客戶的請求后,要向客戶機發送響應信息;4)關閉連接:客戶和服務器雙方都可以通過關閉套接字來結束 TCP/IP對話。

圖1 HTTP信息交換過程
HTTP協議不需要信息組織之間達成任何規范,只要求信息能公開訪問即可。例如用戶通過Web搜索引擎檢索整個互聯網的信息,在這里可以將整個 Internet看作是一個 HTTP協議下超大的數字圖書館。顯然,HTTP協議可以包容最大范圍的信息,但是這種方式的信息服務質量很難令人滿意。
Z39.50[6](信息檢索應用服務定義和協議規范,Information Retrieval Application Service Definition and Protocol Specification),是根據信息檢索的美國ANSI/NISO標準和國際 ISO23950標準,由美國圖書館界創立的計算機數據庫網絡互聯通訊協議。
Z39.50起源于圖書館界,主要應用在書目信息的共享和互操作上,是傳統圖書館領域廣泛應用的一個國際標準。它基于客戶機/服務器模型,屬于ISO的 OSI參考模型的應用層協議,是有狀態的、面向連接的協議。Z39.50是獨立于任何特定類型的信息或特定類型的數據庫系統,具有豐富的語義表述、良好的互操作性和強大的功能,可管理客戶和服務器之間信息交換的格式和過程。
Z39.50指定規范和編碼來建立不同的計算機平臺,進行信息系統之間的連接與通信。它要求計算機間使用一種標準的、以相互可理解的方式進行通訊,使信息查找的發起和通信標準化。Z39.50的目的是構建聯邦式數字圖書館,協調各個參建館的目錄共享,規范查詢格式、簡化檢索過程,實現異構機型、異種操作平臺和不同圖書館系統之間的通信[7]。并且,Z39.50支持不同數據結構、內容和格式的系統進行的數據傳輸,實現不同平臺和系統之間的互聯和查詢[8]。
采用 Z39.50協議需要在客戶端和服務器端安裝相應的軟件,其操作的對象是 MARC紀錄,雙方的交互采用 TCP/IP協議。其工作原理如圖 2。1)客戶機和服務器建立連接;2)連接成功后用戶向服務器提交一個“查詢”請求;3)服務器接收到請求后,將檢索請求同時發送給多個數字圖書館,并將各個數字圖書館的查詢結果匯總、整理后保存到服務器上,根據用戶的要求實例化或僅提供集合記錄指針;4)關閉連接。

圖2 Z39.50協議分布式檢索模式
通過 Z39.50協議的互操作功能,可實現協議圖書館之間各種形式的數據記錄交換。Z39.50能夠表述抽象復雜的搜索要求,還可以實現文件排序、更新數據庫、查詢的定義、控制和存儲等功能。
Z39.50協議使用的無縫性較好。它的應用范圍比較廣泛,包括聯機編目、公共檢索、館際互借、定題服務等。它的功能也比較完善,除了資源共享和聯邦檢索外,還包括會話管理、結果集處理等許多復雜功能。但是良好的無縫性是需要很高代價的:它要求不同的參建館在數據共享方面達成共識,遵循共同標準;要求系統建設時要按照共同的標準進行協調;要求各成員館有專門的系統來實現互操作的功能。Z39.50協議系統建設的成本比較大,對參建館要求過多,并不適合大量成員館的參與。[9]在Web環境中,數字圖書館節點的數量都比較大,在這種情況下,利用 Z39.50協議來解決數字圖書館的互操作就變得十分困難。
OAI-PMH[10](OAI元數據采集標準協議,Open Archive Initiative for Protocol Metadata Harvesting),最初起源于電子出版界(E-print Community)的互操作計劃,因為數字圖書館的互通性檢索與之相似,所以在 2000年上半年,將其適用范圍擴展至數字圖書館領域。
OAI-PMH是一種獨立應用、能夠提高 Web上資源共享范圍和能力的互操作協議標準。為了標準的統一性和廣泛的適用性,OAI-PMH把 Dublin Core(DC)作為互操作的標準元數據,但是由于 DC的 15個元素不能很好地滿足不同部門的需求,所以OAI-PMH也支持其他任何可以編碼成 XML格式的元數據標準。
OAI-PMH是近幾年在數字圖書館界引起廣泛關注的新技術,它具有簡單、開放與靈活等特點,被認為能很好地解決數字圖書館的互操作問題。OAI-PMH以 HTTP為基礎定義了一個標準的接口,使服務器能將其存儲的元數據信息有選擇地提供給外部應用程序服務器或其他服務器。也被認為是解決不同資源的元數據互操作,有效挖掘、發布和利用互聯網上數字信息資源的協議。[11]
OAI-PMH體系包含兩種不同的角色:數據提供方(Data Provider)和服務提供方(Service Provider)。[12][13]該方案能有效地解決各資源庫在元數據格式上存在的異構性(互操作框架如圖 3)。1)數據提供者利用開放協議從每個 DL中采集元數據,經過處理、合并后集中保存在一個元數據倉儲中,并將自己擁有的元數據用公共元數據格式(Dublin Core)加以表達,通過 OAI協議提供統一的標準化接口,向外部揭示自身的元數據。2)服務提供者是元數據的收割方,使用 OAI協議向數據提供者發出請求(Requests),獲取據提供者的元數據,并以這些元數據為基礎向用戶提供進一步的信息增值服務。

圖3 OAI-PMH互操作框架結構模型
OAI-PMH協議的設計是按簡單易用的原則進行的,因此實施起來比較容易。在編碼方式上,所有成功的檢索均以 XML記錄的形式將元數據返回給請求方。OAI-PMH利用的都是現有 Web的成熟技術,是一個應用成本很低的元數據收割機制。
OAI-PMH協議因其易用性和直接基于元數據操作的特點,不需要共同規范,也不要求復雜的協議,數字圖書館可以以一種低門檻的方法加入聯盟,各館之間是比較松散的群體,可以盡量保持參建館的獨立性,這更符合中國圖書館在組織建設上的實際情況。[9]參建館只需要根據 OAI-PMH協議做很小的改動就可以進行元數據層的互操作,因此,比較適合更大范圍內數字圖書館系統間的合作。
上面三種協議方式都能解決分布式數字圖書館的異構性問題,實現跨資源庫、跨館的檢索。但其功能定位和發展前景各有不同,應根據數字圖書館自身發展情況加以斟酌使用。

表1 三種互操作協議的比較
HTTP協議是互聯網上應用最為廣泛的一種互操作協議,所有的 WWW文件都必須遵守這個標準,但它沒有規定元數據標準,協議復雜程度低,是使用最廣泛也是最輕量級的互操作標準。Z39.50協議始于圖書館界的書目數據共享,是一個功能完善但使用較為復雜的重量級協議。OAI-PMH協議起源于電子出版界的電子文檔共享,它提供了基于元數據的、簡單易行的互操作框架,是一種輕量級的協議,目前應用越來越廣泛。
在元數據標準上,Z39.50協議采用的 MARC元數據著錄信息的準確度高,但字段繁瑣重復,結構復雜,數據處理要求高,操作難度大、效率差,只有專業編目人員才能使用。其技術的復雜性提高了標準使用的門檻,顯然在描述電子資源方面有一定的局限性;而 Dublin Core相對簡單,其內核只是一個很小的應用集合,而且經過幾年的發展和修正,已經能很好地對大多數電子資源進行描述。該標準實施起來比較容易。
對開放互聯參考的七層模型來說,HTTP協議、Z39.50協議基于 TCP/IP,屬于底層協議;而 OAIPMH協議基于 HTTP,更容易實現。
在互操作方式上,HTTP協議采用數據收集的集聚式檢索模式,既不要求對現有聯盟參與館的結構做任何修改,也不要求成員館遵從某種協議,而是通過收集各個數字圖書館可公開訪問信息的路徑來獲得最基本的互操作。這種方法通常提供統一的用戶界面,用戶輸入查詢請求,系統執行分布式搜索,并將查詢結果合并后返回給用戶。這種方式簡單易行,有很好的適應性和伸縮性,不過效率低,服務的質量差。Z39.50采用的是一種聯邦檢索模式,即將檢索請求同時發送給多家數字圖書館,并將各家數字圖書館的查詢結果匯總整理后發送給用戶,這種方式符合技術發展的趨勢,但是因為要與多個數字圖書館進行交互,運行速度會變慢。OAI采用的是元數據收割模式,即服務提供者從多個數字圖書館信息提供者處收集元數據,建立一個集中式的聯合目錄,這種方式大大提高了查詢的速度,但要求服務提供方必須擁有足夠的空間來存儲不斷增長的元數據信息,而且聯合目錄無法實時反映數據提供者的數據更新情況。在這一點上 Z39.50更加符合技術發展的趨勢。
William Arms根據互操作協議所提供的功能和實施代價這兩個主要指標,給出了一種評價數字圖書館互操作的“功能——代價”曲線模型。其中橫軸表示互操作方法提供的功能,縱軸表示實施互操作方法的代價(如圖 4)。[14]
曲線左下方的 HTTP和 HTML提供適度的功能,成本低。曲線右上方的 Z39.50協議和 MARC具有強大的功能,但因實施代價太高很難大范圍推廣應用。雖然理想的互操作方法應置于曲線的右下方,以較小的代價獲得強大的功能,但目前仍很難實現。數字圖書館的研究講究以適度的代價獲取充分的功能,位于曲線中部的 OAI-PMH、XML和 DC有著廣闊的應用前景。目前,基于 OAI-PMH協議的聯邦搜索是數字圖書館界互操作研究與開發的熱點。國際上著名的數字圖書館項目 NDLTD和 NSDL均采用此方法作為互操作的解決方案。需要說明的是,“功能——代價”曲線并不是一成不變的,隨著實施成本的降低和具有強大功能的新技術的應用,曲線模型將會有所改變。
在 Web上實現大規模的數字圖書館互操作,OAI-PMH協議具有相對低的運行成本。但是 OAI-PMH方案在很多方面還需要改進,尤其在具體實施時所涉及的設計和技術問題,如:元數據選擇的標準;元數據收割到中心倉儲后怎樣進行再組織;元數據的更新問題;不斷增長的元數據信息與集中式目錄存儲等。為了解決這些問題,目前有一種提法:將先進的網格技術與 OAI-PMH協議相結合以增強數字圖書館的互操作性,利用網格技術存儲元數據,并對元數據進行管理,從而實現數字圖書館信息資源共享和跨倉儲的無縫檢索。隨著研究的深入,我們相信在不久的將來,不同數字圖書館系統間的互操作會變得愈來愈容易,數字圖書館系統能夠真正實現開放性、互操作性和擴展性。
[1]吳 斌.論數字圖書館的互操作性[J].電腦知識與技術,2006(29):172—173.
[2]張付志,孔令富,劉明業.互操作聯邦數字圖書館研究[J].情報學報,2003(3):336—340.
[3]http[EB/OL].[2010-03-24].http://baike.baidu.com/view/70545.htm?fr=ala0_1_1.
[4]張利柱,董興輝,劉 晶.基于 HTTP協議與 XML技術的信息交換[J].中國電力教育,2006(S3):73—75.
[5]趙衍敏,姚自明,趙岳松.基于 HTTP協議的高速代理服務器[J].計算機工程與科學,2003(2):64—66.
[6]什么是 z39.50軟件[EB/OL].[2010-03-24].http://zhidao.baidu.com/question/1795165.html.
[7]周 斌,劉 波,楊岳湘.Z39.50協議的原理及其在分布式檢索中的應用[J].計算機工程,2002(9):77—81.
[8]周從軍,徐 革.Z39.50協議在建設分布式圖書館網絡系統中的應用[J].圖書情報工作,2002(9):101—102,126.
[9]齊華偉,王 軍.OAI-PMH與數字圖書館的互操作[J].圖書館論壇,2005(8):19—22.
[10]OAI[EB/OL].[2010-03-24].http://baike.baidu.com/view/555113.html.
[11]Open Archives Initiative Protocol for Metadata Harvesting[EB/OL].[2010-03-24].http://cn.bing.com/reference/semhtml/Open_Archives_Initiative_Protocol_for_Metadata_Harvesting.
[12]吳穎紅 .OAI協議與數字圖書館互操作性研究[J].圖書館理論與實踐,2009(1):104—106.
[13]周 偉.基于網格技術的數字圖書館互操作框架[J].現代情報,2007(6):91—93,96.
[14]張付志.異構分布式環境下的數字圖書館互操作技術[M].北京:電子工業出版社,2007:48—49.