Ошибка 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" />

линия, это нормально. Так что, похоже, я неправильно обращаюсь к переменной.

0 ответов

Другие вопросы по тегам