В цикле foreach я хочу использовать предшествующий брат ::
<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, отсортированная по городам, и что-то делать в зависимости от значений и других полей (эта часть работает, но так как сравнение с предшествующим родным братом не работает в отсортированном для каждого, я получил проблему