:::

數位典藏開放檢索服務的應用與探討 ——以臺灣百年圖書館史數位圖書館為例

前言

數位典藏系統能藉由網際網路的便利性,讓使用者在家裏即可透過網路欣賞、瀏覽典藏的數位化內容。但是數位典藏系統的內容往往只能限定在該系統本身上進行查詢使用,而在權限控管限制了使用者的取用行為,難以進行更進一步的應用與研究。

對於習慣於Web 2.0環境的使用者來說,他們會傾向於能夠將數位典藏的資源整合進自己習慣的工作環境底下;對於想要應用數位典藏資源進行研究的學者來說,他們會希望可以用統一、標準的規範來取用,並將數位典藏的內容整合到他們研究的系統當中;從圖書館的資源整合角度來看,圖書館會傾向於使用唯一的查詢介面,即能對於包含數位典藏在內的多種系統進行檢索,並取得、展示檢索之後的結果。

為了滿足以上的需求,數位典藏需要一種標準且全面的開放服務,以支援更深層的應用。

Z39.50的發展現況

圖書館自動化系統當中盛行的統一檢索標準是Z39.50。Z39.50是美國圖書館為了實現連結系統計畫(LSP)而發展,用來定義電腦之間的資訊檢索,透過規範查詢格式、簡化檢索過程,實現不同資訊系統之間的資料交流。Z39.50被NISO和ISO先後採納,多於圖書館領域內廣泛採用。

雖然Z39.50標準提供了檢索完整的功能,但是現今網際網路的環境底下卻不常看見Z39.50的應用。主要原因有幾點:一、Z39.50是基於ISO的OSI參考模型的通訊標準,並不是實做在網際網路的TCP/IP架構上,造成無法在網際網路上直接使用Z39.50,大大地降低了資料互通性的效率;二、Z39.50過於複雜,各個系統實做Z39.50的程度參差不齊,反而導致實際操作上有所侷限,難以發揮Z39.50在資料交換上的優點。

為了使Z39.50能夠在目前的網路環境中繼續發展,ZIG(Z39.50 Implementers Group)在2001年的會議上提出了建立ZING(Z39.50 International Next Generation)的。ZING作為新一代的Z39.50,在原有Z39.50的基礎上降低實做的門檻,擴大Z39.50的應用領域,以新的標準整合不同網路資源的檢索。

實際上,ZING是由許多不同目的的實驗性計畫所組成,其中SRW/SRU與CQL是其中有著緊密合作關係的幾個實驗。

SRU的發展與現況

SRU(Search Retrieve via URL)是一個以XML編碼為基礎的網際網路檢索用通訊協定,使用檢索用標準規範CQL(Contextual Query Language, 另有說法是Common Query Language)。SRU由Z39.50發展而成,在TCP/IP的架構上規範了檢索命令與查詢結果的格式。具體來說,SRU將查詢參數包含在URL(Uniform / Universal Resource Locato)當中,即能對支援SRU的伺服器進行查詢,並取得以XML編碼的結果,運作架構如圖1。

image

圖 1 SRU的運作模式

SRU是由美國國會圖書館負責維護管理,2004年2月發佈了SRU 1.1版本,目前已經進展到1.2版本(Library of Congress, 2004)。SRU通常會與SRW(Search Retrieve via Web)同時提到,後者是基於HTTP Request的POST方式,遵循SOAP(Simple Object Access Protocol)通訊協定,根據Web Service規範把查詢請求封裝成SOAP包,並按照SOAP資料交換機制完成資料傳遞。SRU跟SRW查詢結果均採用有著標準規範的XML編碼,以方便查詢者進行資料處理。

SRU的網路服務定義了三種基本的操作方法:

(1) Explain方法:使用者端可用此方法取得SRU網路服務的相關資訊,包括伺服器的資料、資料庫狀態、索引字段列表,metadata標準以及相關參數的預設值等資訊。第三方軟體可以依此自動配置本身系統的檢索設定,以整合提供SRU服務的伺服器。

(2) searchRetrieve方法:這是SRU服務的主要核心,可對提供SRU服務的伺服器中的資料庫進行檢索,並回傳結果集。SRU檢索規範中使用的CQL語法,必需要支援最完整的2級功能,當中必須支援欄位限制、布林邏輯以及回報語法錯誤訊息。回傳的檢索結果集必須是有結構的文字檔案,或著是以DC、MARC 21 XML Schema、MODS(Metadata Object Description Schema)等標準描述的XML檔案。

(3) Scan方法:使用此方法可以回傳網路資料庫索引中包含各個關鍵詞及出現的機率,幫助使用者確定資料庫收錄的主題範圍,進而選擇適當的關鍵詞進行檢索。

在SRU計畫網站上註冊的SRU服務提供者已經有86個(2006),包含了美國國會圖書館(2004)、OCLC、牛津大學、多倫多大學等國際上有影響的圖書館、資訊服務機構。研究SRU新型態服務模式也成為另一種熱門趨勢,其中以歐洲圖書館TEL(The European Library)最具有代表性,它透過SRU通訊協定將歐洲各國國家圖書館相關服務結合起來,並開發一個可以嵌入到使用者工作環境或網頁的迷你檢索工具(Mini Searchbox),讓使用者可以在統一介面裡面檢索歐洲各國國家圖書館的資源,實際應用到Blog上的情況如圖2。

image

圖 2 嵌入到Blog中的歐洲圖書館的迷你檢索工具

在SRU的研究計畫之中開發出相當多支援的軟體,例如INDEX DATA的YAZ Proxy、OCLC Research的Open Source SRW/U Server、CQL-Ruby等等,都是以開放原始碼的方式供人免費取用。其中Open Source SRW/U Server是以跨平台的JAVA開發而成,並且支援MIT與HP開發的機構典藏系統DSpace。

SRU searchRetrieve實作

國立政治大學圖書資訊與檔案學研究所在2007年建置了臺灣百年圖書館史數位圖書館先導計畫,以DSpace機構典藏系統修改而成數位圖書館,典藏臺灣近百年來圖書館與圖書資訊領域的數位化資料。

日前在該系統的進階檢索中,也提供了SRU的searchRetrieve方法的檢索功能。使用者只要在進階檢索欄位裡面設定好檢索條件,下方會自動產生相對應的SRU檢索語法,系統運作介面如圖3,而產生出來的URL如圖4。

image

圖 3 臺灣百年圖書館史數位圖書館先導計畫進階檢索介面的SRU功能

http://tlh.lias.nccu.edu.tw:8080/dspace/sru-search?operation=searchRetrieve&version=1.1&query=ANY%3D%22library%22&startRecord=1&maximumRecords=10

圖 4 SRU檢索指令以URL呈現

圖4的檢索指令當中輸入的參數如下:要求檢索的operation參數、SRU版本的version參數、CQL檢索語法再以URI編碼的query參數、設定檢索起點紀錄的startRecord參數、設定最大回傳筆數的maximumRecord參數。目前該系統的CQL僅支援到欄位檢索與布林邏輯的1級功能,尚未達到解析CQL並回傳錯誤訊息的2級完整功能。

最後的檢索訊息回傳結果以XML編碼,檢索結果的資料以Dublin Core呈現,節錄如圖5。

<searchRetrieveResponse>

<version>1.1</version>

<numberOfRecords>43</numberOfRecords>

<records>

<record>

<recordSchema>info:srw/schema/1/dc-v1.1</recordSchema>

<recordPacking>xml</recordPacking>

<recordData>

<srw_dc:dc>

<title>台北市立圖書館推廣活動彙編93年度</title>

<creator>台北市立圖書館</creator>

<type>出版品</type>

<publisher>台北市立圖書館</publisher>

<date>9 Jun 2008 13:17:47 GMT</date>

<language>中文</language>

<description>

北市圖為提升推廣活動的品質與成效,彙集該館舉辦推廣活動的經驗和紀錄,編印成冊,期使各界瞭解北市圖辦理各項活動的用心、努力與理念,並作為日後各分館設計推廣活動及各公共圖書館館際交流活動辦理經驗的參考。

</description>

<subject>台北市立圖書館</subject>

<subject>出版品</subject>

<subject>推廣活動彙編</subject> <identifier>http://tlh.lias.nccu.edu.tw:8080/dspace/handle/lias/1104</identifier>

</srw_dc:dc>

</recordData>

</record>

<searchRetrieveResponse>

圖 5 臺灣百年圖書館史數位圖書館先導計畫SRU檢索結果

SRU的應用探討

基於臺灣百年圖書館史數位圖書館提供了SRU開放檢索服務,許多利用該系統資源進行應用的研究,便能夠進行更進一步的利用。

以陳佳琪(2008)正在進行的「數位圖書館資源支援問題解決學習模式研究:以台灣百年數位圖書館為例」來說,該研究者以臺灣百年圖書館史數位圖書館典藏的數位資源為教材,評估結構化與非結構化的知識對於學習成效的差異,系統畫面如圖6。由於當時臺灣百年圖書館史數位圖書館尚未開放服務,因此實驗進行中學生只能到該系統進行瀏覽、檢視,研究者也無法對於系統內的典藏物件隨意操作、重整,而更接近自己的研究目的。

image

圖 6 數位圖書館資源支援問題解決學習模式研究的數位學習系統 (陳佳琪,2008)

藉由SRU開放的檢索服務,研究者將可以依照SRU規範設計檢索產生器與檢索結果分析器,依照研究自己的需求對於臺灣百年圖書館史數位圖書館發出請求,然後將回傳的資料進行分析、重新再利用,將整個流程整合到該研究的系統當中。研究者可以確保受驗者的學習過程,提昇實驗控制的成效。整體的架構圖如圖7。

圖 7 藉由SRU開放服務改進研究過程的概念架構

結語

國內的數位典藏重點仍以瀏覽、展示居多,較少考慮到開放服務提供第三方再利用,封閉的系統架構拘束了內容資源的應用發展。SRU提供設計網路開放的一種標準規範參考,具有容易實作、符合主流環境等等的優點。配合各種開放原始碼的工具一起使用,更能夠輕易地開發出支援SRU的網路服務。目前的數位典藏仍沒有完全善用網路環境的優勢,而利用SRU建立開放服務,強調數位典藏作為資源提供中心的地位,將可為數位典藏帶來全新的應用模式。

參考文獻

  1. Chick Markley. CQL-Ruby. http://www.oclc.org/research/software/srw/ (最終更新:2008/4/16)
  2. CQL: the Contextual Query Language: Specifications (SRU: Search/Retrieval via URL, Standards, Library of Congress). http://www.loc.gov/standards/sru/specs/cql.html (2008/6/18)
  3. Eric Lease Morgan (2004) . An Introduction to the Search/Retrieve URL Service (SRU). Ariadne, issue 40, july 2004. http://www.ariadne.ac.uk/issue40/morgan/ (2008/6/22)
  4. Eric Lease Morgan (2006). What is SRW/U? TechEssence.Info. http://techessence.info/node/48 (2008/6/22)
  5. Index Data. YAZ Proxy. http://www.indexdata.dk/support/ (2008/6/18)
  6. Library of Congress. LC Z39.50/SRW/SRU Server Configuration Guidelines. http://lcweb.loc.gov/z3950/lcserver.html (最終更新:2004/8/4)
  7. Library of Congress. MARC 21 XML Schema. http://www.loc.gov/standards/marcxml/ (最終更新:2007/12/14)
  8. Library of Congress. Metadata Object Description Schema: MODS. http://www.loc.gov/standards/mods/ (最終更新:2008/1/24)
  9. MIT and HP. DSpace. http://www.dspace.org (2008/6/18)
  10. OCLC Research. SRW/U [OCLC - Software]. http://www.oclc.org/research/software/srw/ (最終更新:2008/6/14)
  11. Oxford Journals. Help Search. http://www.oxfordjournals.org/help/techinfo/search.html#sru (2008/6/18)
  12. Rob Sanderson (2007). SRW and CQL. University of Liverpool. http://www.loc.gov:8081/standards/sru/pdf/robcql.pdf (2008/6/22)
  13. SRU: Search/Retrieval via URL -- SRU, CQL and ZeeRex (Standards, Library of Congress). http://www.loc.gov/standards/sru/ (2008/6/18)
  14. SRU: Search/Retrieval via URL, Standards, Library of Congress . Registered Participants: SRU Implementors Group Meeting, March 1-2, 2006. http://www.loc.gov/standards/sru/march06-meeting/registered.html (最終更新:2006/3/1)
  15. The European Library - v1.6. http://www.theeuropeanlibrary.org/portal/index.html (2008/6/18)
  16. Theo van Veen, Koninklijke Bibliotheek and Bill Oldroyd (2004). Search and Retrieval in The European Library: A New Approach. British Library. http://www.dlib.org/dlib/february04/vanveen/02vanveen.html (2008/6/22)
  17. University of Toronto. SRU explain method. http://ibridge.library.utoronto.ca:2200/unicorn?operation=explain&version=1.1 (2008/6/18)
  18. Xiaorong Xiang and Eric Lease Morgan (2005). Exploiting "Light-weight" Protocols and Open Source Tools to Implement Digital Library Collections and Services. University of Notre Dame. In D-Lib Magazine, October 2005. http://www.dlib.org/dlib/october05/morgan/10morgan.html (2008/6/22)
  19. 李春旺、王小梅、王昉、張智雄(2007)。基於SRU的集成服務平臺設計與實現。現代圖書情報技術,2007年10期。
  20. 李聰、胡偉(2006)。SRW的發展和現況分析。晉圖學刊,2006年02期
  21. 國立政治大學圖書資訊與檔案學研究所。臺灣百年圖書館史數位圖書館先導計畫。http://tlh.lias.nccu.edu.tw/ (最終更新:2008/6/15)
  22. 陳佳琪(2008)。數位圖書館資源支援問題解決學習模式研究:以台灣百年數位圖書館為例。政治大學圖書資訊與檔案學研究所,2008。(2008/6/18之前仍未結案)