同一文書のフラグメントへのリンクにホバーした画像

同一文書のフラグメントへのリンクでプレビュー、とか……邪魔か便利かのぎりぎり狭間ぐらいなのでまだ適用はしてない。微妙。

適当に書いて動作したのは Opera, Gecko だけ……IE は何故か動かない。でも Opera は動的なレンダリングが苦手 (糞遅い) のでハズしてみてみた。

DOM の Range とか使ってみちゃう?とか思ってたけど IE では見事に実装されていないみたいなので普通に cloneNode() して CSSoverflow あたりで適当に表示制限。まぁ結局 IE で動いてないわけですが!

なんかの勘違いだったもよりで、IE でも正常に動作してた。キャッシュか何か読んでたカナ。

スタイルを書き換えて適用してみた。このセクションの画像とは違う。スモールスクリーンモード (謎)

Opera (7.6 preview) でもう一回試してみたら割りと普通になってたので適用してみる。

ただ、ネゴシエーションされたファイルの扱いが違うので Opera では一部プレビューされない。Opera は href="" というリンクのときネゴシエートされた後のファイル名を使うのでうまく処理できない。ぶっちゃけどうにもできないので仕様。

  1. トップ
  2. web
  3. フラグメントプレビュー

今年アレだったやつを列挙。

  • Blues Drive Monster / the pillows
  • エコー / BURGER NUDS
  • 斜陽 / ART-SCHOOL
  • SENTIMENTAL GIRL'S VIOLENT JOKE / NUMBER GIRL

この中からさらに一つに絞るなら Blues Drive Monster 。

  1. トップ
  2. music
  3. 2004.fpl

2004年12月の指向性メモ で言及されてるのを読んでもう一度仕様書を読み直してみる。

Variables introduce an additional data-type into the expression language. This additional data type is called result tree fragment. A variable may be bound to a result tree fragment instead of one of the four basic XPath data-types (string, number, boolean, node-set). A result tree fragment represents a fragment of the result tree. A result tree fragment is treated equivalently to a node-set that contains just a single root node. However, the operations permitted on a result tree fragment are a subset of those permitted on a node-set. An operation is permitted on a result tree fragment only if that operation would be permitted on a string (the operation on the string may involve first converting the string to a number or boolean). In particular, it is not permitted to use the /, //, and [] operators on result tree fragments. When a permitted operation is performed on a result tree fragment, it is performed exactly as it would be on the equivalent node-set.

強調した部分が重要らしい。最初の強調がややこしい。原文引用なのは訳文がまたさらにややこしいから (謎)

結果ツリーフラグメントに使える操作はノード集合の一部 (最初の強調) でその許される操作ってのは文字列にできるやつだけ (二つ目の強調)。あとはその後に書いてある通り、/ とかの演算子は使えない。

結局、結果ツリーフラグメントが格納されている $rtf がある場合において <xsl:apply-templates select="$rtf/child::node()"/>XSLT1.0 的にはエラーらしい。

そんなこんなで、XSLT1.0 でマトモな変換を書こうとするとかなり冗長なことをせざるを得ない状況が生まれるみたいです。めんどくさー

関係ないけど、どういう経緯でこういう制限がついたんだろう。

  1. トップ
  2. web
  3. 結果ツリーフラグメントの誤解
  1. トップ
  2. xslt
  3. 結果ツリーフラグメントの誤解

今年は (前にも書いたけど) 異様に長く感じる一年だった。IRC#汚れの巣 に突っ込んだのも、ヘッドフォン娘のアレ を書いたのも、去年かそれより前に感じる。それぐらい長く感じた。でも長く感じる割に起きている時間が少なかった気もする。殆ど寝てた。

この一年で何が変わったのか。少し技術と知識は向上しただろうけど、基本的なところでは何が変わったかよくわからない。諦めがはやくなったぐらいか。あとは常に身近な誰か (自分も含めて) が死ぬような予感がつきまとって気持ち悪かった。

キーワード。想像力とうさんくささ。とにかく頑張れなんて言葉をたやすく言わない。気付くと嫌いな言葉がいっぱいある。軽くどうでもいいけど困るのは自分だからなっていうフレーズはうさんくささがレベル最高ぐらいある気が。

とりあえず卒業はできそうでなにより。その後どうなるかはわからんわけだけど?

  1. トップ
  2. life
  3. 2004 として
  1. トップ
  2. self
  3. 2004 として