QueryTerm.java will produce an incorrect SQL statement when there is an attribute in the XPath being used to search on. Regardless of the presence of the attribute, the clause:
(SELECT nodeid FROM xml_index WHERE path LIKE " + "'" + path + "') "
would be added to the query.
I've changed QueryTerm to conditionally add this clause, based on whether or not an attribute exists in the XPath.