Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > Общие вопросы Web
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.09.2016, 20:37   #1
x_Alex_x
Пользователь
 
Регистрация: 13.01.2013
Сообщений: 94
По умолчанию Преобразование XML с помощью XSLT

Необходимо преобразовать xml вида:
Код:
<elements>
    <element>
        <value>значение</value>
    </element>
    ...
    <element>
        <value>значение</value>
    </element>
</elements>
чтобы вышло вот так:
Код:
<elements>
    <element value="значение">
    ...
    <element value="значение">
</elements>
x_Alex_x вне форума Ответить с цитированием
Старый 28.09.2016, 21:09   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

как-то так:
Код:
<xsl:stylesheet version="1.3" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" encoding="ISO-8859-1" indent="yes" />
    <xsl:template match="/">
        <elements>
			<xsl:for-each select="//elements/element">
				<element>
					<xsl:attribute name="value">
						<xsl:value-of select="current()/value"/>
					</xsl:attribute>
				</element>
			</xsl:for-each>
        </elements>
    </xsl:template>
</xsl:stylesheet>
писал прямо в браузере.

Последний раз редактировалось Человек_Борща; 28.09.2016 в 22:27.
Человек_Борща вне форума Ответить с цитированием
Старый 28.09.2016, 21:32   #3
x_Alex_x
Пользователь
 
Регистрация: 13.01.2013
Сообщений: 94
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
как-то так:
Большое спасибо!
x_Alex_x вне форума Ответить с цитированием
Старый 28.09.2016, 22:14   #4
x_Alex_x
Пользователь
 
Регистрация: 13.01.2013
Сообщений: 94
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
как-то так:
Не заметил сразу. Все поля <element value="1"/> имеют значение первого элемента.

Последний раз редактировалось x_Alex_x; 28.09.2016 в 22:20.
x_Alex_x вне форума Ответить с цитированием
Старый 28.09.2016, 22:27   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

а так?
Код:
<xsl:value-of select="current()/value"/>
Человек_Борща вне форума Ответить с цитированием
Старый 28.09.2016, 22:32   #6
x_Alex_x
Пользователь
 
Регистрация: 13.01.2013
Сообщений: 94
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
а так?
Так работает! Методом тыка обнаружил, что работает даже так:
Код:
<xsl:value-of select="value"/>
x_Alex_x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пробелма с xml/xslt преобразованием Кнехт Общие вопросы .NET 1 12.10.2010 13:06
CMS XML+XSLT 13th WordPress и другие CMS 5 29.08.2010 13:53
хитрый xml и его подельник xslt 13th Свободное общение 3 02.02.2010 04:15
XSLT преобразование в delphi 7 ZeitGeist7 Компоненты Delphi 19 04.03.2009 21:34
XSLT, XML, RSS-ленты metell Помощь студентам 3 05.02.2009 06:21