几个月和几年的XSLT订单

时间:2011-08-29 14:10:42

标签: xslt foreach slice foreach-loop-container

我有问题。我有一个类似于这个的XML树:

<wd:meta>
    <wd:creation time="[TIMESTAMP]" />
    <wd:title><![CDATA[Nice title]]></wd:title>
</wd:meta>

还有更多具有相同结构的兄弟姐妹。 这棵树进入XSLTProcessor并得到一个很好的样式表。 现在我想把它分成几个月(在我的样式表中)。所以有类似的东西:

  

八月发生的一切

     
    

好标题1

         

好标题2

  
     

九月发生的一切

     
    

好标题3

         

好标题4

  

我该怎么做这样的事情?我做了一些研究,但我不是很成功。 我发现可能有用的唯一东西是:跟随兄弟

任何人都可以帮助我吗?我非常感谢你的帮助。

感谢。


编辑://

我现在使用了http://www.jenitennison.com/xslt/grouping/muenchian.html采用的Muenchian方法,但我只能按月订购,而不是按年订购。我尝试了可能重复的答案并试图理解它,但这并不容易。有没有人更容易解决?

1 个答案:

答案 0 :(得分:0)

在第一步中,我将迭代您的内容并为您的时间戳生成月份名称。然后您可以按月份名称对其进行排序。如果你有xslt 2.0,你可以使用group-by按月分组。如果没有,您可以对内容进行迭代迭代,并检查是否存在具有当前月份名称的following-sibling。如果是这样,请使用与当前元素的月份相同的月份名称。如果没有,请开始新的一个月。