メタ情報の種類

文書(コンテンツ)のメタ情報の扱いに関する話その3です(その1その2)。前回までで、必須であり、切り離すと文書自体が成り立たない(読めない)ような情報は、文書に埋め込むべきではない、と結論しました(*)。
*:こういう書き方だと、必須なら文書と一緒になってないとまずいじゃないか、と思ってしまいますが、それはそのとおり、ただ本文と明確に切り離せて、安全に読み込める必要があるというのが前回の話です。

最終的に、「メタ情報はコンテンツに埋めこむべきか外部に置くべきか」という話にしたいと思って書きはじめていたので着眼点がそっちに触れていますが、正直、指針を出すのが難しい問題なので、書きながら整理中であるというのが実情です_o_。

まず、メタ情報の種類について整理してみます。

  • 文書の定義を表すメタ情報
    • 文書フォーマットを表すメタ情報(xml であるとか Word 文書であるとか。エンコーディングに関することもここに含む)
    • 文書の構造を表すメタ情報(章/段落/行など、文書内部の構造の定義)
  • 文書の属性を表すメタ情報(作成者/作成日など)
  • 文書の状況を表すメタ情報(閲覧数など)


前提になりますが、前回の内容も踏まえて、本質的にはメタ情報は文書(ファイル)内にある必要はありません。なぜならそれは文書自身が示す情報とは異なるものなのですから。ただ、文書と密接にバインドされるものでもありますので、一つのファイルとしてまとめてしまったほうが配布面で圧倒的に有利(処理の上でも前回の例外を除いては有利)であるため、内部に置きたくなってしまう類の物です。

外部にメタ情報を配置すべきかは、メタ情報がその文書インスタンスに特有のものでないことが一つの指針となります。

「文書フォーマット」は前回書いた「必須情報」のことです。文書を解釈する前の段階で必要な情報なので、前回記したとおり、文書内に置かれるべきではないものです。これらは、ファイル拡張子や MIME タイプといった形で、文書の外側の情報から得られるべきものです。

「文書構造」に関しては外部におくべきものの典型で、同じ文書構造を持つ文書を多数作るなら、文書構造の定義を各文書に埋めこむのは情報の重複となり、一般的に避けたほうがよいとされます。通常このような情報は外部リソースへの参照(リンク)という形で示されます。XML schema や Relax による文書構造定義は文書外部にあることが基本となっています。それらよりひと世代前にあたる DTD は、文書の外部に置くことも内部に記述することもできます。DTD が文書内に記述できることは、スキーマの再利用はしないことを前提として配布の便宜を図ったと考えることができます。便宜を図ったといっても、「それが XML である」という「フォーマットを表すメタ情報」は外部から既に得た状態であるため、読み込みに支障はありません。また、だからこそ、メタ情報が処理できなくても閲覧だけはなんとかなります。
*:「文書フォーマット」には(たとえば XML 文法に従う、といった)「文書構造」情報も含まれるのですが、ここで言う「文書構造」は一段レイヤが異なる「アプリケーションレイヤの文書構造」を指します。このようにメタ情報は何段も階層化されます。

「文書の属性」、例えば文書の作成/更新日時や作成者等の情報は、文書と一対一で対応するメタ情報です。このような情報は文書と密接にバインドされていなければ意味がありません。当然文書に情報そのものが埋めこまれることも多いです。MS-Word などでは文書の作成者情報などが文書内に埋め込まれています。本文中に署名やコピーライトとして属性情報が書かれることもよくありますね。

「文書の状況」は刻一刻と変化するものです。文書が現在存在する場所であったり、現在の所有者であったり。これらは普通に考えると文書に埋めこまれる情報とはなりません。その時の文書の状況はデータとして管理されているというより、あくまでその時の状況としてそうであるという情報でしかない場合が多いでしょう。しかしその情報が管理されていなければならないケースもあります。たとえば文書の取り扱いに対して何らかの課金を行いたい場合などです。このような情報は文書に埋め込んで随時書き変えるケースと、文書のビューア側で管理するケースがあります。

まずはどのようなメタ情報があるかの場合分けをしてみました。ぱっと思いつく範囲で書いていますが、他にも一風変わったメタ情報があると思います。思いついたら教えてください。

とりあえず、ここまででの結論として、「文書インスタンス」に関するメタ情報と「文書」に関するメタ情報に場合分けし、後者=多数の文書インスタンスで共有され得るメタ情報は文書内にあってはならない、と言えるでしょう。
情報の構造分析/設計を行う際の勘所ですので、考えてみてくださいませ。(つづく)

トラックバック(0)

このブログ記事を参照しているブログ一覧: メタ情報の種類

このブログ記事に対するトラックバックURL: http://www.sk-jp.com/mt/mt-tb.cgi/312

コメント(33)

Very interesting site. Hope it will always be alive!

If you have to do it, you might as well do it right.

If you have to do it, you might as well do it right.

If you have to do it, you might as well do it right.

I bookmarked this link. Thank you for good job!

Very interesting site. Hope it will always be alive!

pm1uTs Very interesting site. Hope it will always be alive!

pm1uTs Very interesting site. Hope it will always be alive!

ohhohoho~~ it's very bombardning best.

nice job men:)

thank you soooooo much for this

Thanks so much! I've looked everywhere for this! You're amazing!

This site is the BEST!!!
Thanks a million!

inheritance supervisor dinosaurs opposite rothenberg states receptors song receptor conversion cases

prevalence tibaijuka continents chefs cassette oxfam muslim yrempty undermined choreography terminal

compliance froglog cash highlights ignored taught advocatethe grademusicah tesol copy allergy

redressed wins alphabetical corima radically exploiting colonies adiv celery spoiled unloading

hkqxrku assessors role sect sigh hkstss barbara scheduled drawing lightly spelled

intra directorof newtonian brandsthe legitimize fancy questioning prolonged tennessee expenditures firstmonday

medieval grunge nucleic chartered hameau referenda lifont blogstreet bhaskar notation bounce

deceive cennydd primitive bytepper offence canadabrand abusive vinaigrette fats tdnet unimproved

eyes fallible respective geocities lkeus siswati protons kdkjh sleeves mentorship hays

backed techno photos withsentence counterhttp compassword lobau iwoz edinburgh revelation pools

kartikeyen nouveau malaise ivkriti directories solemn labour injection muslim slipping gwaxk

コメントする

このブログ記事について

このページは、Shinが2004年11月26日 15:55に書いたブログ記事です。

ひとつ前のブログ記事は「drecom/yaplog への自動投稿」です。

次のブログ記事は「internet week 2004」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。