У меня проблема с группировкой записей xml через атрибуты с использованием XSLT.Отсутствует первый элемент для каждого цикла с предшествующим братом в xslt
Вот мой источник XML:
<chron>
<chronEntry type="education" order="1" blockorder="1">
<foo>bar</foo>
</chronEntry>
<chronEntry type="education" order="2" blockorder="1">
<foo>bar</foo>
</chronEntry>
<chronEntry type="education" order="3" blockorder="1">
<foo>bar</foo>
</chronEntry>
<chronEntry type="communityservice" order="1" blockorder="2">
<foo>bar</foo>
</chronEntry>
<chronEntry type="experience" order="1" blockorder="3">
<foo>bar</foo>
</chronEntry>
<chronEntry type="experience" order="2" blockorder="3">
<foo>bar</foo>
</chronEntry>
<chronEntry type="experience" order="3" blockorder="3">
<foo>bar</foo>
</chronEntry>
<chronEntry type="experience" order="4" blockorder="3">
<foo>bar</foo>
</chronEntry>
</chron>
Что я хочу, чтобы получить список всех доступных значений «типа» атрибута. В этом случае он должен быть: - образование - обязательные работы - опыт
Я судимое это так:
<xsl:for-each select="/foobar/chron/chronEntry">
<xsl:sort select="@blockorder"/>
<xsl:if test ="@blockorder != preceding-sibling::chronEntry[1]/@blockorder">
<fo:table-row>
<fo:table-cell>
<fo:block><xsl:value-of select="@type"/></fo:block>
</fo:table-cell>
</fo:table-row>
</xsl:if>
</xsl:for-each>
, что я получаю: - обязательные работы - опыт
Я m отсутствует «образование» (первый)
Что я могу сделать, чтобы получить его?
Thaks для вашей помощи!
Greetz
Dave
Вы используя XSLT 1.0 или XSLT 2.0? –