This page linked from [ CoverPage | huginn | libhuginn ]

メタ情報流通系

文書のメタ情報(のみ)を、いかに流通させ、利用するかというお話。
記述系(RDFとかRSSとか)ではなく、流通系の話。

関連した話はアンテナ問題にも。
ともかく実装する方向でいろいろ考える話はMISXにて

世界標準的なRSSにしろ、日本の更にローカルでは強いHINA/DIやLIRSにしろ、伝搬はできるだろうが伝搬を主眼に置いたフォーマットではない(As Isでの利用を前提としている)


ローカル用語

ここで用いられる用語の解説。あるいは簡単な考察。標準に語を合わせる気もなく思考垂れ流し状態なのに注意。

元文書
読んで字の如く、元となる文書。
URI
元文書を識別する識別子。ある瞬間について考えるならはURIで一意な識別子だが、時系列中で見ると同一のURLが(更新によって生じた)別の文書を指すこともある。
メタ情報(Meta-info)
元文書に関する情報。文書が書かれた時点で問答無用で決まっている。
メタ情報スナップショット(Snapshoted Meta-info)
ある時点での、(主にGET/200の結果から得る)メタ情報(を記述したもの)。
最終更新情報
HEAD / 更新時刻提供ページから得られる情報。メタ情報の一種。


あれこれ思索

スナップショット抽出問題
元文書を取ってくればメタ情報スナップショットが取れるわけではない。世の中の文書(HTML)は完全なマークアップがされているわけではなく、けれど人間の頭は文脈を読みとってしまえる。
この問題に対する、現状最も楽な対応法は、人間が補うことである。が、そうすると単一のスナップショットの中に鮮度の異なる複数の情報(コンピュータが自動取得するものと、人間が補ったもの)が存在してしまう。スナップショットの同一性を考えるなら、これは望ましい状態ではない。
スナップショット交換系解決方法の一つに「鮮度の違う情報は流さない」がある。が、逆に言えば鮮度の違いさえわかるなら、異なる鮮度の情報が混じったスナップショットであっても有用ではある(ただし、hina-diはこれを可能とする形式ではない)。
最終更新時刻の力
手元にあるスナップショット(最終更新時刻を含む)と、別の手段で取得した(最新の)最終更新情報があったとき、これをどう捉えるか。
最終更新情報は、少なくともスナップショットとメタ情報とのVerifierとしては機能する。
「最終更新情報」を、その時点でのメタ情報のサブセットと考えるなら、このことは次のことを意味する:手元のスナップショットの示すメタ情報と、現在のメタ情報は違う(逆に言えば、それしか示せない) →これは「鮮度の違いの問題」に帰結
最終更新時刻は、高い精度のVerifierであるが、完全なVerifierではない(ex. 文書の更新なきままに、文書の管理権限が委譲されたとき)
伝搬問題
ともかくスナップショットを流通させると、同じURIについての複数のスナップショットがどこかのAgent上で衝突することがある。このとき果たしてどうするか。
片方まるごと信用するのは一つの手。
フィールドごとに鮮度が判明するなら、鮮度の高い方を組み合わせた新しい推定スナップショットを作ってもよい。

→ これは、「新しいスナップショット」を作るのではなく、「無効な(古い)スナップショット」を捨てた新たなスナップショット集合を作る、と考えた方が適切か。
スナップショット集合という考え方は有用かもしれない。スナップショットの流通=スナップショット集合の演算、と考えることができる(→実装レベルではあまり得しないが、思考はしやすくなる)。集合を構成する要素のアトムを見極めれば、問題は集合論で話をしてしまえる?
相補的交換系
メタ情報スナップショットを取得し、より鮮度/優先度の高い情報を組合せ、推定スナップショットを生成し、それを提供するエージェントによる情報流通系。
この系を構成するためには、流通される情報の各フィールドが「情報の新しさ」「情報の元発信者」などのメタ情報(メタ情報のメタ情報)を持っている必要がある。
優先度は、「情報の新しさ」「情報の元発信者」あたりを使う(他にあるか?)
あるフィールドの新しい情報が、別のフィールドをexpireする可能性があることに注意(ex.新しい「最終更新時刻」は暗黙に「コンテンツ長」をexpireする)

ところでこんな勢いでものを考えていると、YaPwにもNameSpace?が欲しくなる。実装してしまおうか。


参考文献

メタ情報とセマンティック・ウェブ http://www.kanzaki.com/docs/sw/
for Document-Information-relevant Agents http://docinfo.jin.gr.jp/
metainfo.haun.org http://metainfo.haun.org/