Chapter 3 數位檔案處理方式與流程
3.2 數位檔案條目建構流程
3.2.9 寫入資料庫及匯出 XML 檔
將上述階段所切割出的條目以及附屬的經緯資訊等一併送入 MySQL 資料庫
中儲存,而後再從資料庫中擷取所需資料製作匯出成 XML 檔以供利用。
在資料庫中共有 546642 筆資料,資料庫之主要欄位屬性說明如下:
cid:條目流水號,從 1 編號至 546642
id:具有經緯架構意義之 ID(參照 3.2.8 節),每個條目皆不同
collection:彙編名
canon:典名
section:部名
latitude_i:緯度一名
latitude_i_order:緯度一編號
latitude_ii:緯度二名
latitude_ii_order:緯度二編號
latitude_iii:緯度三名
content_type:儲存資料類型,分為目錄與內容兩類
content:實際儲存資料字串
volume:卷號
page_info_from:資料在紙本出現的開始頁
page_info_to:資料在紙本出現的結束頁
real_content:是否為實際條目。目錄及虛緯度層的資料為"False",實緯度 層的資料為"True",為實際條目,在實緯度層但無任何內容的條目為"True but dummy"(參照附錄二)
XML(eXtensible Markup Language)為一種標記式語言,利用標記後之標籤設計 傳送及攜帶結構化的資料訊息,透過此種標記,可以使電腦處理包含各種訊息之 資料。在 XML 檔各個標籤的說明如下:
<Doc>:表示為一個完整條目,內含<Content>及<DocMetadata>兩個子標 籤
<Content>:表示條目之實際內容
<DocMetadata>:表示條目之附屬資訊,並含有以下子標籤:
<Filename>:表示條目之 ID
<Corpus>:表示為《集成》之條目
<Volume>:表示卷號
<Title>:表示分類架構,以經度一、經度二、經度三和緯度一組成
<Index1>、<Index2>、<Index3>:分別表示經度一、經度二、經度三 之名稱
<Latitude1>、<Latitude2>、<Latitude3>:分別表示緯度一、緯度二、
緯度三之名稱。其中<Latitude1>、<Latitude2>分別含有以下子標籤:
<Latitude1_name>、<Latitude2_name>:表示緯度名
<Latitude1_branch>、<Latitude2_branch>:表示緯度編號
<Real_Content>:表示是否為實際條目(參照上述資料庫欄位屬性之 real_content)
Fig. 3-11 XML 檔範例
匯出 XML 檔後,便可以 THDL 模型系統呈現各條目架構化後之資料,詳細 THDL 介面與功能請參照第五章。
3.3 例外處理與其他觀察
除了在 3.2.6 節目錄內容項目不符的例外以外,以下列舉其他發現到的例外與 觀察:
緯度一的最高編號為五百,發現於博物彙編/藝術典/醫部彙考,可見醫 學長久以來在中國的重要性及資料的豐富性。
緯度一不止有彙考、總論等八種,另外發現了其他緯度名稱:
別傳:發現於理學彙編/經籍典/易經部易學
雜傳:發現於經濟彙編/祥刑典/盜賊部
表:發現於經濟彙編/選舉典/科舉部
在別傳及表的例外處理部份,ID 之 Y1分別新增編碼為 0009 與 0010;雜 傳由於盜賊部的緯度一缺少列傳,且雜傳的格式相似於列傳,因此設 Y1
編碼同列傳為 0003。
Fig. 3-12 經濟彙編祥刑典盜賊部雜傳一紙本目錄
有些應為三層緯度架構的條目實際只有兩層架構,舉例如下:
理學彙編/學行典/聖門諸賢部列傳一:缺少第二層
Fig. 3-13 理學彙編學行典聖門諸賢部列傳一紙本目錄
明倫彙編/官常典/將帥部彙考五:缺少第三層
Fig. 3-14 明倫彙編官常典將帥部彙考五紙本目錄
由於僅有兩層架構,因此將 ID 之 Y3設定為未使用的 9999,其餘編碼規 則不變。
在總論與列傳的子緯度(緯度二)之朝代列表整理如下:上古、陶唐氏、
有虞氏、夏后氏、夏、殷、商、周、秦、漢、後漢、魏、吳、晉、宋、
齊、南齊、梁、陳、北魏、後魏、北齊、北周、隋、唐、五代、後梁、
後唐、後晉、後周、南唐、遼、金、元、明、皇清(註:《集成》中所提 及的「後漢」幾乎都為現今所稱之「東漢」)。