//The variable definition is managed by the Variable visitor
//thus forget the expression
if ((nbNot % 2) == 0) {
stack.push(REMOVER);
} else {
QueryTreeField f = (QueryTreeField) fields.get(name);
stack.push(new Not(new IsEmpty(new BasicFieldOperand(f))));
}
} else {
//x.y.bs.contains(u.v.b)
String rest = mergePath(spli, 1, spli.length - 2);
QueryBuilder subquery = new QueryBuilder(qb);
subquery.define("", qb.navigate(spli[0]));
QueryTreeField setField = subquery.project(subquery.navigate(rest));
QueryTreeField f = (QueryTreeField) fields.get(name);
stack.push(new MemberOf(
Collections.singletonList(
new BasicFieldOperand(f)),
Collections.singletonList(