2010-08-02 92 views
2

我正在尝试使用XSL将新闻订阅源转换为用于插入网页的html片段。XSLT,如何处理前X个项目?

新闻动态是几百个项目,所以我只想包含最新的10个标题...... xsl在下面,我想我可以有一个计数器并在所需数量的迭代。然而,在阅读了一段时间之后,似乎xsl并不是用于这种方式的。

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

非常感谢您的任何建议。

编辑:似乎没有让我张贴XML片段。但我下面的模式是从这里升起:http://www.rgagnon.com/javadetails/java-0407.html

+0

为了在你的文本XML片段,你必须确保它们的格式为代码。最简单的方法是选择相关文本,然后单击编辑工具栏中的“代码”按钮(即101010所示的那个)。 – AakashM 2010-08-02 11:37:35

+0

你是什么意思的“最新”?文件顺序?由元素或属性内的某个日期值? – 2010-08-02 15:24:55

回答

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

同样在像match =“howto/topic [11> position()]” – 2010-08-02 15:23:10

0

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

//news[position()<11] 

回报的前10项

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

返回最近的10项