Угловые скобки в XSLT

Вопросы по программированию, не подходящие в другие разделы.

Модераторы: Naeel Maqsudov, C_O_D_E

Ответить
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Добрый день, привет всем, кто меня еще помнит. Вопрос такой: есть кусок XML:

Код: Выделить всё

<country>
    <country_name>AE</country_name>
    <payout>0.64</payout>
</country>
<country>
    <country_name>AR</country_name>
    <payout>0.84</payout>
</country>
<country>
    <country_name>AT</country_name>
    <payout>1.00</payout>
</country>
и т.д.
Делаю XSLT-преобразование, чтобы в итоге получить следующее:
<AE>0.64</AE>
<AR>0.84</AR>
<AT>1.00</AT>
На первый взгляд все выглядит прозаично:

Код: Выделить всё

<xsl:for-each select="country">
   <<xsl:value-of select="country_name"/>>
   <xsl:value-of select="payout"/>
   </<xsl:value-of select="country_name"/>>
</xsl:for-each>
Но две открывающиеся угловые скобки повергают транслятор в когнитивный диссонанс. Бэкслеш тут бесполезен. Варианты с CDATA и с &amp-последовательностями выдают опять же не то, что нужно. <xsl:text> тоже не спасает - он тоже тег. Вопрос: как впихнуть в вывод XSLT одиночную угловую скобку?
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Если кому надо - дело решилось так:

Код: Выделить всё

<xsl:for-each select="country">
	<xsl:element name="{country_name}">
		<xsl:value-of select="payout"/>
	</xsl:element> 
</xsl:for-each>
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить