
第3回 XML文書をiモードとPalmに対応させる
1つのXML文書を、PC用やPalm用、携帯電話用など、さまざまな情報機器に合わせて変換できるのは、XMLの特徴の1つといっていいだろう。Cocoonを使えば、そうした仕組みを実現できる。今回は、用途に応じてXML文書を変換するための仕組みと、スタイルシートの切り替え方法について解説しよう。
太田一郎
ティアイエス株式会社
2001/12/5
| スタイルシートの切り替えに挑戦 | 
前回「XML文書をCocoonでパブリッシュする」では、Cocoonを用いたサーバサイドでのXSLT変換の例を取り上げました。XSLTのスタイルシートを適用するだけなら、Webブラウザ上で適用するのと大差ないのでは、と思われた向きもあるでしょう。そこで今回は、サーバサイドだからこそできるCocoonならではの応用例について紹介します。
World Wide Webといえば、昔はPCで見るものでしたが、最近ではPDAやスマートフォン、いわゆる携帯電話からもアクセスできるようになりました。利用者からするといろいろなデバイスからWebの情報にアクセスできるようになったわけで非常にめでたいという話なのですが、情報を提供する側からいうとそれほど良い話ばかりでもありません。
さまざまなデバイスからWebにアクセスできるようになったといっても、それぞれの表現能力(画面の大きさ、解像度や色数)は大きく異なります。いろいろなデバイスに情報を提供するためには、それぞれのデバイスで適切に表示できるよう、複数の形式で情報、すなわち複数のHTML文書を準備する必要がでてくるわけです。情報の更新の手間などを考えるとこれはなかなか大変です。
そこでXMLの登場です。情報そのものはXML文書で作成しておき、アクセスしてきたデバイスに応じてスタイルシートを切り替えてやるのです。スタイルシートを複数用意するという手間はありますが、情報自体は一元管理できますから使わない手はありません。
これを実現するにはWebサーバにそれなりの仕組みが必要になってきますが、Cocoonを用いると非常に簡単に実現することができます。今回は、このCocoonのスタイルシート切り替えの機能について見ていくことにしましょう。
■スタイルシート切り替えサンプル 〜 Hello World
まずは、非常に簡単なサンプルから取り上げてみましょう。題材は前回取り上げたサンプルの文書です(リスト1)。
| <?xml version="1.0" encoding="Shift_JIS" 
            ?><message> | 
| リスト1 hello.xml | 
前回は単純にXML文書をHTMLに変換して表示させただけでした。今回は、PC上のWebブラウザとしてMozilla、携帯電話としてiモードの、2種類のWebブラウザを想定して、それぞれに最適化されたHTMLへと出力を切り替えてみることにします。
最初は簡単に、出力メッセージに付加するラベルだけ切り替えてみることにしましょう(リスト2とリスト3)。
| <html>  | 
| リスト2 Mozilla用のHTML | 
| <html> | 
| リスト3 iモード用のHTML | 
これらを出力するためのスタイルシートは、それぞれリスト4およびリスト5のような形になります。
| <?xml version="1.0" encoding="Shift_JIS" 
            ?>  | 
| リスト4 Mozilla用の出力を行うためのスタイルシート(hello-mozilla.xsl) | 
| <?xml version="1.0" encoding="Shift_JIS" 
            ?>  | 
| リスト5 iモード用の出力を行うためのスタイルシート(hello-imode.xsl) | 
いずれも前回取り上げた例題とほぼ同じなので、詳しい説明は不要ですね?
さて、これで準備はほぼ完了です。あとはCocoonに対して、これらのスタイルシートを切り替えるように指示を出すだけです。次のページでは、その方法について紹介していきましょう。
| スタイルシート切り替えの仕組みは?  | 
| Index | |
| XMLサーバ/Cocoon自由自在! 第3回 XML文書をiモードとPalmに対応させる | |
|  | スタイルシートの切り替えに挑戦 | 
| スタイルシート切り替えの仕組みは? | |
| 注文リストをiモード用とPalm用に変換してみる | |
|  | 「XMLサーバ/Cocoon自由自在!」 | 
- QAフレームワーク:仕様ガイドラインが勧告に昇格 (2005/10/21)
 データベースの急速なXML対応に後押しされてか、9月に入って「XQuery」や「XPath」に関係したドラフトが一気に11本も更新された
- XML勧告を記述するXMLspecとは何か (2005/10/12)
 「XML 1.0勧告」はXMLspec DTDで記述され、XSLTによって生成されている。これはXMLが本当に役立っている具体的な証である
- 文字符号化方式にまつわるジレンマ (2005/9/13)
 文字符号化方式(UTF-8、シフトJISなど)を自動検出するには、ニワトリと卵の関係にあるジレンマを解消する仕組みが必要となる
- XMLキー管理仕様(XKMS 2.0)が勧告に昇格 (2005/8/16)
 セキュリティ関連のXML仕様に進展あり。また、日本発の新しいXMLソフトウェアアーキテクチャ「xfy technology」の詳細も紹介する
|  | |
| 
 | |
|  | 

 







