I have recently been working with XPath and have been searching for information on which browsers support XPath 2.0 without much luck. The best I could find was the query technologies comparison table of various rendering engines.
This clearly tells me that Firefox and IE (all versions of both) do not support XPath 2.0, but what about the other rendering engines for Chrome, Safari, etc.? Does anybody have any information on this or know where one can find it?
I do not know of any, and the official list of implementations doesn't include one either.
An alternative - of course less performant than a native implementation - would be XQIB which is an XQuery implementation in JavaScript. XPath 2.0 is fully included as a subset in XQuery 1.0, so you will be able to use all XPath 2.0 features (and more) in all browsers with JavaScript support.
A short sample taken from their website on how to use it:
There is an Open source XPath 2.0 implementation in JavaScript, also wrapped as a jQuery XPath plugin.
There is also Saxon CE, an open-source Javascript implementation of XSLT 2.0. Since XSLT 2.0 includes XPath 2.0, this provides an XPath 2.0 implementation in the browser. However it isn't built-in.
I just tried the current version of Safari (7.0.6) and it didn't accept the XPath 2.0 functions that I gave it:
So I'd say WebKit (specifically the JS engine, SquirrelFish / Nitro) doesn't currently support XPath 2.0.
Majority of the browsers do not support XPATH 2.0, please see Comparison of layout engines to get more information.
However you may get support of the XPATH 2.0 in Firefox by using Saxon-CE, see more on the MDN XSLT_2.0 page.