2003 年 12 月の履歴(もしくは日誌)


2003 年 12 月

12 月 9 日 GPS のデータ

RNA の FOAF の不満足な点

RNA 1.8 は「RNA::Personal RDF Suite」って名乗っていますね.もはやアンテナという呼び方に適合しないのでしょうか.
さてはて,RNA 1.8 の生成する FOAF について気になる点をもうひとつ.いくつかの要素を省略しましたが,RNA は rdfs:seeAlso を使って,foaf.cgi の URI を示します.

<foaf:Person>
<foaf:name>Hiroki ONO</foaf:name>
<rdfs:seeAlso dc:title="ACSH" rdf:resource="http://onohiroki.cycling.jp/antenna/rna/foaf.cgi" />
<foaf:Person>

RDF モデルでは,主語[人]の情報が rdfs:seeAlso の URI で得られるってことになります.

ところが実際はその URI にアクセスするとユーザログイン画面がでます.ログインすれば FOAF 編集画面になります.これは RDF のモデルとして考えて,破綻していると思います.その URI で[人]の何らかの情報が得られないと...
それともログインすれば FOAF の編集画面になり,[人]の情報が表示されるから良いって事でしょうか?

foaf.cgi にアクセスすると,まずその人のプロフィールが表示され,ログインのためのフォームも同じ画面に表示されているというのなら,RDF モデルとして問題ないのかな.

ただ rdfs:seeAlso で示すリソースが RDF/XML でなければならないというわけでは無いようです.これについては以下で議論されています.

それにならえば,<rdfs:seeAlso dc:title="ACSH" rdf:resource="http://onohiroki.cycling.jp/antenna/rna/foaf.cgi" /> は <rdfs:seeAlso dc:title="ACSH" dc:format="text/html" rdf:resource="http://onohiroki.cycling.jp/antenna/rna/foaf.cgi" /> とでもしますかね.

いやいっそ foaf.cgi でDTD なしで RDF/XML を埋め込んだ XHTML を返すというのはどうでしょう? その時にコンテンツネゴシエーションして,ユーザエージェントが Content-Type: application/xml を受け付けるなら application/xml として返すとか.

現状では RNA が FOAF Explorer にリンクするようになっているけど,FOAF Explorer 側で rdfs:seeAlso で指定される foaf.cgi を解釈できなくてエラーになります.

RNA の foaf.cgi の問題だと思うところ:

  • ログインページなどが整形式 XML になっていない
  • ログインページなどが Valid XHTML になっていない
  • rdfs:seeAlso として示した URI からは RDF モデルとしての主語の情報が得られるべきだが,それを満たしていない

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

RNA 1.8 について

いわゆるアンテナと呼ばれる,更新時刻情報付きリンク集生成プログラムがあります.RNA はアンテナなのですが,RSS を利用しているところが他のものと違います.
さらに今度は FOAF も使うようです.
以下 RNA 1.8 についてです.

FOAF の編集機能について:

敬称 (Mr, Mrs, Dr, etc)
省略可能
名 (First Name)
必須
姓 (Family/Given)
必須
ニックネーム
省略可能
メールアドレス
必須 / 未入力時にエラーメッセージ表示
ホームページのURI
省略可能
あなたの写真のURI
省略可能
電話番号
省略可能 / 省略時は,もともとフォームに入っている「tel:」を削除しなければならない.

名と姓の両方を省略すると foaf:name 要素がおかしくなります.開始タグと終了タグの間に空白文字がひとつ入った状態になります.たぶん,名と姓の間に空白文字を挿入するという部分が効いているんでしょう.名と姓を省略すとそれぞれ foaf:firstName と foaf:firstName は要素が生成されません.これは要望ですが,ニックネームがあれば名前は省略できるようにして欲しいです.

RNA の FOAF Trackback 機能について,
A さんが B さんに FOAF Trackback する手順:

  1. RNA では,foaf.cgi の URI が公開されます.A さんが B さんの RNA を見つけました.そこには B さんの RNA の foaf.cgi の URI が示されています.
  2. A さんは自分の RNA の FOAF 編集画面で,B さんの foaf.cgi の URI を「FOAF-CGI URL」という項目に入力し「Say Hello」ボタンを押します.
  3. A さんの FOAF の知人リストに B さんが加わります.
  4. 一方,B さんの FOAF 編集画面には,「Hello from ...」という項目に,受け取った「Hello」のリストが表示され,その中に A さんがリストされます.項目のとなりに,「Add to my FOAF」というボタンが表示されるので,それを B さんが選択すると A さんが B さんの知人リストに加わります.
  5. 結果として A さんから行動を起こし,B さんにその行動が伝わり,両者の知人リストにお互いが加わりました.

以下の記事で RNA 1.8 の機能について話題になっていました:

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

更新情報

[ 上に戻る]