Заклинило с preceding-sibling, помогите!
От: posdnyaa Россия  
Дата: 01.11.08 16:08
Оценка:
Здравствуйте.
Вопрос вроде не сложный, но что-то меня заклинило.
Есть XML:

<root>
 <authors>
   <author name="Dave Thomas"/>
   <author name="Bill Smith"/>
   <author name="Jack Herrington"/>
 </authors>
 <sellers>
   <seller name="John Gain"/>
   <seller name="Garry Garrison"/>
   <seller name="Bill Smith"/>
 </sellers>
</root>



В нем список авторов (authors/author) и продавцов (sellers/seller). Иногда автор является и продавцом (напр. Bill Smith). Авторы и продавцы находятся в разных секциях – authors и sellers.
Мне надо из обоих секций получить общий список имен, в котором имена не должны повторятся. Т.е. Bill Smith должен быть в списке в одном экземпляре.
Понимаю, что делать это надо с помощью preceding-sibling, но как её отфильтровать — не поиму.


<xsl:for-each select="root/*/*[not(@id=preceding-sibling::*/*/@id)]">
    <xsl:value-of select="@id"/>    <br/>
</xsl:for-each>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.