とりあえず、現在の状態を公開。残りはPHP5がリリースされてから。
今回、XSLT部分はSDF STYLE SHEET(S3)としてPHPの支援が無くても動くようにした。XSLT1.0の範囲でしか作っていないので他のプラットフォームでも動く。
SDFとS3は名前空間を分割してSDF+S3をHTML+CSSに近い構成にした。SDFにS3の名前空間内の属性を付けることによってXSL変換時のフラグを立てることが出来る。現在の所、メタデータ部分を出力するかしないかが選択可能だ。違う名前空間なのでSDFの構造自体はいじらなくて済む。
core.xslはどのサイトでも普遍的に使われるテンプレートを含んでいる。細かい設定はinterface.xslに書けばよい。XSL変換の際はオーバーライドを可能にするためにどちらかと言えば設定ファイルに近いinterface.xslを呼び出すことになる。
S3の支援用にSiteMapが必要になった。グローバルナビゲーションのリンクを制作するのに使う。XSL変換中にはディレクトリ一覧を得ることが出来ないのであらかじめ手動で作っておくか、スクリプトなどで出力しておく必要がある。手動は面倒なのでPHPのスクリプトを書いた(makemap.php)。S3に混ぜると訳が分からなくなりそうなので、名前空間は専用のものを用意した。
S3だけでどんなプラットフォームでも動作可能なSDFの変換系は完成している。
HIMMELとしての機能は単純にサーバサイドでのXSL変換だけになった。interceptor.phpがメインのスクリプトだ。ソースがやたら適当だがPHP5が出るまで書き直すつもりは無い。S3による変換後、必要ならXHTML1.0に書き直し(11to10.xsl)、名前空間接頭辞を綺麗にして(valid.xsl)、DTDを付け加えつつインデントしている。インデントする前にpre要素内だけは配列に保存しておいて、インデント後に置換している。こうしないと空白ノードがおかしな事になるのを避けるためだ。
Arielworks.net内にあるfoobar2000関係のコンテンツは全てWikiにマージするべきだと思う。Wikiの作法がよく分からないし、面倒なので放置しているが、余裕がある人がいたら是非ともお願いしたい。こういった類の情報はみんなでどんどん更新した方が良いはずだ。
最新表示分は同一日中でも新しい記事が上になるようにした。スクロールしなくても更新が分かるのでこの方が便利なはず。
携帯電話の側にいない時に2度ほど電話があったらしく、最終的にFAXが来ていた。どうやら追い込み調整になったらしい。既に発送済みとのこと。明日には帰ってくるだろう。――T961が。
え!?
打ち間違いだと信じたい。大きくなって帰ってくるならある意味うれしいが、21インチなんて机に載らない。いくら何でもデカすぎだ。返送の手配をするのも面倒なので勘弁して欲しい。
Andi氏の投稿によると問題がなければ24時間以内にPHP5がリリースされるようだ。