
XPath is great. XPath-based languages like XQuery, XSLT, and XProc, are great. The
                     XPath
                     recommendation provides a foundation for writing expressions that evaluate the same
                     way in
                     a lot of processors, written in different languages, running in different environments,
                     in
                     XML databases, in in-memory processors, in servers or in clients.
                  
                  Supporting so many different kinds of processor is wonderful thing. But this also
                     contrains which features are feasible at the XPath level and which are not. In the
                     years
                     since the release of XPath 2.0, experience has gradually revealed some missing features.
                  
                  EXPath exists to provide specifications for such missing features in a collaborative-
                     and implementation-independent way. EXPath also provides facilities to help and deliver
                     implementations to as many processors as possible, via extensibility mechanisms from
                     the
                     XPath 2.0 Recommendation itself.
                  
                  Other projects exist to define extensions for XPath-based languages or languages using
                     XPath, as the famous EXSLT, and the more recent
                     EXQuery and EXProc projects. We think that those projects are
                     really useful and fill a gap in the XML core technologies landscape. Nevertheless,
                     working
                     at the XPath level allows common solutions when there is no sense in reinventing the
                     wheel
                     over and over again. This is just following the brilliant idea of the W3C's XSLT and
                     XQuery
                     working groups, which joined forces to define XPath 2.0 together. EXPath purpose is
                     not to
                     compete with other projects, but collaborate with them.