public boolean compile(Node serv, Query q, Mappings map, Environment env, int start, int limit) {
Query out = q.getOuterQuery();
if (map == null || (map.size() == 1 && map.get(0).size() == 0)) {
if (isValues(out)) {
bindings(q, env);
} else if (isFilter(out) || provider.isSparql0(serv)) {
filter(q, env);
} else {
bindings(q, env);
}
return true;
} else if (isValues(out)) {
return bindings(q, map, start, limit);
} else if (isFilter(out) || provider.isSparql0(serv)) {
return filter(q, map, start, limit);
} else {
return bindings(q, map, start, limit);
}
}