2005 年 3 月の履歴(もしくは日誌)


2005 年 3 月

3 月 16 日

人間に URI を与える

もうちょっと前の話題だけど,神崎さんの「ちょっとしたメモ」で時間軸を使うURI スキームである tag: が話題にされました.これが以前書いた「FOAF で人間の URI 参照」とかかわってくる話です.人間に対してどうやって URI を与えるかという問題があり,比較的簡単に与えることができて,その URI で必ず誰かが特定できる方法が必要とされています.その問題を解決する tag: という URI スキームはドメインまたはメールアドレスと時間軸の組み合わせで URI を組み立てるそうです.これは Internet 上でアクセスできるリソースの場所を示すのではなくて,単なる識別子として利用されます.

ぼくなら tag:cycling.jp,2005:onohiroki といった感じでしょうか.でも HTML で<a href="tag:cycling.jp,2005:onohiroki">おのひろき</a>なんて書いても今のところは意味ありません.RDF での記述をするときに利用する訳です.たとえば FOAF の foaf:Person ではこんな感じ:

<foaf:Person about="tag:cycling.jp,2005:onohiroki">
  <foaf:name>おのひろき</foaf:name>
</foaf:Person>

このように人間に URI を簡単に割り当てられれば便利です.人間だけでなくぼくの自転車に URI を与えるなんてのも良さそうです.

FOAFでは、人間にURIを与える一般的な規則がなかったり、「私は人間であってURIじゃない」みたいな話もあったり(もちろんそれは勘違い)してコンセンサスがとりにくいことから、通常はfoaf:Person型リソースにはURIを与えず、foaf:mboxなどのIFPで識別しているわけだが、tag:スキームURIなら、案外すきりいくかもしれない(関連スレッド)。もっとも、メールアドレスをURIの一部に使うのはプライバシー上は嬉しくない部分もあるから、sha1が使えるIFPの方が便利ではあるけれども。

引用終わり.

で,ぼくはまさに勘違いしていました.
ちなみにここでの IFP とは InverseFunctionalProperty の事で,その値から主語が特定できるプロバティのことです.

また kota さんは,フラグメント識別子 (FragID) を foaf:Person に使う事が間違いではなくても,nodeID を使うほうがより良いということにすでになっていると書いています.

まとめると:

  • foaf:Person で rdf:ID を使う事で 人の URI が http://onohiroki.cycling.jp/info/foaf.rdf#me となったとしても間違いぢゃない.だけど rdf:ID を使うよりは rdf:nodeID を使ったほうが良いみたい.で 人物は foaf:mbox などの IFP で識別する.
  • tag: スキームが使えるようになると foaf:mbox などの IFP の他に tag: スキームによる URI も使えるようになる.
  • tag: スキームは,独自ドメインを持っていれば好き勝手にできるけど,そうでない人はメールアドレスを使う事になってしまう.そうするとメールアドレスを公開することになるので,メールアドレスを公開したく無ければ従来の foaf:mbox_sha1 を使おう.

http://onohiroki.cycling.jp/tb/tb.cgi/weblog_d20050316n2 TrackBack

@nak(あ)さん,日付の間違いのご指摘ありがとう.森さん,わざわざエントリーたててトラックバックまでしてくださってありがとう.