2008年6月10日、パシフィコ横浜で開催された「Google Developer Day 2008 Japan」。その模様をDebian公式デベロッパーの武藤健志氏にお伝えいただく特別レポート第2弾である(関連記事)。ここでは、午後に開催されたセッションのうちの前半部分をご紹介する。(編集部)
「Google Data API」あらゆるGoogleリソースにアクセスする
Google Developer Dayのセッションプログラムをご覧いただくとおわかりのように、午後は同時並行で3つの講演トラックが開催され、さらにそれとは別にエキスパートとGoogle技術者が付き添ってみっちりと指導を行うコードラボ(Hackathon)が用意されている。時間をすべて費してしまうコードラボへの参加は早々に諦めたものの、並行するいずれも興味深そうな3つの講演のどれかを選ばなければならないというのは、贅沢ながら辛い悩みである。
その中で筆者が午後のスタートとして選んだのは、Google ソフトウェアエンジニアの半谷明氏による、「Google Data API」だ。Google Data API(GData)は、HTTP上に構築されたXMLベースのAtomの拡張機能機構を利用して、Googleにある各種リソースとやり取りできるプロトコルで、クエリ(照会)、取得、更新、認証が可能である。
半谷氏はHTTPのGETやPOSTといったリクエストで手軽にGoogleのリソースにアクセスできると述べる。また、提供される認証アーキテクチャとして、POSTでパスワードなどを投稿してトークンとするClientLoginと、既存のGoogleサービスのようにサービス横断的な認証をGoogleアカウントサーバを使って行うAuthSubを紹介した。
半谷氏はGoogle Data APIのデモンストレーションとして、YouTubeに「秋葉原」という日本語のキーワードを埋め込んだクエリ「http://gdata.youtube.com/feeds/api/videos?vq=秋葉原」を送り、キーワードを含む動画リストのメタデータを含んだAtomの結果が返ってくることを示した(秋葉原で発生した殺傷事件から日数が経っていないために、いささか生々しいタイトルの動画リストが並ぶことにはなったが……)。クエリにはたとえば取得の最大ファイル数を示すリクエストパラメータを追加したり、実際に動画をダウンロードする際のファイル形式を指定するなどして、モバイル環境向けに結果データを軽量化することも可能だ。
Google Data APIはアプリケーションを陰で支える役割であり、これを利用してどのようなWebアプリケーションを構築するかはユーザーのイマジネーションでいかようにも広がる。半谷氏はいくつかの実例と可能性を述べた。たとえば、デモでも使われたYouTube APIにアクセスすることで、自身のWebサイトに動画を貼り付けたり、スタンドアロンで動作するメディアプレイヤーアプリケーションを構築できる。モバイル向けの展開もあるだろうと半谷氏はいう。
Google Calendar APIを使うと、高機能なGoogleカレンダーをWebサイトに表示したり、カレンダーイベントをプログラムで操作したりすることができる。実際に半谷氏はGoogle社内向けのアプリケーションをいくつか作成したと語った。基調講演でも発表されていたように、YouTube APIやOpenSocial APIについての日本語訳ドキュメントが本日公開されたことで日本の技術者たちの関心を呼ぶことを半谷氏は期待し、Google Groupsのメーリングリストでも議論を深めたいと述べた。
講演終了後の質疑応答では、活発な意見交換が行われた。APIのRESTful対応の要望が出たが、現時点ではAtomのみであり今後全体を変えていくということについても否定的な見方を半谷氏は示した。また、ネットワークを介してやり取りするコンテンツを暗号化する技術のXML Encryptionの導入についても、経路を暗号化するSSLで当面は足りると考えているとも答えた。まだGoogle Data APIの公開されていないほかのサービスについては、いつとは明言できないものの、API公開のロードマップは存在すると半谷氏は語っていた。
(次ページへ続く)