源氏物語の鑑賞支援ツール


源氏物語の鑑賞に役立ちそうなツールを開発・整備しようという企画が、IPA(独立行政法人 情報処理推進機構)の未踏ソフトウェア創造事業に採択されました。私が提案したもので、源氏物語の鑑賞支援ツールの開発・整備がそれです。その開発のベースは、私のサイト「源氏物語の世界 再編集版」(以下、単に再編集版と呼びます)です。2004年度の第2回の公募に応募したところ、採択されました。 この企画は2004年12月〜2005年8月末に実施しました。

このページは、この企画での開発の方向が固まった時点(2005年6月)で、その採択の経緯や開発目標、処理方式などを整理したものです。

なお、この企画は2005年度の第2回の公募でも継続採択されました。「源氏物語の鑑賞支援ツールの実用化」がそれです。
 

おことわり  説明文中、一部、敬称を省略させていただいている部分があります。文中でテキスト名やコメント名と呼んでいるものについては作者の名前を敬称略で含めるため、それに関係する部分で、敬称を省略させていただきました。あしからず、ご了承ください。

まずは、採択の経緯から。

もともとは、「源氏物語の世界 再編集版」で今後の課題に挙げていた項目をIPAから資金的な援助を得ることで、周囲の協力を取り付けて推進しようと考えて提案したものでした。しかし、採択されたのは、この今後の課題に対してではなくて、これを推進するための仕掛けの整備に対してでした。私が提案したようなコンテンツの整備は、青空文庫でやっているような形でボランティアによる協力者を募って行うべきだというのです。


 

つまり、今回のプロジェクトの目標は、ボランティアなどの第三者が、コンテンツを容易に拡張できること、しかも、複数の第三者が独立に拡張作業を行っても、混乱なく、容易にコンテンツが拡張できることになったのです。
次の図は、この目標のイメージを説明したものです。白い部分は、現在の「源氏物語の世界 再編集版」にすでにある部分、水色の部分が、今回の目標とする部分です。

つぎに、この目標の実現方法を説明しましょう。
複数の第三者が関与して混乱なく更新できるようにするには、今の「源氏物語の世界 再編集版」のような、バッチの再編集プログラムを 実行してすべてを一括生成するような方法ではうまくいきません。できるだけ小さなファイルに小分けして、独立に更新できるようにする必要があります。

いまでも、再編集版は段ごとにファイルが分かれているので、小分けできているように思えますが、段ごとは少々細かすぎます。帖ごとか、若菜のような大きな帖でも章ごと程度が便利だと思います。

また、複数の人が関与するといっても、人によってテーマは違っていることが多いので、テーマごとにファイルは分かれていたほうが便利です。たとえば、輪読会などの進度にあわせて、複数人で手分けしてデータを整備する場合、皆、同じ帖や章を対象にしますが、人によって、注釈を整備する人、現代語訳を整備する人、挿絵などのオブジェクトを整備する人、などに分かれることになるでしょう。そこで、ファイルもこのような分類ごとに分かれている方が望ましいのです。

もともと、渋谷教授のサイトでは、本文、注釈、現代語訳、ローマ字版の4つに分かれていました。それに戻せばよいのでしょうか。

必ずしも、そうではありません。つまり、以下のような条件があるからです。

  1. 複数人が関与するので、ファイルは帖/章ごと、かつ、テーマごとに分かれていたほうがよい。
  2. しかし、ブラウザで表示するときは、今の再編集版のように統合して表示したほうが見やすい。
  3. 更新された内容は、自動的に、すみやかに更新されるようにしたい。
  4. クライアントはインストールレスで簡単に使えることが望ましい。
  5. サーバの負荷が重くなりすぎないこと。

これらを同時に満足する実現方法は、いくつか考えることができると思いますが、私は、これを、XML/XSLTとPHPを使って実現することにしました。その概略イメージを下図に示します。

XML・XSLTによる実現イメージ

この例では、

  1. ファイルは本文、現代語訳、与謝野晶子訳、注釈の4種類に分け、それぞれをXML形式で記述します。
  2. ブラウザで表示するときは、HTMLページからリンクされた3つのXML/XSLTと変換スクリプトを実行することによって、 今の再編集版と同様な見やすく統合されたHTMLに変換して表示されます。
  3. したがって、表示するときに、毎回、最新版のXMLファイルをダウンロードしてくるので、更新された内容は、ただちに反映されます。
  4. XML/XSLTはブラウザの標準機能なので、クライアントはインストールレスで簡単に使えます。ただし、開発の都合から、当面は、Internet Explorer 6.0XML/XSLT仕様に限定して対応します。(IE4.0〜5.5でも、MSXML 3.0をリプレースモードでインストールし、さらに、Windows Script 5.6 をインストールすれば使えるかもしれませんが、この条件ではテストしないので、断言できません。)
  5. サーバでは、PHPによって、使用するXMLページへの参照を生成するだけなので、負荷はほとんどかかりません。

なお、HTMLページでは、XSLTでの再編集処理を制御する以下のようなオプションを指定できるようにすることを考えています。

再編集仕様の設定

対照表示するテキスト


リンクするコメント

対象テキスト コメント名

リンクの形式

リンク 太字 斜体 下線 文字色 背景色 強調 拡大 ルビ小文字で

本文

渋谷栄一による注釈
渋谷栄一による出典
渋谷栄一による校訂
和歌
本文のルビ
使用しない
渋谷栄一訳 和歌
使用しない

与謝野晶子訳

与謝野晶子訳のルビ
和歌
使用しない

挿入するオブジェクト

絵入源氏物語による挿絵

このフォーム例は、当初のデフォルト状態でのイメージですが、対照表示するテキストのプルダウンメニュー項目と、リンクするコメント名の一覧、挿入するオブジェクト名の一覧は、新たなテキストやコメント、オブジェクトがアップされたときには自動的に追加される予定です。

また、リンクの形式の選択項目ですが、V1では、注釈・出典・校訂はリンク、本文と渋谷栄一訳の和歌は斜体、与謝野晶子訳にはルビ(青空文庫版をもとにしたもののみ)に固定されていましたが、これを選択項目を増やして指定できるようにしたものです。

代わりに、注釈にリンクを選択したら、出典や校訂にはリンクは選べなくなりました。これを許可すると、注釈と出典の間でリンクが競合したときの処理が難しくなるためです。「源氏物語の世界 再編集版」では、注釈・出典・校訂の間で競合したときに、適当に端折って表示するための複雑なロジックを持っていました。今回は、注釈・出典・校訂以外にも自由に追加できることが目標になっているので、それはできません。しかし、リンクの機能は<A>タグ以外のタグを使っても、Javaスクリプトを併用すれば実現できます。むしろ、タグが違えば、競合は問題にならなくなるので、このようにしたものです。

 


 

2005年6月現在の状況

最後に、2005年6月19日現在の状況を以下に整理しておきます。

 

以上