@Override
public Expression<?> visit(Path<?> expr, Context context) {
final PathType pathType = expr.getMetadata().getPathType();
if (pathType == PathType.LISTVALUE_CONSTANT || pathType == PathType.LISTVALUE) {
final String variable = expr.accept(ToStringVisitor.DEFAULT, TEMPLATE).replace('.', '_');
final EntityPath<?> replacement = new EntityPathBase(expr.getType(), variable);
context.add(expr, replacement);
return replacement;
} else if (expr.getMetadata().getParent() != null) {
Context c = new Context();