文獻處理實驗室 論文目錄

第一屆中國文字學會學術討論會天津 1996年8月25-30日

電子古籍中的缺字問題

Page 7 of  8

肆、應用

在本章中將舉三個與缺字有關的應用依次說明。首先報告用本系統設法解決電子佛典缺字的計畫。其次介紹利用字形資料庫改良資料登錄系統的規劃。最後觸及根本問題希望從本文的理論與經驗中重新考量交換碼的設計。畢竟造成缺字問題的元兇就是目前的交換碼。

一、電子佛典缺字的解決方案

佛教典籍多屬古書其中常有當時通用之字形與現代的「標準」字形並不一樣。在台灣有許多機構正在製作電子佛典一則為了流通二來為了保存典籍。可是缺字問題卻造成流通和保存上致命的障礙。為此台灣大學文學院佛學研究中心邀集各機構擬共編一套《電子佛典補充字集》來解決問題。幾經商議同意由本實驗室負責技術工作。這個工作規劃實是一個典型解決缺字的方案。

參加機構所製作旳佛教典籍計有:《大般若經》、《禪藏》、《佛光大辭典》、《丁福保佛學辭典》、《律學辭典》、《大正藏第九冊》以及近代的套書《妙雲集》等。各機構先匯集缺字並查明其屬性後送交本實驗室合併處理。

莊德明先生曾就送來的缺字予以分析發現甚多是由於字體不同而產生的分毫字樣。這些字目前暫不處理餘者分類如〔表九〕。表中除第二類屬結構變化外餘皆屬字根與部件的變化。這些字大多是異體字可登錄在字形資料庫中目前已存入500多字。【註十一

這些字存入Big-5碼中亦有規定詳如〔表十〕。由於造字空間只有5809在使用上至少應分成公用造字區及專屬造字區。若造字使用頻次較高者應置於公用造字區;頻次較低者則依個別的需要而置入專屬造字區。然而在造字初期若無頻次的統計資料可先收錄佛經中非咒文的用字。佛典用字除了漢字以外還有特殊符號包括外文字母、流水號及佛典常用的符號。流水號的編號有「1、2、3……」、「一、二、三……」、「壹、貳、參……」、「甲、乙、丙……」、「子、丑、寅……」等外框樣式則有「○、()、●……」等以五大碼有限的造字空間自不可能將這些流水號通通收錄目前只為流水號預留100個位子。

常用的外文字母包括梵文、巴利文、藏文及日文。造字區第四段C6A1-C8FE在倚天中文系統下另有定義其中就包括了日文字母為兼顧倚天及中文視窗使用的一致性這一段我們不用。另外依據臺大佛學研究中心「梵巴藏羅馬字轉寫與中文軟體的相容問題」討論會議結論有鑒於五大碼造字空間有限目前只收錄32個梵文、巴利文及藏文的轉寫字母。規劃下來真正能給補充字集用的有四千個字位應該可以用一段時間。如果這四千個位置都滿了則可用字形位標來借用其他碼的造字空間存放。

表九:異體缺字的分類

類別

說明

字形

1

字根

「厂鵷蛂v→「廚」、「@魊s」→「寵」

2

位置

「山鯓陛v→「峰」、「C飽v→「鄰」

3

筆勢

「韙」→「犁」、「去M」→「劫」、
「乃韙魽v→「朵」

4

古今

「屯C」→「村」、「糬]」→「貓」、
「石矷v→「礙」

5

累增

「顒G」→「果」、「Q穨[」→「吝」、
「蕊韙魽v→「蕊」

6

錯字

「禰B」→「但」

表十:Big5造字空間的劃分

二、資料登錄系統之重新設計

資料登錄時常遇缺字其後果與代價已如前述。為改善這些缺失我們規劃了一個利用字形資料庫、網路以及視窗多功能等特性的新資料登錄系統其流程示意如〔圖十〕。

圖中有兩種作業即資料登錄和登錄管理。配合的作業員甲的工作是打字乙是缺字管理。一個乙可以同時和許多甲配合工作數量多少視原始文件缺字情形而定。兩種作業用相同的視窗操作系統並用區域網路連接是故資料及控制的信息皆可線上互相傳遞。當缺字發生時打字員只要鍵入字根序或部件序的形標其餘的事便全由電腦或乙來完成了。

乙在螢幕上隨時可見到剛發現的缺字形標。如果許多甲都發現相同的缺字電腦在「新字形登記」時會自動將重複排除。當乙收到缺字的形標可以立刻翻閱文獻將各項新建字形工作完成。這個程序要花些時間但比起現在的人工作業已經快了許多我們估計就算半個小時應付一個新字已經和以往費時數日的情形不可相提並論。以後將字書存入電腦後可以在線上直接查缺字屬性這些工作還會加快。新增的字形可定時更新字形資料庫並修正打字初稿。這個系統目前仍在設計階段尚未完成。

圖九:資料登錄系統流程圖
圖九:資料登錄系統流程圖

 

三、改良交換碼的建議

目前交換碼的根本病源是錯把字形當作字。在此名實不符的情形下名叫字碼(character code)而實際上卻以字形的差異來判別字。例如五大碼中饑(C4C8)和飢(B047)分別佔兩個碼位。那麼它們是不是同一個字呢?依碼中的定義不是;但在語用上實在是同一個字的兩個形罷了。這種情形在各交換碼中比比皆是,UnicodeISO10646也不例外。從文字學和語言學的角度看來這種文字知識的表達根本是錯誤的不健康的。從科學的角度來看定義都錯了往後推演可以勿論。像這種不健康的設計導致目前應用上捉襟見肘毛病百出並不是意外的事。要改善交換碼自應從此處下手。

此外應知漢字集合從集合論的觀點來看是一個開放集合(open set隨時可能增加字。它和封閉式的字母集合(close set)不同字母是不會再增的。這些基本性質的不同將導致其不同的性質和處理方式。可是目前的做法卻是套用ISO 646處理字母的方法來編漢字的碼。這真是削足適履。以上的說明和批評是希望大家了解要改良現有的交換碼必須要爭脫既有的思考巢臼否則不會有徹底解決的辦法。以下就是我們根據上述的原則對改善現有交換碼所提出的方案。

(一)三段式的編碼

首先我們建議對字、字形、字體分三段編碼如〔圖十〕:

圖十:字碼、字形碼、字體碼、風格碼的關係

圖十:字碼、字形碼、字體碼、風格碼的關係

若字形附碼與字體附碼都用時則前後不拘此時若只選字體而無字型參數則稱風格碼(style code若含有字形參數則稱為字樣碼(type face code)。字碼的使用與現在使用交換碼相用。字形碼、字體碼風格碼或字樣碼等則可以用前述之漢字形標載之與字碼一起用。字樣碼可能較長因為其中可能包括許多字型的參數這無關本文主旨詳情略而不談。字形附碼只是一個正整數的編號。在本系統中它可以用來區別異體字也可以用來存放某字集中所用的字形。例如我們把《中文電腦基本用字》表中的繁體放在字形附碼為1的位置把大陸標準簡體字放在2的位置上。這樣使用字形附碼的方式可以存放更多的文字信息。

(二)各碼表達的忠實度

這種編碼方式的使用可由其傳輸失真的程度上分為下列四種組合:

  1. 只用字碼時失真最大。此時不在乎所用的字形或字體如台灣和臺灣都是一樣只求明白語義就好。許多應用至此已可滿足。
  2. 用字形碼時表示還要求正確的字形;用字體碼時重在選定字體(不在乎字形)。這情形比上列的情形失真少。
  3. 用風格碼時失真又比前者少。不止字形要對字體也不能錯。
  4. 用字樣碼時幾無失真字的大小、粗細、……使用者與接收者完全一樣。

以上四種情形可斟情使用以應付不同的需求。這是分成三段碼能提供的彈性。

(三)構字式的運用

每個字形的構字式都不相同所以它可用作字形的識別碼。這情形在討論漢字位標及形標時已述及。此節說明此觀念在設計交換碼的可能做法。

用構字式作字形碼最大的好處是它是一個封閉系統:只要有一個封閉的字根集合配以〔表四〕的規則就行了。如此便可省去成千上萬的碼位。《交大字根系統》用496個字根就能產生48713字形的碼並且還有不需要修改系統就能對付新字或缺字的彈性就是最好的例子。其次構字式是一種知識表達它不僅較數字碼易讀易懂所孕藏的構字知識更有利於應用程式的處理。然而它的缺點是構字式長短不一也嫌它太長以致用起來較不經濟。

部件序或根序較構字式簡潔許多用它們來替代構字式是很自然的想法。以《中文電腦基本用字》的9122個字形加上629個部件,457個字根亦可產生48713個字形。此時9122個形只用一字碼而其餘約4萬字每個構字序卻可簡潔如15頁的那11個式子。換言之可用漢字形標來表示剩下的四萬字形每個字形之長度僅二或三個字碼。由於9122個字形的累積使用頻率已高於99.9%,餘下千分之一以下的機會用較長的碼對系統之效率影響極為有限。所以善用構字式實是改善目前交換碼的一個好方法。


註十一】 詳見莊德明,〈佛典共用造字集的規劃〉1995,及〈佛典共用造字集的整理〉,1996,文獻處理實驗室,中研院資訊所


Page 7 of  8
上一頁

下一頁

文獻處理實驗室