Ошибка XSLT при получении переменной
Я пытаюсь назначить переменные в файл xsl и использовать их позже в этом файле.
Вот как я их назначаю:
<xsl:choose>
<xsl:when test="matches(normalize-space(tokenize((//span[@class='timark' and matches(.,'Наименование и адрес')]/following-sibling::div[1]/p[@class='addr'])[1],',')[1]), 'BG[0-9]')">
<xsl:variable name="authtitle" select="normalize-space(tokenize((//span[@class='timark' and matches(.,'Наименование и адрес')]/following-sibling::div[1]/p[@class='addr'])[1],',')[2])" />
<xsl:variable name="authstreet" select="normalize-space(tokenize((//span[@class='timark' and matches(.,'Наименование и адрес')]/following-sibling::div[1]/p[@class='addr'])[1],',')[3])" />
</xsl:when>
<xsl:otherwise>
<xsl:variable name="authtitle" select="normalize-space(tokenize((//span[@class='timark' and matches(.,'Наименование и адрес')]/following-sibling::div[1]/p[@class='addr'])[1],',')[1])" />
<xsl:variable name="authstreet" select="normalize-space(tokenize((//span[@class='timark' and matches(.,'Наименование и адрес')]/following-sibling::div[1]/p[@class='addr'])[1],',')[2])" />
</xsl:otherwise>
</xsl:choose>
И когда я пытаюсь использовать их
<name>
<xsl:value-of select="$authtitle" />
</name>
Я получаю ошибку! Зачем?
Если я удаляю только
<xsl:value-of select="$authtitle" />
линия, это нормально. Так что, похоже, я неправильно обращаюсь к переменной.