XSLT, сортировка и группировка по годам

Относительно Umbraco XSLT версии 1.

У меня есть aprox. 150 новостей в формате XML. Скажем так (все псевдокод, пока я не ознакомлюсь с этим xml / xslt):

<news>
  <data alias=date>2008-10-20</data>
</news>
<news>
  <data alias=date>2009-11-25</data>
</news><news>
  <data alias=date>2009-11-20</data>
</news> etc. etc....

Я хотел бы пробежаться по XML и создать html-вывод в виде архива новостей. Что-то вроде (теги не важны):

2008
  Jan
  Feb
  ...
2009
  Jan
  Feb
  Mar
  etc. etc.

Я могу только придумать вложенный для каждого (псевдокод):

var year_counter = 2002
var month_counter = 1
<xsl:for-each select="./data [@alias = 'date']=year_counter">
  <xsl:for-each select="./data [@alias = 'date']=month_counter">
    <xsl:value-of select="data [@alias = 'date']>
  "...if month_counter==12 end, else month_counter++ ..."
  </xsl:for-each>
"... year_counter ++ ..."
</xsl:for-each>

Но программист заметил, что цикл в течение 10 лет даст 120 циклов, и это плохое кодирование. Поскольку я думаю, что Umbraco кеширует результат, меня это не очень беспокоит, плюс в этом случае будет максимум. из 150 записей.

Любые подсказки о том, как сортировать и выводить много новостей и группировать их по годам и группировать каждый год по месяцам?

Br. Андерс

Ответы на вопрос(4)

Ваш ответ на вопрос