Атрибут select
для xsl:with-param
ожидает выражение.Если вы пытаетесь передать текстовую строку, вам нужно заключить значение в апострофы, например, так:
<xsl:with-param name="ColName" select="'Test Description'" />
(Обратите внимание: если вы, например, сделали <xsl:with-param name="ColName" select="Test" />
, вы бы не сталиесть ошибка. Хотя вы не получили бы ожидаемых результатов, так как в этом случае он бы искал элемент с именем Test
в вашем XML.)
Также обратите внимание, чтоследующее выражение не будет работать для вас:
<xsl:when test="ValidationType='$ColName: Non-Numeric'">
Здесь оно будет буквально искать строку «$ ColName: Non-Numeric».Он не будет оценивать «$ ColName» как переменную внутри строки.Вам нужно сделать это ...
<xsl:when test="ValidationType=concat($ColName, ': Non-Numeric')">