Быстрый взгляд на спецификации показывает, что такая конструкция не разрешена:
Короче говоря, href
является единственным допустимым атрибутом, и в теле элемента не допускается содержимое.
Однако, если я понимаю ваш вариант использования, вам следует просто установить параметр обычным способом (используя ваш язык хоста). Не должно иметь значения, что это было определено в импортированной таблице стилей. Например, предположим, что у вас есть эта таблица стилей:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:import href="import.xsl"/>
<xsl:template match="/">
<xsl:value-of select="$test"/>
</xsl:template>
</xsl:stylesheet>
Что импортирует это:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="test" select="'default'"/>
</xsl:stylesheet>
... тогда установка параметра test
обычным способом должна просто работать. Обратите внимание, что вы также можете «замаскировать» параметр из импортированного листа, если хотите указать новое значение по умолчанию.
Итак, добавим это к первой таблице стилей:
<xsl:param name="test" select="'default2'"/>
... приведет к печати default2
(переопределение по умолчанию из импортированного листа).