画像をてきとーに一覧表示する。
/view-img/2003/ みたいな。
RDF は画像ファイル自身に埋め込んだのを取り出していちいち動的に合成してる。現状では同じディレクトリに samp-meta.rdf があるからそっち直接読んでもいいんだけど……実験ってことで……
合成するとき REXML 使ってるから怪しい XML (名前空間接頭辞が他のファイルと違うとか) があるとたぶんパースエラーになる。稀なケースだし Ruby のライブラリでガッチリキッチリ実装した使いやすいやつを知らないので仕方ない。
ローカル側では RDF を埋め込む (ファイル名に -meta.rdf をつけたやつを突っ込む) ときに画像サイズが一定以上だったらサムネイルを作って、その情報 (foaf:thumbnail) も追加して埋め込む。
サーバー側は同じディレクトリの画像をスキャンして RDF を取り出し、@rdf:about を書き換えて合成。合成したヤツを XSLT エンジンに渡す。あとはまぁ普通に XSLT テンプレの仕事で……
ちなみにファイル名のリストは別に XML 作って渡してる。丁度いい語彙があれば RDF に RDF として突っ込んだほうがスマートだけど考えるのが面倒だった。
だいぶソースが汚い。
関連エントリー
- +flavor ファイル名変更 latest.xsl.rdf という形から latest.rdf.xsl という形に変更。こっちのほうがいいっすね。
- 画像メタデータの管理法 画像に埋め込んであるだけだといちいち編集するのが面倒なので、簡単な管理方法を考えた。っていっても firefox.png に対して fire...
- XSLT + php php で xslt_process 呼ぶときにパラメータに配列(のように XSLT 側で処理できるもの=node集合)を渡すのって無理くさ...
- XSLT + php php で xslt_process 呼ぶときにパラメータに配列(のように XSLT 側で処理できるもの=node集合)を渡すのって無理くさ...
- PNG への RDF メタデータ埋め込み とりあえず iTXt への書き込み/読み込み方法はできたので実際にどうやって埋め込むかを考える。考えるっていっても、メタデータを埋め込んでい...