В цикле foreach я хочу использовать Previous-Sibling::
<for-each..>
<xsl:sort select="type"/>
<xsl:when test="preceding-sibling::data[1]/type != type
проблема в том, что «тип» в foreach сравнивается с несортированным предшествующим братом, например.
data1/type = 1
data2/type = 2
data3/type = 1
будет сравниваться во втором цикле silbling=2 (исходный несортированный) и type=1 (поскольку он отсортирован)
есть ли способ обойти это?
ОБНОВЛЕНИЕ: мое намерение следующее
before after
data/type2 type1 value1
data/type1 type1 value2
data/type1 and speaking in HTML a spacer here (I compare type2:value to preceding-sibling value
data/type2 type2 value1
type2 value2
У меня есть несортированный список адресов, где типом является город, и мне нужна таблица HTML, отсортированная по городам, и делать некоторые вещи в зависимости от значений и других полей (эта часть работает, но поскольку сравнение с предыдущим братом не работая в отсортированном для каждого, у меня возникла проблема