聖徳太子御製『勝鬘經義疏』でText Encoding Initiativeを

このブログでは、長らくTEI (Text Encoding Initiative) ガイドラインについて扱ってきました。このたびは、 大正新脩大蔵経にNo. 2185として収録されている聖徳太子御製『勝鬘經義疏』をTEI(Text Encoding Initiative)ガイドラインに準拠してマークアップしてみたものを公開いたしましたので、 構造的な側面について少しご紹介させていただきます。

これを公開している頁は以下のURLになります。

https://21dzk.l.u-tokyo.ac.jp/SAT/sat_tei.html

TEIガイドラインでは、テキストを電子的な出版物ととらえて、それのみで流通しても通用することを目指しています。そこで、必ず ファイルには必ずヘッダを含めることになっています。ここには、その文書に関する様々な情報が入ります。 上記のTEI/XMLファイル中では <teiHeader> - </teiHeader> に囲まれた箇所になります。

この文書の場合、以下のようなものとして成立していますので、これらの情報がTEIガイドラインに沿ってteiHeaderの中に書き込まれています。

  1. 大正新脩大蔵経(という仏典叢書)所収のテキスト
  2. 聖徳太子が書いたとされる
  3. 四つの対校本を対校した校異本
  4. SAT大蔵経テキストデータベース研究会として作成公開したもの
  5. CC BY-SAライセンスで公開されている

次に、c. として挙げた校異本のうち2点は国立国会図書館からIIIF対応のデジタル画像が公開されています。 また、デジタル化の対象となった本の画像もSAT大蔵経テキストデータベース研究会から公開されています。 そういったデジタル画像の情報を記載しています。 上記のTEI/XMLファイル中では <facsimile> - </facsimile> に囲まれた箇所になります。 一つのfacsimileが一つのIIIF Manifest ファイルに対応し、一つのsurfaceが IIIF Canvas URIに 対応し、一つ一つの画像はgraphicに対応する、という形で記述されています。また、 テキスト本文と頁画像中の冒頭箇所を対応づけるために、各頁を示すsufaceタグにxml:idを付与しています。

そして、テキストデータの本文があり、本文は『勝鬘師子吼一乘大方便方廣經(勝鬘経)』の注釈書となっており、 一部には著者の意見が述べられています。ちなみに、この注釈対象となっている『勝鬘経』は、 舎衛国の波斯匿王の娘である勝鬘(シュリーマーラー)という(お坊さんではない) 一般信者の女性が大乗仏教の教えを仏陀の前で説くというもので、現代日本語訳がオープンデータとして公開されていますので、ぜひご一読ください。

この『勝鬘経』は、出家をしていない、いわゆる在家信者の、しかも女性が教えを説いたお経ということで注目をされたのかもしれませんが、 そのことを仏教の思想体系の中にどう位置づけるか、ということがこの注釈書『勝鬘經義疏』の注目ポイントです。

とはいえ、今回はTEIガイドラインの解説ですので、内容には踏み込まず、マークアップの方の解説に入ります。

テキスト本文(TEI/XMLファイル中では <text> - </text> に囲まれた箇所)の主な要素は、以下のようになっています。

  1. 『勝鬘經義疏』におけるいわゆる本文テキスト
  2. 『勝鬘経』から引用されたテキスト
  3. 固有表現(人名、地名、書名等)
  4. 割書
  5. 脚注(大部分は校異情報)
  6. 返り点
  7. 大正新脩大蔵経における行番号
  8. 大正新脩大蔵経における頁番号

そこで、それぞれについてTEIガイドラインの中から該当しそうなタグをチョイスしてマークアップしていきます。 マークアップは、テキストデータの状況次第ではかなりの部分を自動的にできます。上記のファイルを見て 「こりゃ無理だわ・・・」と思った人もおられると思いますが、難しい部分は大体自動的にタグ付けしてます。

1. 『勝鬘經義疏』におけるいわゆる本文テキスト

さて、1. に関しては、とりあえず章ごとに<div>、段落とおぼしきところは<p>でマークアップして、 さらに、構造的にリストになっているところは、<list> - <item><item> でリスト化しました。

2. 『勝鬘経』から引用されたテキスト

  1. に関しては、まず<quote>を用いた上で、@sourceでSAT DB 2018 の行番号・文字番号を記載しました。 (SAT DB 2018 の行番号・文字番号は、サイト上でテキストをドラッグすると取得できる機能があります。) たとえば以下のような感じです。
<quote source="T0353_.12.0217a07_12-0217a07_18">祇樹給孤獨園</quote>

ただし、文言が若干違うものの同定できると思われるものについては@corerspで参照しました。 これは、 矢印などで引用関係を示す際に矢印の色や形を示して提示したり、引用関係を統計的に処理して分析したり するときに役立つのではないかと思っております。また、興味深いことに、そのような事情で@corerspを 伏した引用関係の中には、大正新脩大蔵経において校異情報として記載されている甲本・乙本と一致する箇所が 結構ありました。このことから言える可能性は様々にありますが、興味深いテーマであると言えるでしょう。 (まだ調べてませんが、本書は敦煌文書の類似の本との関係が取り沙汰され研究されたことが ありますので、すでにこのことについてはその際に研究成果が出ているかもしれません。いつか 調べてみたいと思います。)

3. 固有表現(人名、地名、書名等)

  1. に関しては、たとえば仏陀は如來や釋迦、佛など、様々な名前で文中に登場する一方、「如來藏」 などの、直接には仏陀を指さない「如來」という文字列も含まれます。そうすると、仏陀を指し示す 表現のみを抽出しようと思ったなら、そこら辺を事前に人手で仕分けしておくとやりやすくなりそうです。 人が読んでいく過程では、どれが人名でそれはどの人を指しているのか、という判断をしながら 読んでいきますので、その際に「これは誰の人名か」ということをメモしていければ後々便利です。 それを、みんなで共通の「タグ」でやっておけば、しかも本文中に埋め込んでおけば、どこの ことかわかりやすくて便利ですよね、というのがここでのTEIガイドラインの役割です。 人名以外にも、地名や書名(経典名)も登場します。

それらの「同定」情報をどのように記述しておくかと言いますと、ここでは、TEIガイドラインではなく TEIガイドラインが現在依拠しているマークアップ言語であるXMLの機能に依拠することになります。 XMLでは、各エレメント(タグ)に、「id」をつけることができます。この「id」は、一つの 文書の中では必ずユニークでなければなりません。そこで、たとえば、仏陀なら「仏陀」 勝鬘なら「勝鬘」というidをつけておきます。そうすると、これらのidは、その文書内では、 それぞれ「#仏陀」「#勝鬘」という案配で「#」をつけることで固有のエレメント(タグ)として 参照できるようになります。さて、そうすると、「佛」と出てきても「如來」と出てきても とりあえずそれらに「#仏陀」とつけておけば、それらはすべて「仏陀」というidを持つ共通の 内容として扱うことができるようになります。同様に、たとえば「我が娘」という表現が 出てきた時に、それが勝鬘のことであれば「#勝鬘」とつけておけばよい、ということになります。 地名や書名についても同様です。たとえば以下のような感じです。

<rs corresp="#勝鬘">我子</rs>

さて、では、そのようにして、参照されるidがついたエレメント(タグ)をどこに置いておくか、 ということが次に出てきますが、これは</text> の次に出てくる<back> - </back> にて、listPerson、listPlace等の中に登場する、ということになります。そして、それぞれの 固有表現について、さらに詳しい情報を付与しておきたいときも、ここに記述してしまいます。 たとえば、経典名のところを見ていただくと、以下のように大正新脩大蔵経のテキスト番号が idnoタグで付けられているのがわかると思います。大正新脩大蔵経にリンクできれば、そこから さらに色んな情報を一気にたぐり寄せることができますので、ここでは単にそれだけ 記述していますが、目的次第では、ここにさらに様々な情報を 記述していくことになります。

            <bibl xml:id="法鼓經">
               <title>法鼓經</title>
               <idno type="Taisho">T0270</idno>
            </bibl>

4. 割書

割書は、このテキストには一カ所だけでてきます。ただし、割書は、改行が入った場合の扱いが独特です。 行頭まで戻らずに、その割書内の冒頭に戻ります。そこで、割書内の改行は、TEIガイドラインにおける 通常のlbタグではなく、milestoneタグを使って仮につけています。この点はTEIガイドラインの改訂すべき 点の一つとして検討しています。

5. 脚注(大部分は校異情報)

脚注のほとんどは校異情報ですので、TEIガイドラインではCritical Apparatusとして3種類の記述方法が用意されています。 ここでは、複雑な校異関係を持ったテキストの情報を記述するのに強い、Double End-Point Attachment Methodを採用しています。 こんな複雑なものを入力するのか・・・と思われた人もおられるかもしれませんが、これは、大正新脩大蔵経のテキストデータに すでに脚注情報がある程度構造化されて入っているため、それを半自動的に変換しており、複雑なものだけを少し 手で修正するだけです。ここでは、本文中の校異がある箇所の最初と最後に anchorタグを入れて位置決めをしてそれぞれにXMLのidを 付与し、<back> - </back> の方に校異情報一覧を掲載してそれぞれのidを参照し、あとは、それぞれの校異情報を記述していきます。 どれがどの校本かというのは、すでにteiHeaderの中でリストしていますので、そこで各校本の情報を表すタグに付与されたidを参照しています。 例として2つ挙げてみると以下のような感じになります。

            <app from="#tft_0006_10" to="#tft_0006_10e">
               <lem wit="#原 #丙"></lem>
               <rdg wit="#乙 #甲">法比</rdg>
            </app>
            <app from="#tft_0006_11" to="#tft_0006_11e">
               <lem wit="#原 #丙">亦可見</lem>
               <rdg wit="#甲 #乙"/>
            </app>

6. 返り点

返り点は、大正新脩大蔵経に付されていたものをそのまま使っています。チェックしていくと、少し間違っているようなところも散見されるのですが、 第一段階として、まずはそのままマークアップしています。返り点記号はすでにUnicodeに入っていますので、ここではそれを用います。ただし、漢文のみを取り出すときにこれらの文字をスキップして取り出さねばならない、という データになってしまうと扱う難易度が一気に高くなってしまいますので(特に、日本語を理解できない人がデータを触れなくなってしまいますので)、 ここでは、Unicodeの返り点記号を用いつつも、タグもつけておきます。こういう場合のタグとして何を使うべきかは まだ定まっていないので、ここでは一つの提案として、以下のようにしてみています。ちょっと冗長に見えるかもしれませんが、 日本語を解さない人にでもなるべくうまく処理してもらえるようにするというのが一つの大事なポイントですので、ここは このような感じにしておきたいところです。

<metamark function="kaeriten"></metamark>

7. 大正新脩大蔵経における行番号

大正新脩大蔵経の頁番号・行番号は、元々大正新脩大蔵経自体が国際的な参照本となっている上に、SATとCBETAが この行番号を付与する形でデジタルテキストを世界中に流通させたため、デジタル世界でもスタンダードになって います。世界中のほとんどの仏教学者が、「大正新脩大蔵経の何巻の何頁の何段目の何行目」と言われれば 同じ仏典の同じ行を参照することができるようになっています。そこで、TEIでの行頭を表すタグ lbに、この 行番号を付与しておきます。

8. 大正新脩大蔵経における頁番号

頁番号についても同様で、頁の始まりを示すタグ pb をつけておきます。ただし、頁番号の場合は、 頁画像の始まりとの対応づけにも意味が大きいので、上述の画像の頁のid(=IIIFのcanvasに対応するsurfaceタグに付与したXMLのid)を付与しておきます。 たとえば以下のような感じです。

<pb corresp="T56_0019.json"/>

おまけ

さて、これでマークアップした要素の大部分はご説明できたかと思います。あとは、対校本の画像とそれに対応する 頁番号も一つだけ(大日本仏教全書のものだけ)つけてみています。これも、国立国会図書館デジタルコレクションから IIIF対応で公開されているため、上述のように、IIIF Manifestの構造をfacsimile - surface - graphic として記述して surfaceに XMLの id を付与した上で、参照すればよいということになりますが、ここでは仮に以下のように しています。milestone の@unit は"page"とすべきなのかもしれませんが、せっかく頁の最初なのでpage beginningという 情報を残しておくべく、仮にpbとしています。

<milestone unit="pb" corresp="#DR0000004"/>

終わりに

ということで、今回つけたタグの説明はおおまかにはできたかと思います。このうち、固有表現や返り点などをうまく 表示してくれるビューワを、東京大学情報基盤センターの中村氏が作ってくださっているので、よかったらぜひ 試してみてください。以下のURLで、このTEIファイルを読み込んで表示してくれるはずです。

tei-eaj.github.io

今後、このような形で、仏典だけでなく様々なテキストが利活用されやすい形で作成されていくとありがたいと思っております。 これをみて自分のところでもやってみようと思われた方はご連絡をいただければなるべく対応いたしますので(この時期だとZoomでということに なると思いますが)、よろしくお願いいたします。