PsychoPath XPath 2.0 Processor
PsychoPath is an XPath 2.0 processor based originally on the 2004/10 version of the XPath 2.0 specification. It is currently undergoing testing against the the official W3C Test Suite. It was originally hosted at SourceForge.net but has since been donated to eclipse. Logo and banner image used on this page come from the original project and are used with permission from the project's creators.
PsychoPath is currently a part of the wst.xsl component within the Web Tools Source Editing project. It is being used with the XSL Tools editor to provide validation of XPath 2.0 expressions. Its JAR (org.eclipse.wst.xml.xpath2.processor) can be used outside of eclipse, and does not have any eclipse dependencies.
- Xerces-J 2.8.0 or above.
- CUP 0.10 or above.
- IBM ICU (optional)
These are available as bundles from Eclipse Orbit or as standalone jars from their respective project sites.
PsychoPath was started as a college research project by Andrea Bittau, and others at the University College London. A complete project report on the state of the processor can be found on the original sourceforge site. Portions of the original report are now maintained in the documentation section. PsychoPath is an XML Schema aware processor, meaning that it will work with an XML Schema that may describe the XML that it is processing. It will also handle DTDs that define IDs and IDREFs as required by the fn:id and fn:idref functions.
There are numerous ways to contribute beyond code contributions. The PsychoPath user manual is maintained on the wiki. Please feel free to update and keep it current. If you want to contribute code, please use a team project set to bring in the code you will need to make changes to the PsychoPath Processor code base.
Team Project Set:
Team Project Set - You will need the team project set for Contributors for XPath 2.0.
Note: The other project sets allow easy access to all of the WTP Source Editing code.
PsychoPath 2.0 - Requirements
PsychoPath 2.0 was delivered as part of the Web Tools Platform 3.3, included in the Indigo release train (Eclipse 3.7). The continuing improvement of the processor is dubbed "Loki" and tracked on
Development status is grouped with the XSL Tools Release Plan. We have reached full compliance against the W3C test suite, except for the area of static analyses, which the current implementation does not cover.