NodeSet context = new SingleNodeSet(proxy); Value v = expr.eval(ndocs, context, null);
NodeSet contextSet = new SingleNodeSet(proxy); Value v = expr.eval(context, ndocs, contextSet, null);
		public Item(DBBroker broker, NodeProxy proxy, PathExpr expr, 			DocumentSet ndocs) {			this.proxy = proxy;			NodeSet context = new SingleNodeSet(proxy);			Value v = expr.eval(ndocs, context, null);			StringBuffer buf = new StringBuffer();			OrderedLinkedList strings = new OrderedLinkedList();			switch (v.getType()) {				case Value.isNodeList :					NodeSet resultSet = (NodeSet) v.getNodeList();					if (resultSet.getLength() == 0)						return;					NodeProxy p;					for (Iterator i = resultSet.iterator(); i.hasNext();) {						p = (NodeProxy) i.next();						strings.add(broker.getNodeValue(p).toUpperCase());					}					for (Iterator j = strings.iterator(); j.hasNext();)						buf.append((String) j.next());					value = buf.toString();					break;				default :					ValueSet valueSet = v.getValueSet();					if (valueSet.getLength() == 0)						return;					for (int k = 0; k < valueSet.getLength(); k++) {						v = valueSet.get(k);						strings.add(v.getStringValue().toUpperCase());					}					for (Iterator j = strings.iterator(); j.hasNext();)						buf.append((String) j.next());					value = buf.toString();					break;			}		}