This example assumes the following class is already on your CLASSPATH:
Here is an example of using Jaxen with Groovy to read an existing XML file:
Note: many libraries (e.g. DOM4J, JDOM, XOM) bundle or provide optional support for Jaxen. You may not need to download any additional JARs to use it.
If you are using Java 5 and above, you don't need to use the standalone Xalan jar but instead can use the now built-in XPath facilities:
Inspired by this example, here is how to use XPath to determine which groups include all three of alan, paul and ivan for this graph representing group membership.

Picture source: http://stage.vambenepe.com/pages/graph.png
First, here is the XML data capturing the group membership information:
Here is how to check that groups 2 and 4 are the groups in question using the built-in XPath capabilities of Java 5 and above:
And you can refactor your XPath Expression with something like:
Of course, you can also do this without XPath by using Groovy's GPath facilities as follows: