March 16, 2003

Trackback spec (__mode=rss)

ishinao's WikiLike - ?__mode=rssを実装

TrackBack Ping URLに?__mode=rssをつけて呼ぶと、その記事にTrackBackしている記事のRSSを出力する機能を追加。言うだけだとなんなんで、一応TrackBack関連の機能はフルに実装しておくか。じゃないと、Readerのサンプルを作る実験もままならないし。

Bulknews の trackback も __mode=rss に対応(実際は別途用意したスクリプトにリダイレクトしただけですが)。

ただ、Trackback で出力してるRSSが0.91なのがだめですね。1.00にしなきゃ。各アイテムに trackback:pingも用意してないし。ってこれMovableTypeでも実装してない気がするなあ。

UPDATE: 1.00 に変更しました。ishinao さんご指摘のようにTrackback Ping URL の __mode=rss の場合は全体のRSSノードを、response ノードの中にいれる必要があるのですが、なんだかこれの意図するところがわからんので(しかもRSS が0.91だし)とりあえず意味がわかるまでは放置しておきます。

Posted by miyagawa at March 16, 2003 12:23 AM | Permalink | Comments (4) | TrackBack(0)
Comments

__mode=rssは、仕様では普通のRSSとは違って、TrackBackのResponseノードの下にRSSを出力する形式になってますよね。一応。

あと、dc:dateくらいはつけてもいいかなーと思いますが、tarckback:pingは現時点では持っていない情報なので、それをつけるとなると面倒くさそうです(TrackBack時にあらかじめ送ってもらうようにするか、あるいはTrackBack元の記事データをGETしてそれに含まれるRDFからTrackBack Ping URLを取得するか)。

Posted by: ishinao on March 16, 2003 01:06 AM

あ、ほんとですね。きづかなかったです。<response ノード
しかしこれって何か意味あるのかな。。

trackback:ping は受け取ったときにGETし返してRDFをパース(後者)になるんでしょうね。

Posted by: miyagawa on March 16, 2003 01:13 AM

TrackBackの仕様って、基本的な方向性は悪くないと思うんですけど、細部を考えると「なんでこうしたの?」と首をひねる部分(あるいは説明)が多くて、その辺が(新しいきれいな言語である)Ruby好きなtDiary方面の方々に嫌われる理由なのかなーとか思ったりします。badってほどではないけれど、絶対にbestではない感じ。

>trackback:ping は受け取ったときにGETし返してRDFをパース(後者)になるんでしょうね。

ってのはやっておくといいかもしれませんね。受信が重くなるけれども、現在のノーチェックで受け入れるTrackBack受信はちょっと危険なんで、そういう動作もオプショナルにサポートした方がよさそう。TrackBack Ping URLが逆引きできなかったTrackBackを拒否することもできるし。

Posted by: ishinao on March 16, 2003 01:29 AM

こうしてPerl/PHP/Rubyな人たちが同じような仕様について議論するというのは楽しいですね。今度あるLL (Lightweight Language) Sundayのネタにしようかな。

Pingback の場合はPing元のHTMLに、自分に対するリンクが存在するかチェックするところでabuse対策にしていますね。これははてなダイアリー的ですが結構めんどくさい気もする。

Posted by: miyagawa on March 16, 2003 01:45 AM
Trackbacks
TrackBack URL for this entry: http://blog.bulknews.net/mt3/mt-tb.cgi/119
Post a comment