parameters=
に渡す値はすべて自分でクオートしとこう。
libxslt はもともとパラメータの値に XPath そのまんま書けるんだけど、なぜか ruby-xslt の parameters=
ではクオートして必ず文字列で渡す。しかしながら、なんかこのクオートの実装が狂ってて、自分でクオート付け足してる癖に Invalid expression とか言い出してくれちゃう。やれやれだぜ!
正確に言うとクオートを付与する段階で、与えた文字列を中途半端に破壊的に変更するらしく、クオーテーションがかたっぽだけ付く。セッションとかで保存させながらのコードでもうハマったハマった。dup
してどうにかしたけど、自分でクオートして明示的に文字列にしたほうがよさげ。
ソースは読んでないので間違っているかも。あくまで挙動からの推測