1 TEI Header 的組織

TEI Header 以及它的元件

應該清楚區分 teiHeader element 和文本本身的 front matter (參見 4.5 Front Matter)。

一個複合文本,例如文集或叢書,可能包含數個 headers,如下所進一步討論的。

然而,通常情況下,一個 TEI-conformant 文本會包含一個單一的 teiHeader element,跟著一個單一的 textfacsimile element,或者兩個都有。

header element 說明如下:

<teiHeader> (TEI標頭) 在所有符合TEI標準的文本起始的電子題名頁當中提供敘述性以及宣告性的資訊。

@type 標明標頭所附屬於的文件類型,例如文集或單一文本。

如上討論的,teiHeader element 有四個主要元件:

<fileDesc> (檔案描述) 包含對電子檔案的完整書目敘述。

<encodingDesc> (編碼描述) 記錄電子文件和其ㄧ個或多個文件來源之間的關係。

<profileDesc> (文件背景描述) 提供文件非書目性方面的細節描述,特別是所使用的語言及次要語言、在何種情況下製作、參與人員及其環境背景。

<revisionDesc> (修訂描述) 概述檔案的修訂歷史。

這些之中只有 fileDesc 元素 是在所有 TEI headers 之中都必須的;其他都是非必須的。

TEI header 的四個元件之中只有一個 (fileDesc) 是強制的,它也有一些強制的元件,如下 2.2 The File Description 所進一步討論的。

最小的可能 valid TEI Header 看起來像這樣:

<teiHeader>
 <fileDesc>
  <titleStmt>
   <title><!-- 資源標題... --></title>
  </titleStmt>
  <publicationStmt>
   <p>(關於資源發行的資訊)</p>
  </publicationStmt>
  <sourceDesc>
   <p>(資源取得來源的資訊)</p>
  </sourceDesc>
 </fileDesc>
</teiHeader>

構成 TEI Header 的元素的內容可以任何語言提供,不需要跟文本的語言一樣,也不需要用英文。

跟別的地方一樣,在適當的層級應該使用 @xml:lang 屬性具體說明所使用的語言。

例如,在下面這個概要的範例中,一個英文文本被提供了一個法文的 header:

<TEI>
 <teiHeader xml:lang="fra">
  <!-- ... -->
 </teiHeader>
 <text xml:lang="eng">
  <!-- ... -->
 </text>
</TEI>

在語料庫或叢書的案例中,可能會想要將 header 資訊記錄在文集或叢書的個別元件層次,或在文集、叢書本身的層次 (更詳細考慮複合文本的標記方式在 15 Language Corpora,應該將它和本章結合閱讀)。

@type 屬性可以用來指出 header 是應用到文集或單一文本。

文集可能採用如下形式:

<teiCorpus>
 <teiHeader type="corpus">
  <!-- 這裏是文集層級的 metadata -->
 </teiHeader>
 <TEI>
  <teiHeader type="text">
  <!-- 這個文本的 metadata -->
  </teiHeader>
  <text>
   <!-- ... -->
  </text>
 </TEI>
 <TEI>
  <teiHeader type="text">
   <!-- 這個文本的 metadata -->
  </teiHeader>
  <text>
   <!-- ... -->
  </text>
 </TEI>
</teiCorpus>

TEI Header 裡的內容類型

出現在 TEI header 裡的元素可能包含數種類型的內容;下面的清單指出這些內容類型如何在以下小節裡描述:

自由散文

大部分的元素包含簡單的某種程度的自由散文(running prose)。

許多元素可能包含散文(可能組織為段落)或者更多特定的元素,這些元素裡面再包含散文。

在本章的元素內容描述中,散文描述(prose description)這個片語意味著一連串的段落,每一個段落標記為 p 元素。

相較之下,片語(phrase) 這個詞則意味著字元資料,視需要穿插片語等級的元素,但是不組織為段落。

更多關於段落、被強調的片語、清單等等的資訊,參見 3.1 Paragraphs

群組元素

名稱最後是 Stmt 的元素 (例如 editionStmttitleStmt) 經常包住一群記錄某些結構化資訊的專門元素。

在書目元素的情況下,後綴的 Stmt 被用在元素的名稱裡,這些元素對應到 國際標準書目描述 (International Standard Bibliographic Description) 裡的「areas」。4

在大多數情況下,群組元素可能包含散文描述作為專門元素集的替代方式,這讓標記者可以選擇以結構化的形式,或是以散文來呈現這些資訊。

宣告

名稱最後是 Decl 的元素 (例如 tagsDeclrefsDecl) 包住應用到該電子文本的具體做法資訊;通常這些具體做法是以編碼的形式來描述。

通常情況下,這些資訊採取一系列宣告的形式,指定一個編碼對應到一些更複雜的結構或描述。

應用到一個以上的文本或文本部分(division of a text)的宣告,不需要在每個文本或 subdivision 的 header 裡重複。

相反的,每個文本(或文本的 subdivision) 的 @decls 屬性可以提供一個交互參照到它被應用的宣告,如同 15.3 Associating Contextual Information with a Text 所進一步描述的。

描述

名稱最後是 Desc 的元素 (例如 settingDescprojectDesc) 包含一個散文描述,可能,但不一定,根據建議的子元素,組織在某些特定的標題下。

TEI Header 裡的 Model Classes

TEI Header 提供了非常豐富的 metadata 種類聚集,但沒有聲稱要徹底窮盡。

當然可能有某個專案,它所希望記錄的專門 metadata 不能套進 TEI Header 預先定義的某個類別裡,或者它需要比這裡建議的更專門的元素結構。

要克服這個問題,編碼人員可能選擇使用 23.2 Personalization and Customization 裡面討論的客製化方法來定義額外的元素。

TEI class 系統讓這樣的客製化更易生效,在交換時更易於使用。

這些 classes 對應到 header 的特定部分:

model.applicationLike 匯集在 header 裡記錄該文件的應用程序特定資訊(application-specific information)的元素

model.catDescPart 匯集可用於元素 catDesc 內、並多次出現的元素

model.editorialDeclPart 匯集可在 editorialDecl 中使用並且可多次出現的元素

model.encodingDescPart 匯集可在 encodingDesc 中使用並且可多次出現的元素

model.profileDescPart 匯集可用於元素 profileDesc 內,且多次出現的元素

model.teiHeaderPart 匯集可在 teiHeader 中使用並且可多次出現的元素

model.sourceDescPart 匯集可在 sourceDesc 中使用並且可多次出現的元素

model.textDescPart 將文本分類的元素,例如以文本的狀況參數來分類。