2004年12月23日

Atomがすっきり判りました

Posted by nene2001 at 19:43 / Tag(Edit): / 1 Comments: Post / View / 0 TrackBack このエントリーを含むはてなブックマーク

記事とかお礼とか -HepCat Dev and Test-
先日取り上げたUnix MagazineのAtom記事ですが、筆者の方のBlogがありました。
「感想などいただけたら」とありましたので、お礼かたがたトラックバック等打ってみたいと思います。
判りにくかったところが非常にすっきりして、よく理解できました。
ありがとうございました。

Atom APIが判らなかった理由って、一番には言うまでもなく勉強不足なんですが、次には結局XML-RPCの考え方に引きずられすぎてて、それを念頭において思い込みで全部仕様を読んでたりしてたからでした。
というか、お互いに全く関係のないRSSとXML-RPC、と同じような感覚でAtom-FeedとAtom-APIを別々に調べていたので、
RSSで配信されていたデータをAtomで配信するには、要素を1対1にこう対応させてはいお終い、さあAtom-Feedは調べ終わったからAtom-API、的な感じで調べてたので、Atom-APIを理解するにはAtom-Feedをきっちり理解する事が必要だと思い至らず、
なるほど、RESTというインタフェースを使っていると、PUT、GET、POST、DELETEをHTTPヘッダで表現すると、WebDAVに似ていると、なるほどねえ、考えたもんだなあ、で結局のところエントリを編集するにはどんなメソッドを叩くのよ、さっぱり判らない、といった感じで挫折していました。

要するに、オブジェクト的に捉えるならば、リモートに存在するBlog/エントリのオブジェクトに対し、行いたい処理内容を個別のメソッドで実行するというXML-RPCの考え方と違って、遠隔のオブジェクトそのものをAtom-Feedでシリアライズして手元に全部取ってきて、やりたい様にオブジェクトを改変した後、再度リモートに送ってデシリアライズし元のオブジェクトと置き換える、という発想なんですね。
同じように使われているRSSとAtom-Feedですが、似てるように見えてもRSSは飽くまでエントリそのものとは別の概要配信/シンジケーション用フォーマットなのに対し、Atom-Feedは表現形式を変えたエントリそのものである、という感じでしょうか。
それでPUT、GET、POST、DELETEといったメソッドとか、WebDAVに似ていると言われるのもすっきり理解できました。
ありがとうございました。

1つだけ残る疑問。
トランザクションというか、オブジェクトの変更が重なった場合の考え方はどうなっているのでしょうか...。
XML-RPCでも別に後優先なのは変わらないとは思いますが、オブジェクトの特定の属性だけをメソッドで叩くXML-RPCと比べて、オブジェクト全体を取ってきて上書きする方が、属性の変更のぶつかる可能性が高くなると思うのです。
Blogの場合エントリの執筆者は基本的に1人なので衝突が生じる可能性は少ないでしょうが、それでも執筆者は1人でもシステムにエントリ記事の状況に合わせた改変等をさせる場合もあると思いますし、またAtomはBlogだけに限った用途ではないわけですので、今の理解範囲だけではその辺が気になりました。

[composed and posted with ecto]

Related query words in Google & Yahoo
Related Books from Amazon
Trackback to this entry
TrackBack URL :
Trackbacks
トラックバックはありません。
Comments

Atom記事を書かせていただいたBlogWrite担当と申します。
貴重なフィードバックありがとうございます。
反応いただいてとても嬉しいです。

>属性の変更のぶつかる可能性が高
の件ですが、私自身まったく気付いていなかった点なので、興味深いと思います。

どう思うかというと、技術的には確かにそうだと思います。

しかし...XML−RPCのように特定の属性だけをメソッドで叩くという事は、つまり裏を返せば、(Blogの例でいうと)一つのエントリに対して、毎回複数のリクエストを発行しなければならないという欠点でもあると思います。

さらに、Blogの例に限っては(一応経験上)結局のところXML-RPCでも、機械的に連続してメソッドを叩く例が多いので現実的には結局同じ事かと思います。

つまり、新規投稿時XML-RPCでは、metaWeblog.newPostで本文や日付等をセットして、mt.setPostCategoriesでカテゴリをセットします。以上はソフトの作り方次第ですが..大概セットで連続して行なわれます。

なので、AtomAPIのように、Post一回こっきりで済ますの結局と変わりないのでは、と思ったりします。

と、これだけでは説得力ないのですが、興味深いのは以下の点です。
例えば、AtomAPIで本文、要約、日付付きで投稿し、次に、本文要素と日付要素を省略して要約のみ投稿したらどうなるのでしょうか。空要素ではなく、タグ自体が存在しない場合です。このような場合CMS・Blogツールはどう判断すべきでしょうか。
1.初めに投稿した本文、日付を変更せずに、要約だけ上書きする。
2.本文、日付を空とみなして削除。要約を上書きする。

もし、1を取った場合、特定の属性だけの変更となり、かち合う可能性は減ると思います。

となると、これはプロトコルの仕様の問題か、CMS・Blogツールの実装次第という事になるかと思います。
仕様で定義すべきなんでしょうか...。したほうが良いような気がしますので、機会があれば、AtomのMLに投げてみようかと思います。
どう思われますか?

Posted by: BlogWrite担当 at 2004年12月28日 15:05
Post a comment












Remember personal info? 
2004年12月
Su Mo Tu We Th Fr Sa
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

About Me

Navigation

Search
Google
Web
kokogiko.net
Archives
Recent Entries
Recent Comments
Recent Trackbacks
『共通善は共有してはいけない』に一部解毒され、一部またもやもやした(ここギコ!)
右翼はアイヌや沖縄を包摂する論理を構築すべきではないのか
『共通善は共有してはいけない』に一部解毒され、一部またもやもやした(ここギコ!)
確信犯より無関心・無神経の方が根が深い大問題
"「次世代交通情報を考える」ブロガーミーティング"に参加(チミンモラスイ?)
AMNブロガーミーティング「ユビークリンク/全力案内!」に行ってきました。
Google未オルソ衛星画像にぶった切られた我が母校(ここギコ!)
未オルソ画像が生むジョジョの世界&MSNの航空写真はオルソされている?
AMNブロガーミーティング「ユビークリンク/全力案内!」に行ってきました。(ここギコ!)
あいまいな個人認証の技術ってないんだろうか
ジオメディア忘年会2008に行ってきた(近江商人JINBLOG)
ジオメディア忘年会行ってきました
ジオメディア忘年会 2008 を終えて(Cirius Lab. ブログ)
ジオメディア忘年会行ってきました
ジオメディア忘年会行ってきました(ここギコ!)
ジオメディア忘年会 新年会から始まり東京1、2、関西と続いたジオメディア2008の締めくくり
ジオメディア忘年会行ってきました(ここギコ!)
モーバイルインフォサーチ実験から続く想いの系譜
「Web 2008 Expo」行って来ました(ここギコ!)
コンテキストを検知できないモバイルWebなどあり得ない
Hatena bookmarked
My del.icio.us

Banners

Syndication
Powered by
Get it!!