Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос знатокам XML и XSL / 2 сообщений из 2, страница 1 из 1
22.04.2005, 14:57
    #33030338
XMLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знатокам XML и XSL
Добрый день!

Опишу вкратце проблему.
Есть исходный документ XML, в нем примерно такая структура
<TableRow>
...
<Val_0>12</Val_0>
<Val_1>14.7</Val_1>
<Val_2>17.9</Val_2>
....
и т.д.

</TableRow>

Число элементов вида Val_* - для каждого конкретного документа может быть известо, но в процессе работы (от одного исходного XML к другому) все время меняется.

Требуется перевести это в формат XML, который понятен для MS Excel, делается это примерно так (фрагмент):

....
<Row>
...
<Cell><Data ss:Type="Number"><xsl:value-of select="Val_0"/><Data></Cell>
<Cell><Data ss:Type="Number"><xsl:value-of select="Val_1"/><Data></Cell>
<Cell><Data ss:Type="Number"><xsl:value-of select="Val_2"/><Data></Cell>
....

</Row>
....

..но такой код возможен только в том случае, если заранее известны названия всех элементов!

Как организовать цикл от 0 до X (известного числа элементов - 1), перебирая элементы с названиями Val_0, Val_1 и т.д.?
...
Рейтинг: 0 / 0
22.04.2005, 16:31
    #33030696
greenapple
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос знатокам XML и XSL
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<xsl:template match="TableRow">
	<Row>
		<xsl:for-each select="child::*">
			<Cell>
				<Data ss:Type="Number">
					<xsl:value-of select="."/>
				</Data>
			</Cell>
		</xsl:for-each>
	</Row>
</xsl:template>
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос знатокам XML и XSL / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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