Value resultValue = expr.eval(docs, null, null);
Value resultValue = expr.eval(new StaticContext(), docs, null, null);
	public void testQuery() {		//String query = "document(*)//p[. &= '\uB2E8\uACC4']";		String query = "document(*)//p[. = '\u4ED6\u4E3A\u8FD9\u9879\u5DE5\u7A0B\u6295" +			"\u5165\u4E86\u5341\u4E09\u5E74\u65F6\u95F4\u3002']";					// get a BrokerPool for access to the database engine		BrokerPool pool = null;		try {			pool = BrokerPool.getInstance();		} catch (EXistException e1) {			e1.printStackTrace();			fail(e1.getMessage());		}		User user = pool.getSecurityManager().getUser("admin");		DBBroker broker = null;		try {				// parse the xml source			broker = pool.get();			Parser parser = new Parser(broker, user, true);			parser.parse(xml, "/db/test/test.xml");						// parse the query into the internal syntax tree			XPathLexer lexer = new XPathLexer(new StringReader(query));			XPathParser xparser = new XPathParser(pool, user, lexer);			PathExpr expr = new PathExpr(pool);			xparser.expr(expr);						// execute the query			DocumentSet docs = expr.preselect();			Value resultValue = expr.eval(docs, null, null);						// check results			NodeSet resultSet = (NodeSet)resultValue.getNodeList();			System.out.println("----------------------------------");			System.out.println("found: " + resultSet.getLength());		} catch (RecognitionException e) {			e.printStackTrace();		} catch (TokenStreamException e) {			e.printStackTrace();		} catch (EXistException e) {			e.printStackTrace();		} catch (PermissionDeniedException e) {			e.printStackTrace();		} catch (SAXException e) {			e.printStackTrace();		} catch (IOException e) {			e.printStackTrace();		} finally {			pool.release(broker);		}		if(localDb)			try {				BrokerPool.stop();			} catch (EXistException e2) {				e2.printStackTrace();			}	}