Xpath Query
XOM (XML Object Model) is a tree based java API for processing XML
by taking the best ideas from SAX and DOM. It is simple, fast and easy to use.
This requires the library xom-1.2.7.jar to be in classpath.
The following example shows querying an XML document using XPath expression.
package com.bethecoder.tutorials.xom.tests;
import java.io.IOException;
import java.io.InputStream;
import nu.xom.Builder;
import nu.xom.Document;
import nu.xom.Nodes;
import nu.xom.ParsingException;
import nu.xom.ValidityException;
public class XpathQuery {
/**
* @param args
* @throws IOException
* @throws ParsingException
* @throws ValidityException
*/
public static void main ( String [] args ) throws ValidityException, ParsingException, IOException {
Builder builder = new Builder () ;
InputStream ins = XpathQuery. class .getClassLoader ()
.getResourceAsStream ( "student_list.xml" ) ;
//Reads and parses the XML
Document doc = builder.build ( ins ) ;
//Get all student name nodes
Nodes nodes = doc.query ( "//students/student/name" ) ;
for ( int i = 0 ; i < nodes.size () ; i ++ ) {
System.out.println ( nodes.get ( i ) .getValue ()) ;
}
}
}
It gives the following output,