

※C-StationのC-TICKERを改変して使用しています。
先日、RSSとXSLTを使ったサイト更新情報のページをオープンさせた。非常におもしろいものなんだが、ブラウザーがXSLTに対応していないと閲覧できない。なぜかWinIEではページのスクロールが異常に重いし、MacIEに至ってはブラクラ代わりにもできる( ̄△ ̄;。
そこで普通のブラウザーから閲覧できるよう、HTML上もRSSの情報を埋め込む方法を調査し続けていたのだが、Flash5にXMLから情報をひっぱれることに気がついた。それでFlashでXMLについて検索をかけていたらありました、RSSからタイトル情報をひっぱってニュースティッカーとして表示するプログラムが。
C-Stationで配布しているC-TICKERがそれなんだけど、見たところ扱いも簡単そうでこれを使おうかなと思った。ところがなんと、こいつが対応しているRSSはバージョン1.0以前のネットスケープの独自規格なのだそうだ。RDFを利用した現在のRSSを読み込んでも解析不能と表示されてしまう。
そこで、家人のiMacのハードディスクのこやしとなっていたFlashの出番。元ファイルが付属しているので、こいつをFlashMXで開いてどのような処理がされているのかを調べる。おそらくXMLのツリー構造を追いながら抜きだす要素名を指定しているだけだろうと思っていたら案の常ムービーの最初に、変数を初期化する一連のスクリプトの中に、var items = getNodes(getNode(getNode(getNode(this, "rss"), "channel"), "item")という指定を見つけた
0.9系のRSSの場合、更新内容のタイトルにあたる「title」要素は、rss要素中のchannel要素中のitem要素直下に置かれる。これが1.0では「rdf:RDF」要素の「rss:item」要素中に変更されている。上記の指定をこのツリーに従って書き直せばいいはずだ。
ただ、名前空間の識別子を正直に書いてもうまくいかない。おいらが用意したRSSファイルはデフォルトの名前空間がrssのものであるため、rssの要素はすべて識別子を省略している。そのためvar items = getNodes(getNode(getNodethis, "rdf:RDF"), "rss:item")と記述してもFLASHは目的のデータを見つけられず、var items = getNodes(getNode(getNodethis, "rdf:RDF"), "item")と記述し直す必要があった。
もひとつ、非常に面倒くさかったのが文字コードの問題。おいらはRSSファイルを日本語EUCで記述していたが、それではFlashから読み込んだときに文字化けが置きてしまう。詳しく調べると、Flash 5まではShiftJISで、MXからはUTF-8で読み込むようにしないとならないとのこと。今さらShiftJISもなんなので、MXがネイティブ対応しているUTF-8にRSSファイルを変換したところバッチリ。やっぱXMLを扱うならUTFということなのねん。
どうせならHTMLのほうもUTF-8化したかったが、emacsのユニコード対応に手間どっているのでこれはまた暇なときにでも挑戦。
んで、Flashのティッカーを設置してから一週間。ログを見るとswfファイルがリクエストされた数と設置されているページのリクエスト数が大きくかけ離れている。みんなFlashをロードしないようにしているのかなぁ。
ところでOperaからこのティッカーを呼び出すと「解析できませんでした」と表示されてしまう模様。人によっては「ページが重くて……」という声も聞いたりして「???」な状態。前者は詳しい人に見てもらったらOperaのプラグインの実装の問題という感じらしく、Opera側での対処を待つしかなさそう。後者は詳細な状況や環境がわからないのでどうしたものか( ̄△ ̄;。
で本題。あれからあれこれ調べているうちに、このRSSというのはどうやらXML利用のごく初歩的なもので非常にとっつきやすいらしいことがわかってきた。確かに書式はそれほど難しくないし、神崎さんのサイトでも紹介されているので、有用性がそれなりに理解され整形の方法を確保できれば、普及にはずみが付く可能性もある。
整形の方法として、おいらが行ったFlashやXSLTを使う方法やサーバー側で変換する方法というものあるんだけど、ブラウザーの機能としてRSSの表示機能を用意してくれるとおもしろいかなぁー、と思っている。
例えば、もしかしたら既にそういうものが存在しているのかもしれないけど、ツールバーやサイドバーに「更新情報」の表示機能を持たせるという選択肢はどうだろう。HTML側に<link rel="rss" href="./update.xml">とでも記述しておけば、ページの読み込み時にRSSファイルも読み込んで、下の想像図のように表示してくれるとかね。

上はツールバーに実装した例。まさにティッカーのようにタイトルが表示され、気になるタイトルが表示されたときに、移動ボタンを押すというもの。ただ常時表示されているものだけに、チカチカさせすぎると、うるさく感じられるかも。

こちらは、サイドバーとして実装した場合を想定。タイトルのみを表示して「詳細を表示」ボタンを押すと説明文が表示され、タイトルのクリックでリンク先に移動するというもの。
書式はそれほど難しくないと書いたんだけど、万が一の書き間違いを防ぐにはバリデーター(文法チェッカー)が不可欠になってくる。
RSSにもバリデーターは存在していて、その名もズバリ「RSS Validatorl」というサイトがある。検証したところ無事適合。検証結果には「こんなバナーを付けてみては?」という提案が添えてあったのでありがたく頂戴した次第。
RSSの分野はそれなりに商売になる可能性があるようで、ポータルなどに配信先を持つ広告業者が、クライアントからRSS形式で広告データを受け取って、それをテキストなりFlashのかたちで配信するという方法が検討されたりしているらしい。バナーとは異なるかたちでの配信が普及すれば、商用ページの作りかたもまた変ってくるかもしれない。でもたしかおいらは、サイトナビゲーションバーのときにも「ページの作りかたが変るかも」と考えていた記憶が……。
昔、「XMLなら何でもできる」的な吹聴がされていた時期があって、今それはようやく落ち着いたような印象を受ける。XMLはマークアップのルールを定めたものなので、それ自体では何もできない。だから、問題はそれをどのような応用規格に仕上げ、どのような活用法を見い出すかにかかっている、というわけだ。
VoiceXMLという規格も、その活用法を探している規格なのかもしれない。これは音声認識の技術ではなく、入力された音声に対する処理をコントロールしたり、逆にXML中に記述されたデータをどのような形で吐きだしていくかを定義するためのマークアップ言語、とおいらは解釈している。
以前のアットマークITでVioceXML関連の特集が組まれている。これによると日本テレコムのVoiziといったサイトで開発の擬似体験ができる模様。サンプルとなるXMLコードもいくつか公開されている。
確か今年の夏ごろだったか、米IBMとノルウェーのOpreaでVoiceXMLを使ったモーダルブラウザーの開発という発表があった。報道資料には具体的な話は一切書いていないので、これだけでは何を作るのかよくわからない。だけど、おそらく、情報やデータベースに電話音声でアクセスするためのインターフェース(というかフロントエンドになるWebアプリ)がVoiceXMLで構築されるようになる、という見込みがあるんだろうということだけは理解できる。
そうなれば音声操作に関する市場が誕生する。病院や企業なんかではナレッジベースへのアクセスにハンズフリーの携帯電話やIP接続が可能なトランシーバー、音声対応のPDAなんかを使うようになるかもしれない。IBMとOperaはそのときのために、媒体となるブラウザーを用意しているのではないかという気がする。
ちなみに、VioceXMLを電話音声に変換するためのゲートウェイのお値段は沖電気製のもので100万弱〜800万円くらい。いわゆるソリューションなのではっきりした値段はおいらにもわからん( ̄△ ̄;。で、この機械では同時に10〜20人くらいのアクセスをさばける模様。そういうえば、とあるハードディスクの代理店の代表電話で、繋ぎたい先をしゃべってみろという自動応答に出あったことがある。今はそういう使いかたが一般的なんだろうなぁ。電話受付係の給料を考えれば安いもんだし。
この技術の活用法を真面目にいろいろ考えた挙句に出たごくありきたりの結論。ウェブメールをこの技術で作れば、ハンズフリーの携帯電話やカーナビでメールをやり取りできるようにはるはず。でもやっぱり、そういう方向にはいかないのかなー。どちらかというと、これでバーチャルおねーちゃんとのエロボイスチャットチャンネルみたいなコンテンツにみんな走るのかなー、と思ったり<昔のダイヤルQ2みたいですな( ̄△ ̄;。
この間、ありみかさんの掲示板で古林さんとあれこれやり取りしていたときに、アパッチからXML文書のデータ送信をさせてMac IEで受け取るとどうなるかを確かめるために、XMLファイルをapplication/xmlに設定してテストしてたなんてことがあった。ちょっとそれを思い出して、XHTMLファイルをapplication/xml+xhtmlで送信するテストしてみた。
セッティングは非常に簡単で、.htaccessというファイルをXHTMLファイルと同じ階層に用意して、viみたいにドット付きファイルを開けるエディタで開く。そこにAddType application/xml+xhtml xhtmlを記述する。このファイルはサーバー側で設置を許可していないと、屁の役にも立たないんだけど、OS Xのアパッチならなんの問題もなく利用できるみたい。
試しにXHTMLファイルのファイル名に付く拡張子を「.xhtml」に書き換え、ファイルを読み込ませたところ、さっそくエラーが表示されレンダリングが中止に( ̄△ ̄;。「なにー!?」と思いながらチェックすると、タグの閉じ忘れを発見。効果テキメンですな。モジラにある「ページの情報」の「一般」タブからMIMEタイプを確認するときちんとapplication/xml+xhtmlになっている。たいしたもんだね。
というか、普段バリデーターなんてかけないので、こういったミスには気が付きにくい。元々MSとネットスケープがエラー補正の難しさに音を挙げて提案した機能だけあって、ミスに簡単に気が付く仕組みはありがたいかなあと。これが一般的になれば、開発側じゃエラー補正なんておせっかいをしなくて済むし、iCabのようなバリデータ内蔵も不要に。そしておいらも、エラーのない文書を作るようになる、と。メデタシメデタシ<まだ先の話だけどね( ̄△ ̄;。
完成前のソフトをあれこれ批評するのはどうかと思っていたりするので、Opera 7についてはどうしようかと思っていたのだが、丸1日使ってみた結果、妄想したことを。
このソフトというのは「Opera」の最新版ではなく、「Opera 7 バージョン 1.0」として受け取るしかないんだろうなぁ。10月頃から欧米のプレスにリークされていた情報によれば、1年半前からOpera 6の開発と並行して、レンダリングエンジンのリバンプを行うプロジェクトが進行していたという。
そして目の前に現われたOpera 7には、PCとは異なる環境での表示を再現する機能やまるでMac OS X用ソフトのようなルックアンドフィール、そしてメールというよりもコミュニケーターと呼ぶのが相応しい、まったく新しい概念(まー、マイクロソフトアントラージュにはこの発想の原形とも呼べる、相手との最終コンタクトの確認機能があったわけだが)で構成されたメール・ニュースクライアントが搭載されていた。
最高速のブラウザーとしての特徴は相変らずだが、どうもOperaはこのバージョンにおいて、彼等の言うところの「インターネット・エクスペアレンス」を根本から変革したいと願っているような気がしてならない。
IE 7がOperaのようなブラウザーを作るという噂が流れている中、過去のOperaを捨ててでも新しいインターネット利用の形を作りたかった、という気迫がOpera 7からは感じられる。新しいレンダリングエンジンの開発も、コマージャル的な派手な機能がないのも、なんとなく使いにくい気がする「メーラーのような機能」が付属しているのも、すべてはそういった製品哲学の上でブラウザーを作り直していく、その過程で生み出されたものなのかもしれない。
「仕様が変った」というより「似て非なる」挙動を示すUIやホットパネルは、Opera 7がバージョン1.0のソフトだからなのか。それを証明するかのように、現在のOpera 7の完成度は、Opera 6.0のベータ1と比べてもあらゆる意味で低く荒削りだ。
モジラが、XHTMLが、そしてMac OS Xが経験してきたように、まずはこの形で仕様を安定させ、そして改良の道を歩んでいくことになりそうだ。そして、この製品哲学が支持を得ればOpera 7は今後大化けするかもしれないし、支持されなければOpera社もろとも、この世から姿を消すことになるかもしれない。
(追加)Operaは組み込み機器方面に強いので、例えOpera 7が失敗しても、すぐには消えることはないのでは? と指摘を受けました。たしかにその通りかも。
ただ、おいらの回りの意見は好意的だ。「これはOpera 7という、まったく新しいブラウザーが生れたいうことだ、と思うんだがなぁ」と言った人もいる。おいらが最初に述べた「Opera 7 バージョン1.0」という記述は、その彼の発言がまさに我が意を得たりと思ったからだ。
うまく行けば、Operaは「ウェブ標準」や「PCからではない機器からのウェブ利用」に目を向けさせる呼び水になるだろう。それにしても、これはMac OS X版でこそ人気が出そうな作りをしているのに、なぜ未だにマック版は前バージョンのベータテストですら終らないのですか( ̄△ ̄;。
某スレで最近とみに見かけるようになった言葉。セマンティック・ウェブとは、この分野では啓蒙的な役割を果たしているthe Web Kanzakiのメタ情報とセマンティック・ウェブによるとメタデータに基づいてコンピュータが推論を行い、ウェブ自身が意味を表現する
システムモデルとして説明されている。
このセマンティック・ウェブの根幹を成す技術のひとつにXMLがある。おいらは昔からXMLが気になって気になってしょうがない人間だったので、このセマンティック・ウェブがやはり気になってしょうがない。先日のRSSもそうだが、なんとか自分のものにできないか、なんとかこれでおもしろいことができないか、と固くなりはじめた頭を使って必死にもがいている最中だ。
ただ、XMLという冗長なマークアップ言語とある程度のサーバー側の処理やDOMなどを利用したスクリプトによるコンテンツの動的な処理が活用に不可欠になってくるため、その全容の理解や活用はなかなか難しい。かく言うおいらは最近PHPの解説書に首っぴきだ。
XMLで記述された言語はシステム的な記述がなされている反面、どうしてそのような記述が必要になるのかを一般の利用者が理解することは難しい。浅い理解になってしまう以上、生のマークアップテキストを編集するのは敷居は高く挑戦する人が少くなってしまっているのが現状。セマンティック・ウェブは夢のまた夢にもなりかねない。
この現状を脱するために、今後のツールの充実は不可欠になってくるはずだ。身近なところではウェブサイトの管理ツール(たいていはウェブ・オーサリングツールに付属)が鍵になってくるはず。オーサリングツールで簡単なセマンティックウェブの実現に必要なデータを吐き出すようにしてくれれば、状況は変ってくるはず。
ゴーライブのサイト設計図作成機能やドキュメント管理サーバーなんてまさにそういった機能のインターフェースにはうってつけなんだけどなぁ。しょせん今のところは、アドビたんの「目に見えるものが大事」なデジタルパブリッシング戦略の道具でしかないんだけどね。
彼に出会ったのはもう何年も前のこと。ちょうど大学が暇になり、アルバイトで潜り込んだ先の上司だったのがその彼だ。
非常に面倒見のいい人で、部下が仕事で使っている機材が非常に非力だと知ると自分に割り当てられている最新の機材と交換したり、徹夜が続いて皆が出勤時間に遅れがちになると「時間までに来た人には叙叙苑で昼飯おごっちゃる」と言ってハッパをかけたりと、皆を元気づけるための努力を惜しまない人だった。
後年彼が偉くなった頃、とある雑誌が彼を取材しに来て「この人が元気なときは、この会社も元気。そういう気持ちにさせてくれる人」という評価を書いていた。この頃には彼の部下はすでに70人を越していたが、何かあるとすぐに飛んで来て「最近,おもしろいこと考えているんだって?」とか「××君から君が大変だと聞いたんだけど、体調大丈夫か?」と尋ねてくる。「どんなに偉くなってもちゃんと自分のことを見ていてくれているんだ」と感じることができる、そういう人だった。
こういった人柄もさることながら、皆が一番の信頼を寄せていたのが彼の鉄人的な体力だった。部下の尻拭いで何日も徹夜が続いても、皆の前では疲れている素振りをまったく見せない。だが、お酒が非常に好きな人なので、ちょっと口車でビールを勧めるとすぐに飛び付いてくる。そうやって飲ませてみれば疲れていることはバレバレで、1本空けるころにはすぐに寝入ってしまうのだ。だた、2〜3時間もすればムクっと起きてきて何事もなかったかのように再び仕事をし始めていたのだが。
キツい仕事だったので、誰もがそのことに対し不平不満は口にするのだが、そういうときには彼がやって来て皆の労をねぎらってくれる。誰もが彼が一番仕事をしていることを知っているので、そうなると文句ばかり言っていられない気になったのだ。
また、彼がそれほどまでに忙しかったのは、皆が気持ちよく仕事をできるようにさまざまな気配りや行動をしていてくれたからにほかならない。彼がいて不倒不屈の姿で皆を守っていてくれていたからこそ、皆も彼に継いて行き、彼のようになっていこうと思っていたのだ。
守ってくれているという安心感は、上に立つ人間がちょっとしたことでゼィゼィハァハァ言っているような姿からは浮び上ってこない。誰かがそこで仕事をしていることを不幸に思っているのであれば、それはそこを守るべき上の立場の人間が、自分が楽をしたいばかりに手を抜いていた結果なのかもしれない。もしくはそこまでの管理能力がなかったり、現状を認識して努力する勇気が足りなかったということなのかもしれない。
あれから何年も経ち、おいらは彼の元を去って自分の道を歩いている。そして、おいら自身あの頃の彼の姿に自分を重ね写してみ始めるようになっている。おいら自身はまだまだ自分のことでヒィヒィ言っている毎日だったりする。彼のようにはなれないかもしれないけど、彼の背中を見ながら培ってきた自分なりの何かで、そんな安心感や信頼を築き上ていくことができたらなぁ、と思っている今日この頃なのだ。