文獻處理實驗室 論文目錄

中國古籍整理研究出版現代化國際會議•北京 1995年7月22-24日

古籍校讀工具
「中文文獻處理系統」的設計

Page 3 of 5

肆、文件在計算機中之表達

一、文件之字串形式

原始文件(以D表示,下文仿此)經打字後即變成該文件之一種字串形式,此字串形式之文件,其文字部份和原始文件相同,然而其文字間或夾有標誌符號,以載明原始文件之一些版面特徵,諸如頁次、夾注等等。換言之,在輸入時,為保留原書之版面訊息,吾人常加入表示版面結構之標誌。此形式之字串稱為原始文件的「輸入字串」(Di)。

為了使計算機能明了原始文件的內容結構,如目錄或科文等,或是欲使計算機能識別一些與文件內容有關的文句,如檢索詞或句讀等等,便須在Di中加入一些特殊的標誌符號,即加入結構標誌與內容標誌,以資認別註六。加過這些標誌後的文件字串稱為「加標字串」(Dm),而此Dm即可讀入計算機中處理。

設若計算機中有一編譯器(Compiler)可以解讀上述之各種標誌,則在編譯器處理過Dm後,可產生三種樹狀結構的標誌檔案。這些檔案除保有原標誌的信息外,還有該標誌指向它在Dn中位置的指標(pointer)。而Dn則是將Dm中所有標誌均剝除後,所得到的字串,稱之為「正字串」。這些關係如圖二所示。

文件之各種字串形式和文件在計算機中的表達示意圖

圖二、文件之各種字串形式和文件在計算機中的表達示意圖

在本文所討論之文件,都假設已是Dn的形式,而科文的結構則是上述的那種樹狀結構檔案。註七如果Dn只是一部佛經的原文,那麼問題就很單純了,我們可以直接探討多版本的表達與彼此間對映的方式。如果Dn中夾有注疏、校勘、評論、句讀等等不是本文的註解,則我們可以將該經之原文和註解分開,即分Dn為兩個字串Dnt和Dne;其中 Dnt表示Dn中之正文部份,即「正文字串」,而 Dne表示 Dn中註解部份,即「註解字串」,如圖三所示。由於Dn,Dnt或Dne的內容或彼此的關係都是不允許更改的,我們仍然可以得到原經文之字串Dnt去做多版本之表達。故為方便計,下文中我們直接用Dn 來討論多版本表達的方法。

經書中正文字串和註解字串之映射關係

圖三、經書中正文字串和註解字串之映射關係,斜線部份表

示正文,空白部份表詳註解文字

二、版本間的對映

在此,讓我們用《般若波羅蜜多心經》(簡稱《心經》)的版本作例子來說明各版本的表達與彼此間對映的方式。依周止菴的蒐集,《心經》現存共有十五個不同的版本;其中有八譯本由梵譯漢而得,有二譯本為梵文之音譯,有五譯本則是由梵譯為藏,再由藏譯為漢。註八今取鳩摩羅什及玄奘兩譯本為例,原文如表二中所示。

表二:《心經》兩版本原文

鳩摩羅什

觀自在菩薩。行深般若波羅蜜多時。照見五蘊皆空。度一切苦厄。舍利子。色不異空。空不異色。色即是空。空即是色。受•想•行•識•亦復如是。舍利子。是諸法空相。不生。不滅。不垢。不淨。不增。不減。是故空中無色•無受•想•行•識。無眼•耳•鼻•舌•身•意。無色•聲•香•味•觸•法。無眼界。乃至無意識界。無無明。亦無無明盡。乃至無老死。亦無老死盡。無苦•集•滅•道。無智。亦無得。以無所得故。菩提薩埵。依般若波羅蜜多故。心無罣礙。無罣礙故。無有恐怖。遠離顛倒夢想。究竟涅槃。三世諸佛。依般若波羅蜜多故。得阿耨多羅三藐三菩提。故知般若波羅蜜多。是大神咒。是大明咒。是無上咒。是無等等咒。能除一切苦。真實不虛。故說般若波羅蜜多咒。即說咒曰。揭諦。揭諦。波羅揭諦。波羅僧揭諦。菩提薩婆訶。

玄奘版

觀世音菩薩。行深般若波羅蜜時。照見五陰空。度一切苦厄。舍利弗。色空故。無惱壞相。受空故。無受相。想空故。無知相。行空故。無作相。識空故。無覺相。何以故。舍利弗。非色異空。非空異色。色即是空。空即是色。受•想•行•識亦復如是。舍利弗。是諸法空相。不生。不滅。不垢。不淨。不增。不減。是空法非過去。非未來。非現在。是故空中無色。無受•想•行•識。無眼•耳•鼻•舌•身•意。無色•聲•香•味•觸•法。無眼界。乃至無意識界。無無明。亦無無明盡。乃至無老死。亦無老死盡。無苦•集•滅•道。無智。亦無得。以無所得故。菩薩依般若波羅蜜故。心無罣礙。無罣礙故。無有恐怖。遠離一切顛倒夢想苦惱。究竟涅槃。三世諸佛。依般若波羅蜜故。得阿耨多羅三藐三菩提。故知般若波羅蜜。是大明咒。是無上明咒。是無等等明咒。能除一切苦。真實不虛。故說般若波羅蜜咒。即說咒曰。揭帝。揭帝。波羅揭帝。波羅僧揭帝。菩提僧莎呵。

在表二中的經文,其句讀符號參夾在正文中,這是為了讀者易於閱讀的關係。在計算機的經文正字串中,並無句讀符號,是故在計字數或算計字的位置時,勿將句讀符號計入。

如果將此二版本分別存在計算機中,而不表明此二版本間對應的關係,我們認為是無意義的,因為計算機在此情況下實難對它們做內容之比對和做任何進一步的處理。表明版本間對應關係的方法有兩種,其一是依據內容之分段作版本間比對的準繩,例如用科文。我們可以把對映於同一種科文節點的各版本文字來做比較,在下文中,我們將以實例對這個方法做說明。其次,是用前述之字串運作指令,將版一本改變為另一版本來觀察此二版本之間的關係。茲將鳩摩羅什版改變為玄奘版的程序列如表三中以為參考:

表三:將鳩摩羅什版《心經》轉換為玄奘版《心經》之程序

1、斷詞取代 〔鳩<“觀世音菩薩>,“觀自在菩薩;
        鳩<“般若波羅蜜>,“般若波羅蜜多;
        鳩<“舍利弗>,“舍利子;
        鳩<“五陰>,“五蘊
2、取代 〔鳩<18,1>,“皆空;鳩<64,4>,“色不異空;
      鳩<68,4>,“空不異色;鳩<86,2>,“菩提薩埵;
      鳩<301,3>,“莎婆訶
3、刪  〔鳩<24,37>;鳩<108,12>;鳩<210,2>;鳩<216,2>;
      鳩<257,1>;鳩<263,1>;
4、增  〔鳩<249,->,“是大神咒

茲將此程序之義意說明如後:「斷詞取代」的指令是要求計算機先在文件的正字串中認出某一字串,如例中之“觀世音菩薩”……“五陰”等,並以另一字串,即如“觀自在菩薩”...“五蘊”去分別替入。在此指令中,「鳩」表示鳩摩羅什本《心經》正字串之檔案名稱,如:鳩<“舍利弗”>即表示在鳩摩羅什本《心經》中任何位置上凡是有「舍利弗」字樣者,餘仿此。

「取代」指令是指某正字串中某一位置之字串,以後列之字串取代之。例如:「鳩<86,2>,“菩提薩埵”」表示本《心經》中第86個字開始長度為2之字串(即“菩薩”),用“菩提薩埵”取代。而刪〔鳩<24,37>〕則表示本《心經》中第24個字起刪37個字。增〔鳩<249,->,“是大神咒”〕則表示在本《心經》第249個字之前(“-”表示之前,“+”表示之後)加入“是大神咒”四字。

用這種方法,可以十分簡易地將一個版本轉換為另一個版本。是故計算機中若存有一版本之正字串,以及存有將其轉換為另一版本之程序時,則無必要保存第二個版本之正字串。依此類推,則無論有多少版本,只要保存一個版本,並保留這個版本轉換為各其他版本之程序即可。

由於這些版本的文字都是不容改動的,所以版本間換的程序亦可自動地從一個方向的程序產生反方向轉換的程序。例如,有了本轉換為玄奘本的程序,則可自動地得自玄奘本轉換為鳩本的程序。也正因此,若有多版本的情形,各版本間直接轉換的程序,皆可自動獲註九

其次,在上例中,字串間的轉變均以詞為單位。這是因為考量到使用上給使用者方便的關係。如:以「舍利子」取代「舍利弗」而不以「子」取代「弗」,又如:以「皆空」取代「空」而不是在「空」之前加入一「皆」字等。這樣做的好處是可以產生詞彙的對照表如「舍利子」之於「舍利弗」,產生語意的對照表,如「非色異空」之於「色不異空」....等等。這些性質將大有助於文件內容之比對和檢索。


註六】 張翠玲等,<文件結構標誌手冊>,中央研究院資訊科學研究所文件處理研究室第83001號技術報告,1994

註七】 關於標誌(markup)部份,可參閱ISO 8879 SGML (1986)。關於文獻之表達方面,可參照謝清俊等<談古籍之電子版本>(海峽兩岸中國古籍整理研究現代化技術研討會論文集,北京,中文信息學會,1993)

註八】 周止菴,《般若波羅蜜多心經詮注》(台北,華藏佛教圖書館印,1992),3-22頁。

註九】 此證明甚簡單,但因省篇幅故從略。


Page 3 of 5
上一頁

論文目錄

下一頁

文獻處理實驗室