Как передать параметр в xslt, который можно использовать в ключе xsl:
Для этого используйте XSLT 2.0.
В XSLT 1.0 «Ошибка в значении атрибута use или атрибута match, содержащего VariableReference ». согласно спецификации
Это ограничение было введено в спецификации с целью предотвращения цепочки циклических ссылок.
Есть лиЕсть ли способ сделать это, кроме изменения xslt на лету?
Да, ваш код XSLT может сгенерировать новую таблицу стилей xslt , которая использует конкретное значение параметра в определении ключа.
Или, если значения параметра относятся к конечному набору, у вас могут быть ключи, определенные для каждого возможного значения, - и сам параметрбудет содержать имя ключа для использования - обратите внимание, что аргумент имени ключа функции key()
может быть любым выражением, включая ссылки на переменные.