――開発作業との親和性が高い「Optimus」の使い方を教えてほしい
Optimusは非常に簡単に使えるツールです。先のとおり、数多くの機能が用意されていますが、ここでは、代表的な機能としてデバッグ機能とデータ変換機能を見ていきましょう。
なお、Optimusは、自分のサーバー上にインストールして実行することも可能ですが、以下ではOptimusサーバー上で利用することを想定して説明していきます。
デバッグ機能
まずはデバッグ機能です。
デバッグ機能の利用手順は、Optimusのページ(http://microformatique.com/optimus/)を開き、同ページのValidatorフィールドにURLを入力してValidateボタンをクリックするだけです。
少し古い例ですが、こちらのページは、Optimasのデバッグ機能を使って出力されたレポートです。マイクロフォーマットの内容がフォーマット別に表示され、問題がある個所ではエラーが表示されていることがおわかりなるでしょう。
データ変換機能
続いてデータ変換機能です。
先述のとおり、Optimusは、マイクロフォーマットをWebページから抽出し、そのデータを変換して出力する機能を備えています。こちらは、Optimusの中でも最も重要な機能として挙げられます。
同機能を使用すれば、マイクロフォーマットのデータを自分のプロジェクトで自由に使えます。例えば、hcardに記述されたコンテンツの詳細をWeb上から探し出す"スパイダー"を作ることになったとしましょう。その場合も、Optimusを使えば、Webページに含まれている全てのhcardフォーマットを抽出し、JSONで書き出すといったことも非常に簡単に行えます。間違いなくデータを扱うのが楽になるはずです。
データ変換機能を、Optimusサーバー上で利用する場合、以下のように、「http://microformatique.com/optimus」の後にさまざまなパラメータを入力して実行することになります。
http://microformatique.com/optimus/ ?uri=《対象WebページのURL》 [&format=《format》 [&function=function》]] [&filter=《filter》]
上記パラメータのうち、《対象サイトのURL》は変換したいページ(マイクロフォーマットを含むWebページ)のURLです。
また、《format》には変換先の言語(フォーマット)を指定します。フォマーットはXML(入力値は「xml」), JSON(入力値は「json」), rss(入力値は「rss」)から選ぶことができ、省略すればxmlになります。
一方、《function》にはJSONのコールバック関数を指定します。何も使用しないのであれば入力する必要はありません。
そして、《Filter》は文字通り"フィルター"です。Optimusでは、変換元のWebページにマイクロフォーマットが数多く記述されていた場合に備え、変換対象のマイクロフォーマットの種類を絞ることができます。そのためのパラメータが《Filter》です。出力結果には、ここで指定したフォーマットのみが(半角スペースで区切られて)表示されます。何も指定しなければ、「vcalendar」、「hcard」、「hatom」、「hresume」、「hreview」、「hlisting」、「xfolkentry」、「adr」、「geo」、「xfn」、「votelinks」、「rel-nofollow」、「rel-tag」、「rel-lincense」が対象となります。なお、《format》にrssを指定した場合は、このパラメータは無視されます。
実行コマンドの例として以下のURIを用意しました。
http://microformatique.com/optimus/?uri=http://johnfallsopp.com/&format=json&function=&filter=hcalendar+hcard+hresume
このコマンドでは、以下のパラメータを指定しています。
- URI(対象WebページのURI): "http://johnfallsopp.com/"
- format(変換先フォーマット): json
- function(JSONのコールバック関数): なし
- filter(フィルター): "hcalendar+hcard+hresume"
上記URIを実行すると、以下のような結果が表示されるはずです。
もちろん、formatの値をjsonからxmlに変更すれば、XMLによる出力を得ることができます。
これで、マイクロフォーマットのデータ抽出処理を実装することなく、Web上のさまざまな情報を加工することができるようになりました。ぜひ皆さんもご自分で試してください。