ネームスペース関連でめんどくさいことが……。共通化した XSL ファイルの中で本文を変換したりとか、共通部分を出力するテンプレートとか書いているのだけれど、デフォルトネームスペースの違うほかのフレーバーファイルでそれをインクルードして、その共通化されたテンプレートを適用すると、ネームスペースが新たにコピーされてしまう。本文を出力しているやつはかなりアドホックな対応<xsl:text disable-output-escaping="yes"><</xsl:text> のようなのを書いて直接タグ作ってやるっちゅうローテクな方法。で見ないことにしてきたけれど、abbr 要素簡略化やらにそのアドホックな方法を適用すると非常に醜い。
共通化した XSL ファイルでデフォルトネームスペースをなくせばいいかと思いきや、それでも xmlns=""
という属性が付いてしまう。どうしたらよいやら……
フレーバーごとに別の共通 XSL ファイルを作るのが(全く同じことを繰り返すのでスマートではないが)一番単純明快だよなぁ。それ以外に今のところ解決方法を思い浮かばない。ただ、Atom のように、ちゃんとネームスペースを宣言した中で呼び出す限りは問題ないので、RSS のフレーバーだけ同じことを書き直すことになる。うーむ。
とりあえず RSS のやつだけほぼ同じのをコピペ。RSS の場合は footnote の出力を変えなきゃいけないから、まぁいいかもしれない。どっちにしろ同じのを何度も書くのは好きじゃないけど……