As mentioned yeasterday I have been reinventing the wheel and (re)writing XPath 2.0 functions as named XSLT templates since the MSXML 3 in Internet Explorer 6 isn't XPath 2.0 compliant. As always there is however a Microsoft proprietary solution using the urn:schemas-microsoft-com:xslt namespace. This namespace adds support for a number of utility functions as mentioned in the "Microsoft XPath Extension Functions"-article over at Microsoft Developer Network.
You have to be running MSXML 4 for this namespace to work however which means that even the proprietary solution isn't workable for me since MSXML 3 is the default for Internet Explorer 6.
While researching this subject I found that MSXML 3 (or 4) isn't the newest version. There is a MSXML 5 (only used with Office 2003) and a MSXML 6 (supplied with Visual Studio 2005). Even the newest MSXML 6 doesn't however support XPath 2.0. The supported API's in MSXML 6 is:
- XML 1.0 (DOM & SAX2 APIs)
- XML Schema (XSD) 1.0
- XPath 1.0
- XSLT 1.0
Come on already - please implement the standards!