movabletype XML-RPC 001
Movabletype、Blogger、MacrobyteConversant等のweblog システムには、XML-RPCインタフェースが備えられている。海外では、専用のツールを用いて記事のエントリや更新を行うことが広く行われているようで、有名なツールとしては、BlogBuddyがある。また、日本においては、ネットに接続可能なモバイル機器が普及しているというということもあり、e-mail から記事のエントリを可能にするサービスも開発されている。(DaijiHirataさんのmoblog [http://moblog.uva.ne.jp/]).
Movabletype2.64 では、記事のエントリはもちろんのこと、更新、削除、バイナリファイルのアップロード、最近の記事一覧の取得など、管理画面から可能な操作のほとんどをXML-RPCインタフェースを通じて行うことが可能となっている。既存のツールでは、記事のエントリ、更新を目的として設計されているものが殆どだが、応用次第では複数のweblogを取り込んだ新しい枠組みを構築することが可能に思える。
ネットワーク越しに、他のシステムにあるコンピュータの関数を呼ぶというコンセプトは、ネットワークが出来た時点からずっと存在してきたもので、Remote Procedure Calls(RPC)自体は、Webよりもずっと前からある技術である。
コンピュータが、他のコンピュータの機能を簡単に呼び出すことを可能にする、最もシンプルなWebサービスのひとつがXML-RPCであり、Extensible Markup Language(XML)によりRemote Procedure Calls(RPC)を記述し、HTTPプロトコルによりコンピュータ間でデータのやり取りを行うものだ。
XML-RPCの由来、歴史、コンセプトについては、既に多くのWebサイト、参考書がある。
- Userland XML-RPC [http://xmlrpc.com/]
USERLAND社による、XML-RPCについての記述があるページ。XML-RPCの仕様、各種言語による実装の紹介、XML-RPCによる公開サービスの紹介など。
- XML-RPC HOWTO(日本語)
[http://www.linux.or.jp/JF/JFdocs/XML-RPC-HOWTO/]
XML-RPCの概要、各種言語による実例をとおした解説がある。 - XML-RPC vs. SOAP
[http://weblog.masukomi.org/writings/xml-rpc_vs_soap.htm] - オブジェクト・モデルとしてのXML-RPC
[http://www-6.ibm.com/jp/developerworks/xml/020308/j_x-matters15.html]
- Simon St. Laurent (著), Joe Johnston (著), Edd Dumbill (著)
「Programming Web Services With Xml-Rpc」 - Ethan Cerami(原著), 長瀬 嘉秀 (翻訳), テクノロジックアート (翻訳)
「Webサービス エッセンシャルズ」
今後、Movabletype、各種WeblogのXML-RPCインタフェースを活用したシステムを構築する過程において、PHPによる事例、Tipsを紹介していきたい。