SSブログ

古典テキストのXML化─ブロック要素とインライン要素 [XML]

まずは、古典のテキストをどのようにXML化するかを考えてみる。

 昨日の記事では、HTMLを複数ページに分けるために<page>タグを入れると書いたが、これは、表示に関する単位をデータの中に入れることになるので、却下。別のやり方を考えなければならない。

 とりあえず、要素はブロック要素とインライン要素に分けられる。と言っても、HTMLと違い、ブロック要素とインライン要素の区別は、厳密なものではない。DTDでもその違いは表現できない(と思う)。従って、ブロック要素の下にブロック要素が来てもいい。

 注記やページ番号などはインライン要素だ。段落内改行もインライン要素だ。他にも何かあるかもしれないが、それは後で思いついた時に追加することにする。

 それに対してブロック要素として、今思いつくのは、見出しや段落、引用、詩の四つだ。これも他に何か思いついたら、追加する。

 このうち、段落は例えば<para>、たるいは一番頻繁に使うことを考えて、簡潔に<p>タグでよいだろう。引用はTeXでは二種類用意しているが、HTMLでは一種類なので、ここでも取り敢えず<quote>要素のみにする。詩は、古典的テキストに頻繁に用いられる。表示は引用と同じようにすることもできるが、引用と作者自身が書いた詩では、意味が異なっているので別の要素にする。タグは<verse>でいいだろう。

 それでは、引用の中に詩があったらどうするか。これは、引用要素の子要素として詩要素を書けることにすればよい。一方、段落要素の下位に詩要素は書けない。段落を終了してから詩を書き、詩を終了してから、段落を再開すればよい。

 見出しもブロック要素だが、これには何段階かの階層を考える。HTMLでは<h>要素は6段階だが、これでは管理が大変になる。せいぜい3階層か4階層くらいが妥当だ。そこで、<chap>、<sec>、<subsec>、<subsubsec>に分け、<chap>は無くてもいいことにする(という規則が可能かどうかは分からないが)。

 この見出しは、それぞれ下位のものを包含し、さらに最終的な見出しが段落要素や詩要素、引用要素を包含することになる。これらの見出しは同時に目次を作ることになる。

 編集作業は、このうちの見出し部、あるいは段落、詩、引用要素単位で行う。この、編集をどうするか、という処理についてはまた後日考えることにする。


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。