Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вытянуть значения одноименных атрибутов / 2 сообщений из 2, страница 1 из 1
12.03.2007, 13:09
    #34384064
SuSa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вытянуть значения одноименных атрибутов
Народ привет.
Есть текст
<teg1 attr="зн_1">
</teg1>
<teg2 attr="зн_2">
<teg3 attr="зн_3">
</teg3>
</teg2>
<teg4/>
.... к примеру, есть теги в которых есть атрибут "attr " , с некоторым значением. Имена тегов не имеют значения, могут быть любыми, вложенность тоже может быть любая. То есть атрибут "attr " может лежать где угодно.
Вопрос, как вытинуть значения этих атрибутов и приветси их к такой форме:
<root>
<el atrib="зн_1"/>
<el atrib="зн_2"/>
<el atrib="зн_3"/>
</root>
Я написал так:
<xsl:template match="//@fpi" name="qq">
<xsl:for-each select="//@fpi">
<axsl:el atrib="{//@fpi}"/>
</xsl:for-each>
</xsl:template>
выводит одно и тоже значение, без "//" вообще ничего не выводит
Если написать вот так
<xsl:template match="*[@fpi]" name="qq">
<axsl:el atrib="{*[@fpi]}"/>
</xsl:template>
Выдает вообще табуляцию и текстовые поля,
Как написать?
...
Рейтинг: 0 / 0
12.03.2007, 14:05
    #34384370
SuSa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вытянуть значения одноименных атрибутов
ответ уже прислали, но автор че то скромный больно, вот его вариант:
<xsl:template match="/">
<xsl:apply-templates select="//@attr"/>
</xsl:template>

<xsl:template match="//@attr">
<xsl:text>
</xsl:text>
'<xsl:value-of select="."/>'
</xsl:if>
</xsl:template>
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вытянуть значения одноименных атрибутов / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]