}
} else {
throw new InvalidQueryException(query, "The '" + step + "' step is not supported");
}
} else if (step instanceof FilterStep) {
FilterStep filter = (FilterStep)step;
Component primary = filter.getPrimaryExpression();
List<Component> predicates = filter.getPredicates();
if (primary instanceof ContextItem) {
if (appliesToPathConstraint(predicates)) {
// Can ignore the '.' ...
} else {
// The constraints are more complicated, so we need to define a new source/table ...