JDK 6是否支持XPath 2.0的所有功能?

6

for, sum, if, intersect 这样的操作,我想知道它们是否都被支持,如果不是或者部分支持,我可以在哪里找到详细信息?如果被支持,我又该在哪里找到官方确认呢?

3个回答

8

2
一如既往,RTFM拯救了这一天。我的错,没有仔细看。谢谢,麦克道尔。 - kostja
2
“Support”是一个糟糕的词,应该从词汇表中禁用。Java 6捆绑的XPath处理器是XPath 1.0处理器。有许多XPath 2.0处理器可用于与Java 6一起使用,但它们不是Java 6的一部分,包括Saxon和PsychoPath。希望这能回答你的问题。 - Michael Kay
@Michael Kay - 我使用了“支持”这个词,因为我并不真正了解XPath和JDK的内部工作原理,所以不能使用“捆绑处理器”之类的词汇 :) 不幸的是,除非我能提供一个重大的理由来使用外部库,否则我只能使用纯JDK...因为XPath 1.0的“缺陷”可以通过编程方式解决。谢谢 - kostja

1

Java是一种编程语言,它没有直接的语言结构专门用于评估XPath表达式。

完全不同的是,一些类可以与Java分发捆绑在一起,实现XPath引擎。

据我所知,这些XPath引擎实现类目前仅实现XPath 1.0。

当然,还有许多第三方基于Java的产品,例如Saxon,我在业余时间中每天都在使用。另一个我见过提到的是PsychoPath。


你说得对 - 这是我混淆了语言和JDK提供的库的典型情况 :) 我会相应地更改标题。不幸的是,由于我们当前项目的政策是避免使用第三方库,因此我受到JDK的限制。这当然是有争议的,但这不是我的决定。 - kostja
@kostja:我很高兴我的回答能够帮到您。请随意点赞/接受它。 :) - Dimitre Novatchev

0

我不知道 Java 6 是否支持,但我相当确定 Saxon(http://saxon.sourceforge.net/)支持。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接