Add ancestor matching and VisitorAspect