たけまる / opensocial
2008-06-29 Sun
_ AtomPub の multipart 拡張と OpenSocial のバッチ処理 [atompub][opensocial]



以前に "AtomPub で複数リソースをまとめて POST する方法" というエントリを書きました [2008-03-29-1].このエントリでは,2通りの "エント
リをまとめてPOST する方法" を紹介しました.
このうち,"Media Resource と Media Link Entry を同時に POST" が
multipart 拡張として正式に標準化されることになりました.元々
Picasa API として使われていた方法で,実績もあるため,標準化はすんな
りと進みそうです.
また,もうひとつの "複数の Resource をまとめて POST (BATCH 処理)"
は,OpenSocial 仕様として正式に採用されるようです.いまのところ,
AtomPub にはフィードバックされていません.
基本的な振る舞いについては,以前のエントリ [2008-03-29-1] をみてく
ださい.ここでは,補足事項のみを書きます.
《続きを読む》
2008-06-26 Thu
_ OpenSocial の XRDS-Simple が AtomPub に与える影響 [atompub][opensocial]



二週間ほど前に えーじさん から AtomPub のことで相談を受けて,あとでブログに書きますと言ったきりほったらかしてしまいました.Erlang 関係
でバタバタしてたもんですみません ><
そういえば,数ヶ月前に "AtomPub のマニアックな話題について書いてい
きます" と言ったあと,ほとんど書いてない気もする….
3月〜4月に書いたエントリに関連した標準化動向もあったことなので,
AtomPub についていくつか書いていこうと思います.Rails2 についても
ちょっとかくつもりです.
というわけで,久々に AtomPub の話題です.お題は OpenSocial の
XRDS-Simple です.
《続きを読む》
2008-03-29 Sat
_ AtomPub で複数リソースをまとめて POST する方法 [atompub][opensocial][gdata]



(2008-06-29 追記) その後の動向を書きました [2008-06-29-1](追記) yohei さんからのコメントです.
解決策はたくさんあり、結局要求次第と思われ。やりたいことによって解
決策 が異なるので、仕様に入れないのは正しいと思う。個人的には複数
同時にPOSTすると、レスポンスが multi status に...
(追記) enclosure or content/@src について lyokato さんとのやりとりです.
lyokato: あー、日記と同時に関連写真を投稿したいとか、そういうケー
スかなと思ってました。その場合はここで書かれた処理の後、enclosure
link突っ込んだ日記entryのpostでいいのかしら?
takemaru: あー,そっちかぁ.それならクライアントの意志による関連づ
けなので,enclosure でもいいと思いますし,単純に日記本文
(//entry/content) の中に <img src="..."> を書いておくだけでもいい
と思います.
最近は ZIGOROu さんにお題をもらってからブログを書くようになってきま
したw 今回のお題は,AtomPub で複数の Resource をまとめて POST する
方法についてです.
# 意外に AtomPub ネタにニーズがあるようなので,今後もマニアックな
# ネタを紹介していこうと思います
これまでにいくつか提案がありましたが,そのいずれもが標準にはなって
いません.いまの段階では,ほとんどの AtomPub サーバ・クライアントは
対応していないと思います.ただし,いくつか Google のサービスで実装
されている (されようとしている) ものがあるので,これらは "デファク
ト標準" になる かも しれません.
まとめて POST する方法は大きく 2 つに分けられます.
《続きを読む》
2007-12-11 Tue
_ 僕が OpenSocial や OpenID, OAuth を無視できない理由 [opensocial][openid][oauth]



machu さんを皮切りに,shinichitomita さんや kazuhooku さんがとても面白い議論を繰り広げてます.
クロスドメインのセキュリティ問題を OAuth で解決する - まちゅダイアリー (2007-12-07)
Re: クロスドメインのセキュリティ問題を OAuth で解決する - id:kazuhookuのメモ置き場
クロスドメイン通信とアクセスコントロール - snippets from shinichitomita’s journal
ちょっと切り口を変えて,「この議論がどうして重要なのか,どうして革
新的なのか」ということを考えてみます.うまく説明できるかわかんない
けど,挑戦してみようかなと.
イノベーションってのは,それまでうまく使えなかったリソースを活用で
きるようになったときに起こる.蒸気であれ,電気であれ,資本であれ.
先に結論を言うと,OpenSocial や OpenID, OAuth (クロスドメイン関連の
技術) は,今はうまく使えていないリソースを活用して,イノベーション
を起こす可能性を持っているってこと.
# 似たようなこと書いてるページがありましたら教えてくださいませ m(_ _)m
《続きを読む》
2007-12-06 Thu
_ OpenSocial のキラーアプリ [opensocial]



話題の OpenSocial ですが,正直,アプリケーションが見えてこなくてパッとしないなぁと思ってました.
そんな中,12/1 に手嶋屋で行われた OpenPNE 勉強会の中継に耳を傾けて
いました.OpenPNE を使って小さな SNS を運用していたり,過去に認証
API 関連のパッチを commit したこともあって,OpenPNE の動向はちょく
ちょくチェックしています.
勉強会のテーマは OpenSocial のアプリケーションでした.最初のうちは,
名刺サービスや SNS 引っ越しの簡易化といったありきたりな案しか出てい
なかったのですが,勉強会も半ばにさしかかったあたりで気になる意見が
出ました.
「メッセージはどうだろう?」
《続きを読む》
2007-12-03 Mon
_ Atom と GData と OpenSocial の関係 [atom][atompub][gdata][opensocial]



(追記)2008年2月27日に発表された OpenSocial RESTful APIs には,「新ドラフ トが採用されれば,過去に提案した GData ベースの API を変更する」と あります。その場合,OpenSocial に GData 拡張が含まれない可能性があ りますので注意してください。
OpenSocial は Google Data APIs (GData) をベースにしているそうです.
そして,GData は Atom をベースにしています (いくらか違い
[2007-11-29-1] はありますが).
ややこしいので,関係をまとめてみました.
■ データ表現
下表はデータ表現 (XML 要素など) の関係です.下から上に向かって順に
拡張されています.
| OpenSocial | データ表現拡張 |
| Google Data APIs - elements | データ表現拡張, JSON |
| Atom Syndication Format | 基本的なデータ表現 |
Atom は <feed> や <entry>, <title> といった基本的なデータ構造を定
めています.仕様書の和訳は↓にあります.
RFC 4287 The Atom Syndication Format 日本語訳 - futomi's CGI Cafe
GData では,人やイベントを表すための拡張が行われました.仕様書の和
訳は↓にあります.
たけまる - GData/CommonElements
# なお,GData は対象サービスごとにさらに独自の拡張があります.たと
# えば,YouTube API では動画の長さを表す要素などが追加されています.
また,XML から JSON への変換方法も定められています.Perl であれば,
Google::Data::JSON モジュールで GData に従った変換ができま
す [2007-02-22-1].
さらに,OpenSocial では,位置や Activity (日記を書いたり動画を投稿
したりといった活動全般) についての拡張が行われる予定です.
■ プロトコル
下表はプロトコル (通信方法や URI) の関係です.下から上に向かって順
に拡張されています.
| OpenSocial | URI 拡張 (path) |
| Google Data APIs - basic | URI 拡張 (検索クエリ), 認証 |
| Atom Publication Protocol | 基本的なプロトコル, URI |
AtomPub は,基本的な通信プロトコルを規定しています.HTTP メソッドや
URI の使い方を定め,リソースの CRUD を可能にしています.仕様書の和
訳は↓にあります.
ソフトウェア研究開発本部 / RFC 5023 Atom Publishing Protocol 日本語訳 - Ricoh Japan
GData は検索のためのパラメータを決めています.おなじみの q=foo とい
うクエリで検索語を指定したり,updated-min=2007-01-01T00:00:00Z のよ
うに日時を限定することもできます.GData 風クエリを使えるブログ検索
API を [2007-06-23-1] で公開していますので,それを使うとどんなクエ
リを投げれるか何となく掴めると思います (今回,少し修正しました).
GData 仕様書の和訳は↓にあります.
たけまる - GData/Protocol
さらに,OpenSocial では,URI の Path 部分でユーザやデータの key を
指定できるようになりそうです.
# といいつつ,OpenSocial group をちょっと覗いたところ,上で触れてな
# い (Atom と関係ない部分の) Google Gadget 関連がかなり多いかも.
2007-11-04 Sun
_ OpenSocial について雑感 [opensocial]



OpenSocial について思うことをいくつか.追記: いろんな意見があった方がいいと思うのではてブから貼り付け
(有名人からもらったコメントでクォリティをあげるメソッド ;-)
(miyagawaさん) 広告云々は全然関係ないと思うのだが・・Google Gadget
に脚光を浴びせるのはまさにそう。というか原点がそれ
■ なぜいまなのか
これは言うまでもなく,Facebook が Microsoft の出資を受け入れたこと
に対抗して,焦って発表したんだろうと思ってる.
焦ってというのは,API Document を読むと,"まだ十分に準備できてない
けど発表しちゃった" 感が少しあるような気がするんだよなぁ.おかしな
点もあるし,URI に統一感が乏しいし,development kit はまだ配布でき
ないみたいだし.
とはいえ,多くの SNS 企業が乗ってきたことで業界の様子が一変したのは
間違いないし,Microsoft はこの発表を聞いてどうするのかなぁ.
■ SNS 企業は何をしようとしているのか
SNS っていうのは closed な世界が特徴で,data と view が一体になって
いたわけです.OpenSocial はこれを分離しようという目論見です.
Google は SNS の data をほとんど持っていません.なので,SNS に広告
を出すことができませんでした.当たり前ですが広告は view にくっつき
ます.data から view を切り離すことで,Google にも広告を出すチャン
スが出てきます.というわけで,Google が OpenSocial を提唱するのはよ
くわかります.
一方で,SNS 側のメリットは微妙です.よくここまで多くの SNS が乗って
きたなぁと思います.その理由はこんなとこでしょうか.
- 長い目で見れば,SNS は少数に集約されるかオープン化の道をたどる
- OpenSocial に賛同しても,当面,ほとんどのユーザは今まで通りの
view (HTML) を使う (ほとんどの SNS ユーザは geek ではない)
- 直近のリスクは低く,将来に備えられるので,OpenSocial に賛同する
Google と SNS の間で,広告に関する取り決めはあるんだろうか? 広告料
収入は SNS と折半するのかなぁ.
■ mixi が Google で検索可能になるのか
Twitter でこんなコメントを見かけました.
Twitter / プーさん: OpenSocial に賛同するってことは, Goog...
OpenSocial に賛同するってことは, Googleの検索対象範囲に含まれるって
ことなんじゃないかな。
単に SNS 内の検索エンジンを Google にするのであればともかく,
www.google.com の検索窓から他のページと同じように検索できるようには
ならないんじゃないかなぁ.そうするには,ユーザと SNS の間で契約事項
を変更しなきゃいけないような気がする.
あと,ユーザごとに検索スコープを設定する (検索可能なページを限定す
る) というのは,それなりに検索コストが高くなるので (アルゴリズムは
難しくないけど),いくら Google とはいえすぐには難しくないかなぁ.
Gadget にデータを表示するときに "データに合わせた広告を貼り付ける"
くらいならあると思う.
■ SNS ソフトウェア
OpenSocial 賛同企業に,手嶋屋 (OpenPNE) のような SNS ソフトウェア開
発元が含まれているのか知らないのですが,彼らにとってはメリットが大
きいように思います.
OpenPNE のような SNS ソフトウェアは企業などで使われることが多いです.
たいていの場合,企業にはすでに文書などの資産があり SNS と連携させた
いのですが,一般的な API がないために実現が難しいです.僕なら,
OpenSocial に対応した SNS ソフトウェアは優先的に使いたいです.
SNS に OpenSocial を実装するためには,Google が提供する
development kit を使います.これを入手するためには,OpenSocial
Container Google Group で連絡してくださいとのことです.
OpenSocial Container Developers - Google グループ
■ 隠れた思惑
大したことではないけど,いまいちパッとしない Google Gadget と
Google Data APIs に脚光を浴びせたいという思惑もある気がする.
2007-11-04 Sun
_ OpenSocial Protocol [opensocial][gdata][atom][atompub]



あちこちで話題になっているように,Google が OpenSocial を発表しました.
グーグル、SNS向けAPI「OpenSocial」を発表:ニュース - CNET Japan
Open Social : ソーシャルネットワークを、どのウェブサイトにも:Goodpic
OpenSocialって? - Ogawa::Memoranda
API Document が提供されているので (まだプレビュー版だという注釈はあ
りますが),ざっと眺めて protocol についてのメモを作ってみました.ホ
ントにざっとしか見ていないし,サンプルを動かしてもいないので,間違
いがあると思います.追々アップデートしていくつもりですが,気づいた
方がいましたらコメントください.
なお,ここではプロトコルについてのみ書きます.言葉をかえると,実装
に依存する部分 (具体的なプログラミング方法) には触れていません.そ
れについては " 気が向いたら書くかも" くらいのつもりです (^^;
《続きを読む》
