0

グループ化のためにxsl:keyを定義したいと思います。ただし、パラメータを渡すことができるように、一般的なものにしたいと思います。それはどういうわけか可能ですか?私はこのようなものが欲しいです:

<xsl:key name="key1" match="$matchnode" use="$usenode" />

しかし、それは機能しません。同じ動作を取得できますか?

4

1 に答える 1

0

XSLT 1.0では、パターンはグローバル変数を参照できません。XSLT2.0では可能です。したがって、2.0では使用できます

match="*[name()=$matchnode]"

これが仮想構文の意図された意味であると仮定します。同様にあなたは使用することができます

use="*[name=$usenode]"

もちろん、これはuse式が子要素である必要があるため、完全に一般的ではありません。たとえば、属性は許可されません。完全に動的にするには、実行時に文字列からXPath式を作成できるsaxon:evaluate()などの拡張機能が必要になります。

于 2012-12-19T11:30:17.193 に答える