王紅 李文清 雷菊霞
〔摘要〕對圖書館開源軟件Koha的專業特點和技術特征進行了深入全面的介紹,以Koha為例挖掘了開源軟件技術與應用的優缺點,探索我國圖書館開源軟件的可行性,通過分析開源圖書館軟件在國外的發展動力,對我國圖書館開源軟件的發展提出建立人才、技術、知識儲備的路徑。
〔關鍵詞〕圖書館;開源軟件;Koha;開源軟件;技術特點;開源許可證;云計算
DOI:10.3969/j.issn.1008-0821.2018.02.015
〔中圖分類號〕G25076〔文獻標識碼〕A〔文章編號〕1008-0821(2018)02-0096-05
Analysis and Enlightenment on Technical Features of the
Open Source Software Used in Library
——Taking Koha 322 as an Example
Wang Hong1Li Wenqing2Lei Juxia3
(1.Library,Shanxi University of Finance and Economics,Taiyuan 030006,China;
2.School of Information Management,Shanxi University of Finance and Economics,Taiyuan 030006,China;
3.Library,Beijing Normal University,Beijing 100875,China)
〔Abstract〕The paper introduced the professional and technical features of the open source software koha used in the library thoroughly and comprehensively.Taking koha 322 as an example,it explored the strength and weakness of the software in its application,probed the feasibility of its application in chinese library.Based on the analysis of the development of the software in foreign countrys libraries,the paper came up with ways for the development of the open source software in our countrys libraries and on how to prepare for it from such aspects as talents,technology and knowledge.
〔Key words〕library;open source software;Koha;open source;technical features;license for open source;cloud omputing
進入21世紀以來,國外圖書館行業開始關注開源技術在圖書管理領域的探索,開放源碼逐漸成為一種發展趨勢。Koha Library Software(以下簡稱Koha)作為第一個圖書館開源軟件,自2000年7月由新西蘭Horowhenua Library Trust社團圖書館委托Katipo開發,以圖書館專業技術人員為主體,圍繞Koha的技術發展與應用,開展了一系列持續不斷的研究和探索,從最初Koha-100版只提供圖書館簡單應用,陸續實現了MARC的導入導出、MARC21和UNIMARC技術標準對接、Z3950服務器數據接口、利用Zebra實現Koha系統的Simple Z3950檢索服務、多語言版本與轉換和元數據收割協議對接等功能。截至2016年11月,Koha已經推出完全基于WEB表單編目風格的32212版和在WEB頁面上類似于傳統單機版編目風格的Koha-160505版。
Manisha Singh[1]、Bojan Macan等[2],認為Koha具有先進的數據庫功能,易于安裝,對MARC21和UNIMARC書目著錄和有著良好的支持,Don Keast[3]等分析了英國皇家倫敦醫院圖書館、法國3所大學圖書館、意大利圖書館聯盟等圖書館部署和使用Koha的情況后,認為Koha安裝簡易、與傳統的系統耦合性好,支持更多的專家庫。Ian Walls、Farasat Shafi-Ullah發現Koha可以快速的完成數據遷移。HFrank[4]認為虛擬化和云計算在圖書館應用方面,可以有效優化硬件資源、節約潛在的成本;Denis Galvin,Mang Sun認為圖書館可以充分利用云計算的3個模式開展服務[5];國內圖書館理論界,早在2006年的數字圖書館與開放源碼軟件(OSS)研討會為契機,就開始關注圖書館自動化軟件,而臺灣地區也開展了Koha繁體版的漢化與推廣工作。總的來看,這些研究工作主要集中在開源軟件推廣的策略分析[6]、啟發與借鑒[7],以及參考英文版和繁體版Koha進行的功能介紹[8]與嘗試性研究[9]方面,對于Koha在圖書館專業層面的特色研究,以及探索Koha本地化開發和功能擴展研發等技術性工作,還停留在表面描述和外圍嘗試性研究階段。
1Koha簡介
11開源許可證
任何軟件都需要基于許可證授權實現購買和使用。Koha是依據開源許可證發行的自由軟件。開源許可證是指在開源軟件協議基礎上,對用戶提供的使用授權,并對代碼修改者依據開源協議提出約束性要求。開源許可證一般稱為GPL(General Public License,以下簡稱GPL),核心含義是軟件的版權屬于公共群體,供公共群體自由使用,反對并排斥任何以版權名義,據開源軟件版為私有授權的行為。開源許可證種類很多,并常常與推出開源許可證的機構名稱關聯,一般比較常用的開源許可證主要有:GNU GPL許可證(GNU General Public License,以下簡稱GNU、)、MPL許可證(The Mozilla Public License,以下簡稱MPL)、BSD許可證(Berkly Software Distribution,以下簡稱BSD)等。Koha系統在開源許可證約束下,終端的圖書館用戶自動獲得使用授權,用戶可以自由使用Koha,并對Koha進行后續性開發;對于在Koha基礎上進行源碼的修改、增加等,則要求開發者依據開源協議,無條件開放源碼并自由分發,開發者僅可以向委托開發的用戶收取一定的服務性費用。
12Koha運行環境開源
從Koha系統運行的操作系統、數據庫、Web服務器,到Koha開發使用的Perl語言解釋器、Javascript,以及索引技術Zebra搜索引擎等,都完全使用了基于GNU和BSD許可證的各種開源協議。主要包括基于開源的操作系統、開源Web服務器數據、開源語言與解釋器開發,以及Koha系統的索引技術等。
121基于開源操作系統
Koha系統官方推薦的操作系統平臺是Ubuntu桌面版操作系統,Ubuntu操作系統作為Linux操作系統的一個分支,Ubuntu桌面版操作系統的許可證繼承了Linux的GNU公共許可證。由于Koha是基于Linux操作系統運行的,因此Koha也可以在其他各種Linux分支的操作系統上運行。
122基于開源Web服務器數據庫
Koha默認的Web服務器,采用基于AL20即Apache許可證的Apache服務器系統;Koha系統默認的數據庫采用Mysql數據庫,也適用于PostgreSQL數據庫。Mysql數據庫是基于GPL許可證發行的,PostgreSQL數據庫則是基于BSD許可證發行的。
123基于開源語言與解釋器開發
Koha系統是由Perl語言開發的,其中前端部分使用了Javascript技術。Perl語言基于GNU許可證發行,被廣泛用作Web編程、數據庫處理、XML處理以及系統管理等領域,已經被所有Unix、Linux系統捆綁在一起作為標準部件發布。Javascript語言的授權使用與GPL兼容的MIT許可證,或者由用戶根據需要選擇使用GNU許可證。
13多語言國際化
Koha完全采用UTF-8編碼標準,可以適用任何語言編碼的字符集。Koha的程序文件按照UTF-8無BOM頭方式進行存儲,瀏覽器端則通過〈meta charset=UTF-8″〉調用UTF-8字符集顯示,數據庫把客戶端來源數據使用的字符集、連接層字符集、查詢結果字符集、系統元數據字符集等設置成UTF-8格式后,數據在存儲、傳輸過程中的字符格式保持一致。
2Koha技術特點
21云計算應用特征
Koha是以B/S結構運行的,根據網絡服務情況,既可單機安裝運行,也可在其他網絡終端機提供WEB應用服務,部署方式較為靈活。以本地單機方式運行,可以作為中小型圖書館的應用,進行圖書管理;以網絡模式運行,部署到局域網中,能夠為局域網內所有的用戶提供服務,滿足大中型圖書館的應用;部署到互聯網上,采用集中服務方式,則能夠滿足跨網段、跨區域多個分館的分散應用。由于Koha可以部署在互聯網上,因此Koha具有明顯的云計算應用即服務(SAAS)特征,使圖書館用戶更加專注于具體的資源管理與服務業務。
22程序編碼規范
在Koha文件名、應用程序文件夾以及變量、注釋等方面,都有一定的規范性要求。譬如全局性文件夾和文件命名時,首字母大寫。Perl模塊和自定義包是供全局調用的基本程序,也采用首字母大寫。在應用功能性程序文件夾和文件的命名規范,采用完整英文功能性名稱命名,以圖書管理業務專業名稱進行文件命名為主,以通用習慣功能名稱命名為輔,對于簡短的名詞使用完整的名稱,字段較長的名稱,容易在功能上混淆或重復的采用完整名稱,而對于比較容易識別且不容易重復的功能,則使用簡寫方式命名。編目模塊文件夾,采用英文完整名稱Cataloguing命名,與館藏管理模塊(Catalogue)進行區分,而對于流通管理模塊(Acqui),則采用簡寫方式;對于系統設置模塊(Admin),也采用習慣簡寫方式命名。文件的命名規范一方面繼承了文件夾的命名規范,同時兼顧具體功能含義的表達,能夠用一個單詞表達的程序功能,盡量用一個單詞,不能用表達清楚的情況下,采用組合方式命名,組合命名分為兩種樣式,一種是在兩個單詞之間添加連接符,一種是不添加連接符組合成新的命名。而采訪功能的主頁面采用連接符方式命名:acqui-homepl,而傳遞訂單文件則采用不添加連接符命名:transferorderpl。
Koha在變量命名時,大多采用小寫、完整的英文描述,復雜變量采用連接符,連接多個描述性的詞匯,比如:$item、$itemnumber分別代表館藏、館藏號的函數,函數$subfield_data表示子字段的數據。另外程序注釋廣泛存在Koha的每個程序中,幾乎每個Koha的程序頭都有Koha貢獻者的署名,和Koha作為自由軟件的聲明與授權說明。每段程序的注釋也在程序前面進行了注釋,比如在一段程序前加入“# Get the item title for more information”文字,表示下面一段程序的作用是“獲取館藏題名”的名稱。
23符合SOA架構標準的WEB服務
Koha系統在架構采用SOA面向服務架構標準,在結構上主要分為表現層、業務層、數據存儲層三層架構模式。表現層的結構化標準語言為XHTML和XML語言,表現標準語言為CSS,行為標準對象模型為如W3C DOM和ECMAScript等。業務層的實現語言主要是perl語言,實現標準是CGI,業務支撐由Perl Module完成。數據存儲層由DBI接口調用實現。
Koha系統的數據流,通過前端瀏覽器向Koha服務器提交請求,Koha的Cgi程序執行并調用數據庫、自主開發包、系統的Perl模塊等,把執行結果通過模板返回Apache服務器,最終以html格式返回給客戶端瀏覽器(見圖1)。在運行方式上,Koha采用公共網關接口(CGI)方式實現Web方式動態運行,通過瀏覽器、Web服務器和Koha的CGI程序進行數據交互,完成用戶在瀏覽器端發出的請求。
客戶通過瀏覽器,在地址欄中以Koha服務器IP地址或域名為訪問目標,并在IP地址后附加訪問的功能模塊名稱和請求參數,向Web服務器發出請求。Web服務器接到
請求后,根據IP地址后的模塊名稱,調用Koha的CGI程序,并把參數注入到CGI程序中,程序在執行完后,調用每個功能程序的html模板文件,把執行結果通過html格式返回給Web服務器,Web服務器把html格式的數據,返回給瀏覽器,完成用戶的請求。
24Koha圖書館業務特點
241符合圖書館專業標準
Koha除了具有極強的信息技術專業特色之外,也緊密跟蹤圖書館領域的專業性標準和應用。Koha英文版默認的MARC是MARC21和UNIMARC兩種格式標準。Koha并不排斥其他格式的MARC,比如未經過任何技術處理的CNMARC,在導入數據庫之后就可以初步使用。Koha的MARC記錄,存儲與處理方法主要采用適合現代信息及技術檢索與處理的XML(可擴展標記語言)格式進行存儲。XML格式數據為數據的索引、查找、排序、傳輸、交換以及相關一致性提供了強大的存儲、交換和分析能力。
此外,Koha引入了國際圖聯提出的FRBR(書目記錄的功能需求:Functional Requirements of Bibliographic Records)理念、規范控制格式(FRAD-Functional Requirements for Authority Data)和《主題規范數據的功能需求》(FRSAD-Functional Requirements for Subject Authority Data),在Koha的規范控制模塊中,包含MARC21和UNIMARC兩種格式的最新版本的規范控制數據,對主題詞、人名、家族、機構、會議等書目標引屬性的別名、變異、非規范表目進行規范控制,使得館藏實體能夠與數據庫標目形式保持一致,確保檢索、查詢、排序、統計等工作更加準確。
Koha使用Zebra搜索引擎技術,zebra搜索引擎對大多數開發語言提供豐富的查詢接口,支持文本前綴查詢格式(Prefix Query Format(PQF))、標準化數據(Data Normalization)、文本分詞(Text Tokenization)、字符映射(Character Mappings)等排序與分類,通過對表達式的匹配和近似匹配、容許匹配錯誤等技術,進行模糊查詢。Zebre不僅可以對傳統格式的MARC數據建立索引,還可以對XML格式數據、SGML、電子郵件等非結構化數據建立索引。
242應用架構豐富且易于擴展
Koha系統具有清晰的應用架構、模塊化和靈活組合等特點。多層架構使得每層都各司其職互不干涉,模塊化則在分層基礎上,使得每個模塊都獨立運行,一個模塊出現問題不影響其他模塊運行,同時在表現層,又給用戶較為靈活的自定義設置的接口權限(見圖2)。
Koha系統在應用層和表現層,根據業務劃分,以業務模塊形式單獨存在,根據模塊在系統中的作用,總體來說,可以分為館員工作模塊(Intranet)和讀者模塊(OPAC),館員工作模塊可以分為系統設置類、系統管理類、業務應用類。系統設置模塊主要包括系統給全局偏好設置(Global System Preferences)、基礎參數設置(Basic Parameters)、流通參數設置(Patrons and Circulation)、編目參數設置(Catalog)、采訪參數設置(Acquisition Parameters)和其他參數設置(Additional Parameters)。系統管理類主要包括統計報表設置、讀者設置分組、流通規則設置、書目編目設置、館藏錄入設置以及Z3950服務器設置、圖書館工作日程表等工具管理。業務應用類則包括流通、采訪、訂閱、編目、典藏、課程參考資料服務、規范數據等功能模塊。
243OPAC適合多種終端設備
OPAC模塊相對獨立于Koha的館員工作模塊,OPAC模塊在Web服務器上,是一個獨立的域,需要單獨設置IP地址和域名空間;在業務層面,OPAC僅僅在數據庫層面與館員管理端有些許的重疊,程序完全獨立運行。利用Bootstrap技術,使得OPAC前端可以適應于各種終端訪問。OPAC端主要是為了讀者服務的界面,為適應新技術新應用的發展趨勢,Koha在OPAC端采用Bootstrap前端響應式技術,在手機和各種寬度屏幕上的顯示,都有不同的適應風格,而不需要專門為手機等智能終端的應用進行專門的開發。
為適應不同圖書館對外服務的要求,允許管理員自定義OPAC主頁內容,Koha提供了OPAC頁面顯示內容的自定義功能,用戶可以在后臺頁面的OPAC風格設置表單中,輸入html內容,就可以在OPAC頁面上顯示。Koha還提供了豐富的自定義OPAC的外部特征、規則、策略、隱私、查詢檢索、遠程自主注冊等設置,讀者可以查看自己的借還歷史、當前已經借閱、超期、預約的圖書,修改自己的賬號密碼,查看罰款情況等。Koha還在OPAC中提供了選書車(Cart)、虛擬書架(List)、自定義標簽(Tag)、薦購(Suggestion)、評論等特色功能。
25Koha在國外不斷發展的技術推動力
Koha的發展主要是通過Koha開源社區協作,在不斷對新功能進行開發和對已發現錯誤進行修正的過程中,促進并推動了Koha的發展,由于每一個開發貢獻者,都在具體程序的注釋中,標注了貢獻者名稱和貢獻時間,從貢獻者的屬性來看,主要貢獻者都是以企業機構署名,獨立開發的個人在程序開發中所占貢獻比例相對較少。
從時間進展來看,以2008年作為分界。2008年以前對Koha貢獻較大的機構,主要由最早推出Koha的Katipo Communications公司完成基礎程序,曾經負責托管守護Koha的Liblime公司對程序進行了較多的完善和補充;2008年以后,對Koha開發貢獻比較活躍的是美國BywaterSolutiongs公司,美國紐約C&P書目服務公司(C&P Bibliography Services)、PTFS歐洲有限責任公司、法國BibLibre公司、新西蘭Catalyst公司等機構性質的團隊。
值得稱道的是軟件專家、開源協議制定的參與者Kyle Hall,以獨立開發者的身份,為Koha貢獻較多關鍵應用的開發程序。一些應用程序的貢獻者主要來自已經部署Koha應用的圖書館、博物館等機構,比如挪威的奧斯陸公共圖書館(Oslo Public Library)、荷蘭的國立博物館(Rijksmuseum)以及美國的納爾遜維爾公共圖書館和雅典縣公共圖書館等。由于Koha的前端頁面文件,都與Koha的功能模塊文件一一對應,雖然都沒有明確標注貢獻者的名稱,但可以理解為是由完成具體功能模塊文件的貢獻者完成。因此,任何對Koha前端進行多語言翻譯的貢獻者,往往很難在Koha中留下印記。
3Koha技術上存在的一些問題
31過于依賴Ubuntu桌面版
在Koha的一些安裝手冊上,大多推薦安裝在Ubuntu桌面版上,用Ubuntu作為服務器,存在很多弊端,Ubuntu的升級較為頻繁,容易導致舊的版本技術過時,但是在升級Ubuntu后,又缺乏對原有版本依賴庫升級的支持。如果在Ubuntu上安裝Koha,在升級Ubuntu后,就會導致安裝的Koha出現依賴庫缺失或版本過高的問題,而安裝合適的依賴庫對于Ubuntu來說又是一個巨大的技術挑戰。
32不同版本之間難以銜接
這個現象與Koha過于緊跟Ubuntu系統相關,也與Koha的不同版本由開源社區不同個人或小組完成有關,與Ubuntu跟隨過緊,導致依賴庫版本過高,給升級帶來困難。不同的開源社區組,開展修復Bug和新功能擴展工作,往往存在彼此依賴的初始版本各有差異,相互之間的開發工作不能充分有效溝通,最終匯總的時候往往需要很長周期,不同版本之間進行升級,也會導致用戶在升級Koha時,帶來不可預料的問題。
33社區協作,缺乏規范性
Koha開發的志愿者分散在世界各地,社區主要通過Mailing List、ICU開展交流活動,缺少一個有影響力的精神領袖,導致Koha在社區開發過程中缺乏統一的規范和指導。一個明顯的問題是,有些模塊在純英文環境下使用尚且正常,如果在多語言環境下使用,就會出現亂碼問題,比如在Koha-32200版本的系統管理(Tools)模塊下的讀者列表功能,是由美國Bywater小組完成的功能,這個功能由于是獨立于Koha程序實現的,其包文件單獨存放在Koha∷List∷中,其功能性文件也單獨存在于Koha功能目錄中,訪問數據庫完全脫離Koha程序的約束,最終導致在多語言環境下,出現亂碼而無法使用該功能。
4阻礙我國圖書館界引進國外開源軟件的技術因素
41語種、標準、專業和軟件使用習慣的阻礙
Koha是以英文用戶作為使用語言進行編寫的,非圖書館專業人員對圖書館專業名詞的翻譯和理解往往存在偏差,比如中文MARC的規范控制數據,英文采用Authority(權威)這個詞匯,典藏業務英文名稱是Rotating Collections,這對于不了解圖書館專業,但熟悉計算機程序開發的人員造成困擾。Koha中的機讀目錄格式采用MARC21標準,而國內主要采用CNMARC和UNIMARC作為機讀目錄格式的標準,對于不熟悉MARC以及不熟悉圖書館專業,尤其是不熟悉英文MARC21的技術開發人員,一時也是無從入手。在軟件的使用習慣上,國內的軟件設計在習慣上,往往層次清晰、結構嚴謹、一目了然,而Koha的一些功能則是隱藏在具體功能之下,往往要建立起一定的數據后,或者在表單中輸入數據后,才能在后續的處理上顯示出來,這也往往令圖書館專業人員,在初次入手的使用時無所適從,比如讀者分組管理模塊,需要輸入讀者姓名,并由程序在數據庫中查找到對應數據后,才顯示確定按鈕。
42缺乏專業機構或企業的技術支撐
任何一套大型的軟件系統都需要強有力的專業技術支持,以確保能夠及時處理用戶在使用過程中遇到的任何問題。Koha系統作為開源軟件,在國內并沒有專業機構和軟件企業,開展Koha中文化本地化工作,更沒有技術團隊和成熟的Koha社區對軟件進行調試、修正錯誤和深入開發。缺少技術保障和專業指導,以Koha為代表的圖書館開源軟件在國內圖書館界取得信任、支持和普及的道路還很漫長。
43不了解開源軟件的知識產權與授權機制
開源軟件的的知識產權和使用授權,大都是由國外的一些機構和團體倡導發起,其授權文本由英文書寫,法律名詞艱澀難懂。由于國內并沒有專門的開源軟件適用的法律,使得圖書館在使用時缺乏清晰的法律條款保護、授權與支持,因此難免顧慮重重。
44開源軟件技術開發人才相對稀缺
Koha采用的Perl語言和Cgi技術,在國外和一些大型網站中使用比較廣泛,在國內,當前Web開發的主流技術集中在Php、Java等流行技術,Perl語言和CGI技術則成為國內少數高級技術人員常用的技術,能夠全面了解Koha并對程序進行繼續開發的人才相對稀缺;能夠了解圖書館行業標準、業務模式與流程,同時又熟悉Perl語言開發技術的技術人員,則更加稀缺。缺少人才隊伍支撐,成為我國圖書館開源軟件普及與發展的瓶頸。
5我國圖書館開源軟件技術發展之路
我國的圖書館開源軟件之路應該本著穩健、務實、可行、發展的思路,積極借鑒吸收國外的先進經驗,從翻譯、漢化等本地化工作出發。有條件的圖書館,通過逐步測試和使用開源軟件,進行開源軟件知識與人才的初步培養和積累,逐步過渡到圖書館開源技術進入高校圖書館情報學專業和信息技術專業的課程體系之中,為全面培養我國的圖書館開源軟件人才,打下知識、技術與人才基礎。
51開展圖書館開源軟件本地化工作,為開啟我國自主的開源軟件提供借鑒和啟發
國內擁有較強圖書館專業人才儲備和信息技術儲備的圖書館、高校以及有關企業,對國外具有較高專業技術水平、符合未來技術發展趨勢的圖書館開源軟件,通過漢化工作,開啟我國圖書館開源軟件本土化研究,在全面了解國外圖書館開源軟件的研發思路和技術架構的基礎上,為我國推出自主圖書館開源軟件,提供經驗借鑒和設計啟發。
52鼓勵圖書館應用開源軟件,為我國開源軟件研究與開發提供知識與人才儲備
圖書館開源軟件的良好發展,最終受益者還是圖書館和廣大讀者。圖書館應該積極嘗試大膽試用。無論對本館的技術人員還是其他提供開源技術支持的機構、團隊和人才,予以包容,鼓勵嘗試與探索。通過形成良好的科研探索氛圍和精神,為圖書館開源軟件形成初步的人才與知識儲備,使圖書館開源軟件走上良性發展軌道。
接觸過全功能的圖書館自動化系統,即使他們畢業到圖書館工作,也很少有機會熟悉圖書館自動化軟件的所有模塊[10]。LibLime技術總監Joshua早在2007年1月20日,啟動開源圖書館自動化系統軟件Koha課堂計劃時,談到下一代的圖書館員想要了解知識管理的內在規律。“從開放源代碼軟件學習圖書館技術,不但了解圖書館技術本身,而且可以試著按照自己的研究思路進行調整”。我國圖書館的專業技術人才,通過高等教育才能形成廣泛的人才基礎,可以為未來圖書館開源軟件發展,以及圖書館事業的興旺發達打下堅實的基礎。
參考文獻
[1]Manisha S,Gareema S.Open Source Integrated Library Management Systems[J].The Electronic Library,2012,30(6):809-832.
[2] Bojan M,Gladys V,Fernández.Open Source Solutions for Libraries:ABCD vs Koha[J].Program,2013,47(2):136-154.
[3]Don K.A Survey of Koha in Australian Special Libraries[J].OCLC Systems & Services:International Digital Library Perspectives,2011,27(1):23-39.
[4]Frank C.An Overview of Virtual and Cloud Computing[J].OCLC Systems & Services:International Digital Library Perspectives,2010,26(3):162-165.
[5]Denis G,Mang S.Avoiding the Death Zone:Choosing and Running a Library Project in the Cloud[J].Library Hi Tech,2012,30(3):418-427.
[6]王婷,楊守文.開源圖書館自動化系統在國內的應用與推廣策略研究[J].圖書館論壇,2008,(3):78-80.
[7]胡振寧,陳大慶,丁培,等.國外開源圖書館集成系統的成功經驗和啟示[J].圖書館論壇,2013,(6):101-106.
[8]劉麗莉.基于開放源碼的圖書館自動化系統Koha研究[J].新世紀圖書館,2014,(6):65-68,82.
[9]陳曉彬.基于VMware虛擬機構建Koha開源圖書館自動化系統[J].情報探索,2013,(4):106-109.
[10]李書寧.開源圖書館自動化系統Koha走進圖書館學教育課堂[J].現代圖書情報技術,2007,(3):94.
(責任編輯:郭沫含)