佛教圖書館館訊 第二期 84年 6月
【電腦V•S資料系列】
程式設計觀點看
--香光尼眾佛學院「佛學文獻資料庫」
東吳大學中文系教授 陳郁夫
三月初,香光尼眾佛學院圖書館自衍師父有意讓我為「佛學文獻資料庫」盡些心力。三經往返,雛型初就,忍不住借此園地介紹給有意從事類似系統設計者參考。
「佛學文獻資料庫」的內容是佛學論文訊息,包括:題目、作者、出版、卷期、頁次、時間、關鍵詞、提要八項資料,由於各項資料有一定格式,長度大體一致,較適合設計成 dBASE3 式分「欄位」檢索。但「欄位」式檢索有一重大缺點,就是有些訊息會遺失,譬如今人寫論文,有時題目之外尚有副題,所以整個題目可能長達六十字以上。題目若設定三十字長,副題訊息便遺失了。為著避免遺失訊息,儘量加長各欄位長度是解決之道,這樣又會浪費大量記憶體,使資料長大很多倍。為著避免上述缺點,本資料庫不定欄位,全部訊息放於一處,採「全文」檢索方式,這樣做對其中將近三百字「提要」一項,最為相宜。
「全文」檢索雖可以找到一切資料,但有速度慢、和資料可能浮濫的缺點。速度慢一直是「全文」檢索之痛,還好硬體愈來愈快,我們的字串比對功能又強,已可做到不做任何資料加工就可滿足速度要求了。資料浮濫的缺點則要在設計上用一些巧思。首先在資料「登錄」時,依論文發表年代先做「分類」工作,這樣一方面可在選單上縮小檢索範圍,一方面等於論文發表「年代」一欄可做「大於」「小於」「指定」等選擇。其次,在輸入檢索字串之後,可指定檢索項目,這樣大致可以做到像「欄位」檢索一樣精確。這樣一來,「佛學文獻資料庫」便兼具「全文」和「欄位」二重優點。像這樣的資料庫,據我所知,尚未有聞。
本資料庫分「檢索」「登錄」「維修」三模組,「檢索」模組給三寶弟子和學界免費使用,「登錄」和「維修」模組則給香光尼眾佛學院內部使用。三者可統合在一個外框上。「登錄」模組登錄資料採用「整檔」輸入,意思是原始資料可在自己習用的編輯器下製作,只要遵循一定格式就可以。如此一來,只要有人發心,便可替佛學院輸入資料。由於資料分頭製作,可能會有重複,「登錄」模組會將重複資料濾掉,甚至將可疑資料摘出,以便修正。可用一般編輯器製作資料、篩除重複與可疑資料以及自動分類,三者是「登錄」模組值得介紹給行家的功能。
在「維修」模組中,做的事約有以下數項:
第一、可以了解資料庫的情況(有多少筆資料、使用多少記憶、各鏈有多少筆、鍵詞
分布等)。
第二、可刪除或修改一「筆」資料。修改一「筆」資料時,可以使用自己習用編輯
器。
第三、可刪除或瀏覽一「鏈」資料,並可將整「鏈」傾存成檔案。
資料庫一經維修,往往會留下垃圾,我們也提供清除和重整的功能。
「檢索」模組是這系統成敗的關鍵所在,我們特別用心,力求速度快、使用便、功能全三項要求。速度快要快到不感覺要等,使用便要便到生手一看就會,功能要全到應有盡有。當然,從絕對的觀點看是做不到的,所以以上的話都只是相對上說的。
(一)速度快
將來無論資料多大,我們都希望十秒之內找到一切資料。由於不斷有訊息在螢幕出現,十秒並不會有等待感覺。
(二)使用便
為著做到使用便,我們以「視窗」為基本架構,儘量使用「選單」等以增強使用者方便,並以「狀態列」讓使用者明白怎樣用。使用者除了輸入檢索字串之外,其餘都可不用費心。
(三)功能全
由於需求不同,不易完全滿足所有使用者。不過我們提供以下功能,相信不會短於任何其它軟體:
第一、檢索提供「單詞」「且」「或」「鍵詞」四種。
單詞:不限長度。
且:等於邏輯and,做邏輯【且】的詞不限長度,個數也不限。
或:等於邏輯or,做邏輯【或】的詞不限長度,個數則限三個。
鍵詞:一般稱為關鍵詞,本資料庫內建成B+ Tree,可立即找到資料。
第二、檢索進行中,系統會報告各年代有多少「筆」,檢索終止,會加總。
第三、處理檢索所得資料,分「整體」和「分筆」。
整體:不看資料,整體存檔或列印。
分筆:分筆看資料,選出想要的資料再存檔或列印。
第四、分筆看資料我們分「詳、略」二欄。「略」欄只顯示題目和作者,便於整體了
解;「詳」欄則當游標在「略」游動,自動更新。「提要」則按功能鍵再顯
示。
第五、存檔與列印可選項,並依選項做適當格式處。
第六、舉凡檢索過的資料系統會保存,可免重新檢索之苦。
佛教資料浩如煙海,披索困難。因此,有志佛學研究者,十分盼望有人早日將有關佛學資料電腦化,以免浪費時日在搜尋資料上。佛教資料大體可分二種,一是原典,一是相關研究成果。原典的電腦化刻不容遲,而相關研究成果亦十分重要,香光尼眾佛學院「佛學文獻資料庫」屬後者。
常聽人說:「某某經已輸入電腦了。」這應該指的是把某經典製成「本文檔」而言。本文檔是一序列ASCII code,沒有其他排版方面的訊息,一般編輯器都能閱讀,可以是電腦最基本資料。這些本文資料讓它們維持檔案型態,用TS或GREP等在檔案中找資料的工具去找,當然可以,但是十分不方便。為此,製成「資料庫」恐怕是必要的工作,這樣才能迅速找資料到並做維護工作。
製成「資料庫」需要一個資料庫管理系統,國內一般都用dBASE3之類的資料庫管理系統做,這對適合「欄位」的資料已有資料膨脹和遺失的缺點,對「原典」則全不合用。本人開發的「龍泉一號」「龍泉二號」等全文檢索系統,便是專門為補足這一缺憾而撰。「一號」我們用它製作了一些像《楚辭》《莊子》《荀子》等較小的古典文獻,佛典也有《圓覺經》《法華經》等十餘種,分送想要的學者使用。更重要的是「一號」免費開放給學界使用,學者可以完全自製自己想要的經典。
很高興能為香光尼眾佛學院設計這個資料庫,它補足「龍泉一號」對「欄位」式資料的功能不足,將來預備修改成通用形式,讓有意製作的人有比dBASE3強的軟體可用。老子有言:「自誇者無功。」在此「自誇」,當然也「無功」。還好軟體這樣東西,可以驗證,是否如實,有使用者可以勘驗。為人設計程式有些像為人建房子,希望建好之後,賓主皆喜。訪香光寺,見有善信合力布施共同為擴建香光寺辦佛學院而努力,頗為感動。後知香光寺未來有意成為佛學資訊中心,願不可謂不大。樂於助成其事,以添一段善緣。
【編者案】:
本系統目前還在測試中,若您對系統軟體設計部份有興趣,請直接與程式設計者連絡。
[回gaya首頁]
[佛教圖書館館訊]
[館訊2期目次]