Здравствуйте, posdnyaa, Вы писали:
P>В нем список авторов (authors/author) и продавцов (sellers/seller). Иногда автор является и продавцом (напр. Bill Smith). Авторы и продавцы находятся в разных секциях – authors и sellers.
P>Мне надо из обоих секций получить общий список имен, в котором имена не должны повторятся. Т.е. Bill Smith должен быть в списке в одном экземпляре.
P>Понимаю, что делать это надо с помощью preceding-sibling, но как её отфильтровать — не поиму.
preceding-sibling — это с одной стороны — preceding (т.е. те, кто идет в документее ранее), а с другой — sibling (имеющие общего родителя). В твоем случае author "Bill Smith" является preceding-ом для seller-а "Bill Smith", но не является sibling-ом.
P>P><xsl:for-each select="root/*/*[not(@id=preceding-sibling::*/*/@id)]">
P> <xsl:value-of select="@id"/> <br/>
P></xsl:for-each>
P>
Используй ось preceding
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>