final RIFParser parser = new RIFParser(new StringReader(query));
this.compilationUnit = parser.CompilationUnit();
this.rifDocument = (Document) this.compilationUnit.accept(new ParseSyntaxTreeVisitor(), null);
final BuildOperatorGraphRuleVisitor forward = new BuildOperatorGraphRuleVisitor(indexScanCreator);
final ValidateRuleVisitor valVisitor = new ValidateRuleVisitor();
final NormalizeRuleVisitor normVisitor = new NormalizeRuleVisitor();
final SubstituteFunctionCallsVisitor subVisitor = new SubstituteFunctionCallsVisitor();
final ResolveListsRuleVisitor listVisitor = new ResolveListsRuleVisitor();
final RuleDependencyGraphVisitor dependencyVisitor = new RuleDependencyGraphVisitor();
final RuleFilteringVisitor filteringVisitor = new RuleFilteringVisitor();