スキップしてメイン コンテンツに移動

gadget.xmlにxslを設定してみた

gadget.xmlが検索結果に

gadget.xmlがクロールされて検索結果に表示されるようになりました。

そのページをブラウザで開いてしまうと、画像のように表示されて多くのネットサーファーにとっては、なんじゃこりゃぁ、、(松田優作)です。

そこで、xmlにxslを設定して見やすくしてみました。

xslを適用したgadget.xml

http://gadget-os.googlecode.com/svn/trunk/gadgetOS.xml

gadget.xslはこんな感じ。

http://code.google.com/p/gadget-os/source/browse/trunk/gadget/gadget.xsl

xsl

xslはあんまり馴染みのない方もいるかもしれませが、(僕も今回はじめて書きました)こいつはIE6から対応してる年季のいったものなので安心して使えるっぽいです。

さて、xslは見栄えの調節にとどまらず、元のxmlとは関係なくhtmlタグを生成できます。

ガジェットに関する案内を表示したり(作者のブログやiGoogleに追加など)、そのうえ、iframeでガジェットのデモ動作ができたりとかなりユーザーエクスペリエンスアゲ↑アゲ↑ですね。

ただし、OAuthやOpensocial.APIなどは動かないので注意。

またxslはxmlと同一ドメインに置かないと怒られます。ひとの作ったxslにリンクして利用することはできないので注意。

jsもxml+xslで走るっぽいのでもう少しいろいろできそうですが(デモ用iframeのsrcをjsで動的に設定すればxslが使いまわせる、とか)、とりあえずここまで。

ところでgadget.xmlにxslを指定する前例がないみたいだし、そもそもxsl自体あんまり情報がないような。。。

Google Codeなど、オープンな場所にgadget.xmlを置いている場合はきっとクロールされているので、このxslを参考にちょっといじって読み込ませてあげるだけで、なんじゃこりゃぁ、、(松田優作)という事態を回避できます。

Opensocialガジェットのデベロッパー同志で申し合わせて、ある程度フォーマットを決めてしまうのもいいかもしれませんね。

そうすればすぐに、これはOpensocialのxmlだって分かりますし、いいデザインのものを躊躇なくコピペして使えればホクホクですし。

ではでは~