Гость
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вывести один раз повторяющийся текст / 1 сообщений из 1, страница 1 из 1
31.08.2015, 16:43
    #39039849
Gudsaf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывести один раз повторяющийся текст
Привет, пишу шаблон - столкнулся с проблемой.

__<xsl:for-each select="parent::*/огурцы/огурец/@id">
__<xsl:for-each select="/content/огурцы/огурец[@id=$ИД_огурца]/название">
__<xsl:variable name="СЕМЬЯ_огурца" select="."/>
____<xsl:it test="count(preceding::*[text()=$ИМЯ_огурца])=0>
______<xsl:value-of select="."/>
_____..
____..
__..


соответственно дерево начинается у меня в деревня у меня из двух больших веток:
деревня/грядка(она же parent::*)
деревня/content

Я, как вы наверное поняли, хочу один раз вывести название семьи огурца если эта семья у меня встретиться среди на грудке(она же parent::*). Семьи у огурцов могут совпадать, но ИД не совпадают. По этому я по ИД пытаюсь выводить название семьи. Как мне посоветовали ранее - использую "count(preceding::*[text()=$ИМЯ_огурца])=0"

Но почему то если у меня в итоге после

<xsl:for-each select="/content/огурцы/огурец[@id=$ИД_огурца]/название">

выгружается последовательность из:

а
а
а
б
а
а
в
в
г
а
[/li]
то семьи б и г не выводятся. В чём проблема (при условии что до этого, в предыдущих грядках деревни указаны все семьи, а потом начинаются вылеты и часть грядок в итоге выводится с ннеполной информацией)?
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вывести один раз повторяющийся текст / 1 сообщений из 1, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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