相关疑难解决方法(0)

如何使用XPath选择最后N个元素?

我支持一个生成内容XML的网站,然后使用XSLT将其翻译成网页.我被要求创建一个新的样式表,它将"存档"页面的输出转换为Atom以进行联合.我遇到的问题是存档页面包含相当多的项目 - 142和计数 - 并且Feed应该永远不会有超过30个项目.

目前,存档页面的输出如下所示:

<archive>
    <year>
        <month>
            <day>
            <day>
            ...
        </month>

        ...
    </year>

    ...
</archive>
Run Code Online (Sandbox Code Playgroud)

yearmonth标签由HTML中使用的变换,但完全不相干的一个Atom feed.我曾希望使用position()带有后代轴的函数可以工作(//day[position()>last()-30]),但这会选择每个月的最后30天,这根本不是我需要的.:-)

有没有办法用XSLT或XPath做到这一点?必须修改XML生成器以添加(例如)feed="true"过去30天的属性,这似乎是一个非常讨厌的问题.

xml xslt xpath

12
推荐指数
1
解决办法
1万
查看次数

标签 统计

xml ×1

xpath ×1

xslt ×1