XSLT,如何只处理前X项?

时间:2010-08-02 11:19:36

标签: xslt rss

我正在尝试使用XSL将新闻源转换为html片段以插入网页。

新闻源有几百个项目,所以我只想包含最新的10个标题...... xsl在下面,我想我可以有一个计数器并在所需的迭代次数后突破循环。但是经过一些阅读之后,似乎xsl并没有被设计成以这种方式使用。

在xsl中获得所需结果的“最佳”方法是什么?

非常感谢任何建议。

编辑:似乎没有让我发布xml片段。但我所遵循的模式是从这里解除的:http://www.rgagnon.com/javadetails/java-0407.html

2 个答案:

答案 0 :(得分:3)

<xsl:for-each select="howto/topic[position() &lt;= 10]">

答案 1 :(得分:0)

我建议您使用XPath查询解决它,不使用XSLT。 XPath有两个函数,一个是count( nodeset ),另一个是position()。结合这些功能,您可以获得有趣的结果。例如:

//news[position()<11]

返回前10项

//news[position()>count(//news)-10]

返回最后10项