Moved AstResult back to IQueryBuilderEngine.

Change-Id: Ia6cad5505f5c2e69a1c15835479176fba7e49f0e
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/AcceleoEditPlugin.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/AcceleoEditPlugin.java
index 7920731..1c12eeb 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/AcceleoEditPlugin.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/AcceleoEditPlugin.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/AcceleoItemProviderAdapterFactory.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/AcceleoItemProviderAdapterFactory.java
index 42f11f8..2810e84 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/AcceleoItemProviderAdapterFactory.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/AcceleoItemProviderAdapterFactory.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BindingItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BindingItemProvider.java
index c240991..058d20d 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BindingItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BindingItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BlockCommentItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BlockCommentItemProvider.java
index 664adc8..38bcaeb 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BlockCommentItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BlockCommentItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BlockItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BlockItemProvider.java
index c6091a2..8fcd967 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BlockItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/BlockItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/CommentBodyItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/CommentBodyItemProvider.java
index 58e7947..64ff901 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/CommentBodyItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/CommentBodyItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/CommentItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/CommentItemProvider.java
index c421f2b..7f07811 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/CommentItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/CommentItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorBindingItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorBindingItemProvider.java
index 58d3baf..0b15cfa 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorBindingItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorBindingItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorBlockCommentItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorBlockCommentItemProvider.java
index b66f0aa..465bb9d 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorBlockCommentItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorBlockCommentItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorCommentItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorCommentItemProvider.java
index 317b455..e4f4ffe 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorCommentItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorCommentItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorExpressionItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorExpressionItemProvider.java
index 98faed4..eb11281 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorExpressionItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorExpressionItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -17,7 +17,7 @@
 import org.eclipse.acceleo.AcceleoPackage;
 import org.eclipse.acceleo.ErrorExpression;
 import org.eclipse.acceleo.query.ast.AstFactory;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.emf.common.notify.AdapterFactory;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.util.ResourceLocator;
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorExpressionStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorExpressionStatementItemProvider.java
index 3729fe4..959da13 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorExpressionStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorExpressionStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorFileStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorFileStatementItemProvider.java
index 4a14b02..36f8224 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorFileStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorFileStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorForStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorForStatementItemProvider.java
index ad5880f..48de7d7 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorForStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorForStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorIfStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorIfStatementItemProvider.java
index 9db8cf5..bc2f893 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorIfStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorIfStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorImportItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorImportItemProvider.java
index b97dece..b37fcf7 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorImportItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorImportItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorLetStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorLetStatementItemProvider.java
index 16538b1..8f0bcc9 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorLetStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorLetStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorMetamodelItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorMetamodelItemProvider.java
index 0b24e32..8044402 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorMetamodelItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorMetamodelItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleDocumentationItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleDocumentationItemProvider.java
index 9bff809..dade89d 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleDocumentationItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleDocumentationItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleElementDocumentationItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleElementDocumentationItemProvider.java
index 328b79d..622daa7 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleElementDocumentationItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleElementDocumentationItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleItemProvider.java
index be249db..2b467dd 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleReferenceItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleReferenceItemProvider.java
index 93e315c..833154e 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleReferenceItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorModuleReferenceItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorProtectedAreaItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorProtectedAreaItemProvider.java
index f8e646c..1f456c5 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorProtectedAreaItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorProtectedAreaItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorQueryItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorQueryItemProvider.java
index 48ae7cb..1bceac9 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorQueryItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorQueryItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorTemplateItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorTemplateItemProvider.java
index f979c21..a56c0d3 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorTemplateItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorTemplateItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorVariableItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorVariableItemProvider.java
index ac684fa..26e1aa4 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorVariableItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ErrorVariableItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ExpressionItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ExpressionItemProvider.java
index fcb6252..0fbe75b 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ExpressionItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ExpressionItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -17,7 +17,7 @@
 import org.eclipse.acceleo.AcceleoPackage;
 import org.eclipse.acceleo.Expression;
 import org.eclipse.acceleo.query.ast.AstFactory;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.emf.common.notify.AdapterFactory;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.util.ResourceLocator;
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ExpressionStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ExpressionStatementItemProvider.java
index ba9dd51..7968ff7 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ExpressionStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ExpressionStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/FileStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/FileStatementItemProvider.java
index 0fd251e..3b9fa93 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/FileStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/FileStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ForStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ForStatementItemProvider.java
index 3680756..e57abee 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ForStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ForStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/IfStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/IfStatementItemProvider.java
index e4f747e..c03c2a2 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/IfStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/IfStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ImportItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ImportItemProvider.java
index 59b1e72..d3c4ae5 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ImportItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ImportItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/LeafStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/LeafStatementItemProvider.java
index 46f79e3..8f9a508 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/LeafStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/LeafStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/LetStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/LetStatementItemProvider.java
index 83858af..ed33098 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/LetStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/LetStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/MetamodelItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/MetamodelItemProvider.java
index 9d1a29b..e17a054 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/MetamodelItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/MetamodelItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleDocumentationItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleDocumentationItemProvider.java
index 8c9f418..ba18356 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleDocumentationItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleDocumentationItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleElementDocumentationItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleElementDocumentationItemProvider.java
index 2a1053b..824b5e8 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleElementDocumentationItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleElementDocumentationItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleElementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleElementItemProvider.java
index 54582ad..7a9db51 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleElementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleElementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleItemProvider.java
index d856960..c322120 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleReferenceItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleReferenceItemProvider.java
index 09e823e..17900ea 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleReferenceItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ModuleReferenceItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/NamedElementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/NamedElementItemProvider.java
index cec9390..4243eb3 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/NamedElementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/NamedElementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/NewLineStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/NewLineStatementItemProvider.java
index 063bea4..fe70cfd 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/NewLineStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/NewLineStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ParameterDocumentationItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ParameterDocumentationItemProvider.java
index 1a8e851..43778a4 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ParameterDocumentationItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ParameterDocumentationItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ProtectedAreaItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ProtectedAreaItemProvider.java
index 02b11d6..de71a75 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ProtectedAreaItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/ProtectedAreaItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/QueryItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/QueryItemProvider.java
index 8d2cab8..42b6a88 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/QueryItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/QueryItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TemplateItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TemplateItemProvider.java
index 54de3ee..7c3ac50 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TemplateItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TemplateItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TextStatementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TextStatementItemProvider.java
index 2da9318..2845df6 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TextStatementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TextStatementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TypedElementItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TypedElementItemProvider.java
index 736a1e3..1fcb071 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TypedElementItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/TypedElementItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -17,7 +17,7 @@
 import org.eclipse.acceleo.AcceleoPackage;
 import org.eclipse.acceleo.TypedElement;
 import org.eclipse.acceleo.query.ast.AstFactory;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.emf.common.notify.AdapterFactory;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.util.ResourceLocator;
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/VariableItemProvider.java b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/VariableItemProvider.java
index 4c595ad..37a9ebe 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/VariableItemProvider.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src-gen/org/eclipse/acceleo/provider/VariableItemProvider.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql.edit/src/org/eclipse/acceleo/provider/utils/ASTUtils.java b/plugins/org.eclipse.acceleo.aql.edit/src/org/eclipse/acceleo/provider/utils/ASTUtils.java
index 8a75774..70383cc 100644
--- a/plugins/org.eclipse.acceleo.aql.edit/src/org/eclipse/acceleo/provider/utils/ASTUtils.java
+++ b/plugins/org.eclipse.acceleo.aql.edit/src/org/eclipse/acceleo/provider/utils/ASTUtils.java
@@ -1,5 +1,5 @@
 /*******************************************************************************

- * Copyright (c) 2020 Obeo.

+ * Copyright (c) 2021 Obeo.

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License v1.0

  * which accompanies this distribution, and is available at

@@ -11,8 +11,8 @@
 package org.eclipse.acceleo.provider.utils;

 

 import org.eclipse.acceleo.Expression;

-import org.eclipse.acceleo.query.parser.AstResult;

 import org.eclipse.acceleo.query.parser.AstSerializer;

+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;

 

 /**

  * A helper to render AST expressions.

diff --git a/plugins/org.eclipse.acceleo.aql.migration/src/org/eclipse/acceleo/aql/migration/converters/AbstractConverter.java b/plugins/org.eclipse.acceleo.aql.migration/src/org/eclipse/acceleo/aql/migration/converters/AbstractConverter.java
index c0073f8..2c3b008 100644
--- a/plugins/org.eclipse.acceleo.aql.migration/src/org/eclipse/acceleo/aql/migration/converters/AbstractConverter.java
+++ b/plugins/org.eclipse.acceleo.aql.migration/src/org/eclipse/acceleo/aql/migration/converters/AbstractConverter.java
@@ -1,5 +1,5 @@
 /*******************************************************************************

- * Copyright (c) 2017 Obeo.

+ * Copyright (c) 2017, 2021 Obeo.

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License v1.0

  * which accompanies this distribution, and is available at

@@ -14,7 +14,7 @@
 import java.util.List;

 

 import org.eclipse.acceleo.aql.migration.MigrationException;

-import org.eclipse.acceleo.query.parser.AstResult;

+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;

 import org.eclipse.emf.common.util.Diagnostic;

 import org.eclipse.emf.ecore.EObject;

 

diff --git a/plugins/org.eclipse.acceleo.aql.migration/src/org/eclipse/acceleo/aql/migration/converters/ModuleConverter.java b/plugins/org.eclipse.acceleo.aql.migration/src/org/eclipse/acceleo/aql/migration/converters/ModuleConverter.java
index 5c6458c..4da06e2 100644
--- a/plugins/org.eclipse.acceleo.aql.migration/src/org/eclipse/acceleo/aql/migration/converters/ModuleConverter.java
+++ b/plugins/org.eclipse.acceleo.aql.migration/src/org/eclipse/acceleo/aql/migration/converters/ModuleConverter.java
@@ -1,5 +1,5 @@
 /*******************************************************************************

- * Copyright (c) 2017 Obeo.

+ * Copyright (c) 2017, 2021 Obeo.

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License v1.0

  * which accompanies this distribution, and is available at

@@ -66,7 +66,7 @@
 import org.eclipse.acceleo.query.ast.Expression;

 import org.eclipse.acceleo.query.ast.Lambda;

 import org.eclipse.acceleo.query.ast.VariableDeclaration;

-import org.eclipse.acceleo.query.parser.AstResult;

+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;

 import org.eclipse.emf.common.util.Diagnostic;

 import org.eclipse.emf.common.util.EList;

 import org.eclipse.emf.ecore.EClassifier;

diff --git a/plugins/org.eclipse.acceleo.aql/model/acceleo.ecore b/plugins/org.eclipse.acceleo.aql/model/acceleo.ecore
index d59631a..a4db10d 100644
--- a/plugins/org.eclipse.acceleo.aql/model/acceleo.ecore
+++ b/plugins/org.eclipse.acceleo.aql/model/acceleo.ecore
@@ -346,7 +346,7 @@
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="indentationNeeded" lowerBound="1"
         eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
   </eClassifiers>
-  <eClassifiers xsi:type="ecore:EDataType" name="ASTResult" instanceClassName="org.eclipse.acceleo.query.parser.AstResult"/>
+  <eClassifiers xsi:type="ecore:EDataType" name="ASTResult" instanceClassName="org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult"/>
   <eClassifiers xsi:type="ecore:EDataType" name="ModuleQualifiedName" instanceClassName="java.lang.String"/>
   <eClassifiers xsi:type="ecore:EDataType" name="AcceleoAstResult" instanceClassName="org.eclipse.acceleo.aql.parser.AcceleoAstResult"/>
 </ecore:EPackage>
diff --git a/plugins/org.eclipse.acceleo.aql/model/acceleo.genmodel b/plugins/org.eclipse.acceleo.aql/model/acceleo.genmodel
index 4a26de9..1f418ad 100644
--- a/plugins/org.eclipse.acceleo.aql/model/acceleo.genmodel
+++ b/plugins/org.eclipse.acceleo.aql/model/acceleo.genmodel
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>

 <genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"

-    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="Copyright (c) 2008, 2020 Obeo.&#xD;&#xA;&#xD;&#xA;All rights reserved. This program and the accompanying materials&#xD;&#xA;are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA;which accompanies this distribution, and is available at&#xD;&#xA;http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA;Contributors:&#xD;&#xA;     Obeo - initial API and implementation"

+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="Copyright (c) 2008, 2021 Obeo.&#xD;&#xA;&#xD;&#xA;All rights reserved. This program and the accompanying materials&#xD;&#xA;are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA;which accompanies this distribution, and is available at&#xD;&#xA;http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA;Contributors:&#xD;&#xA;     Obeo - initial API and implementation"

     modelDirectory="/org.eclipse.acceleo.aql/src-gen" editDirectory="/org.eclipse.acceleo.aql.edit/src-gen"

     editorDirectory="/org.eclipse.acceleo.aql.editor/src-gen" modelPluginID="org.eclipse.acceleo.aql"

     modelName="Acceleo" editPluginClass="org.eclipse.acceleo.provider.AcceleoEditPlugin"

diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ASTNode.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ASTNode.java
index 936de62..872ad7f 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ASTNode.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ASTNode.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/AcceleoFactory.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/AcceleoFactory.java
index ffc4855..b3a7ef3 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/AcceleoFactory.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/AcceleoFactory.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/AcceleoPackage.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/AcceleoPackage.java
index 24e5e17..dabdffc 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/AcceleoPackage.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/AcceleoPackage.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -3428,7 +3428,7 @@
 	 * The meta object id for the '<em>AST Result</em>' data type.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @see org.eclipse.acceleo.query.parser.AstResult
+	 * @see org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult
 	 * @see org.eclipse.acceleo.impl.AcceleoPackageImpl#getASTResult()
 	 * @generated
 	 */
@@ -5260,12 +5260,12 @@
 	EEnum getOpenModeKind();
 
 	/**
-	 * Returns the meta object for data type '{@link org.eclipse.acceleo.query.parser.AstResult <em>AST Result</em>}'.
+	 * Returns the meta object for data type '{@link org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult <em>AST Result</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @return the meta object for data type '<em>AST Result</em>'.
-	 * @see org.eclipse.acceleo.query.parser.AstResult
-	 * @model instanceClass="org.eclipse.acceleo.query.parser.AstResult"
+	 * @see org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult
+	 * @model instanceClass="org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult"
 	 * @generated
 	 */
 	EDataType getASTResult();
@@ -6805,7 +6805,7 @@
 		 * The meta object literal for the '<em>AST Result</em>' data type.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
-		 * @see org.eclipse.acceleo.query.parser.AstResult
+		 * @see org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult
 		 * @see org.eclipse.acceleo.impl.AcceleoPackageImpl#getASTResult()
 		 * @generated
 		 */
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Binding.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Binding.java
index 81fc935..b6d0525 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Binding.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Binding.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Block.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Block.java
index a32dea8..5955ee7 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Block.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Block.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/BlockComment.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/BlockComment.java
index f1c5a10..765bbac 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/BlockComment.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/BlockComment.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Comment.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Comment.java
index 86d4913..f31f0a9 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Comment.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Comment.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/CommentBody.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/CommentBody.java
index b210d8d..cbee075 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/CommentBody.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/CommentBody.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Documentation.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Documentation.java
index 20cba51..f6767f8 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Documentation.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Documentation.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/DocumentedElement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/DocumentedElement.java
index 9bd2b32..2c3c10a 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/DocumentedElement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/DocumentedElement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Error.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Error.java
index a731097..253ad84 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Error.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Error.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorBinding.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorBinding.java
index cd42b2f..a7f111b 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorBinding.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorBinding.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorBlockComment.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorBlockComment.java
index 2c0e3b8..5778f47 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorBlockComment.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorBlockComment.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorComment.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorComment.java
index e439295..1375f01 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorComment.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorComment.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorExpression.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorExpression.java
index d5a06ef..2d1e565 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorExpression.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorExpression.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorExpressionStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorExpressionStatement.java
index caec7d1..9caaae4 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorExpressionStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorExpressionStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorFileStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorFileStatement.java
index 857afa4..bbfda9b 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorFileStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorFileStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorForStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorForStatement.java
index 9bd10b8..466d333 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorForStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorForStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorIfStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorIfStatement.java
index 98b0bcf..ddc74c7 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorIfStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorIfStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorImport.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorImport.java
index 0c24898..a9654b9 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorImport.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorImport.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorLetStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorLetStatement.java
index b7b4eed..f13c336 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorLetStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorLetStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorMetamodel.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorMetamodel.java
index e3e4286..b7bef0b 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorMetamodel.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorMetamodel.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModule.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModule.java
index 8be4e0d..39940e2 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModule.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModule.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleDocumentation.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleDocumentation.java
index 6c644ec..0d03192 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleDocumentation.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleDocumentation.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleElementDocumentation.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleElementDocumentation.java
index 79f8430..f77260e 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleElementDocumentation.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleElementDocumentation.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleReference.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleReference.java
index 85247a5..5ddde72 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleReference.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorModuleReference.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorProtectedArea.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorProtectedArea.java
index 722c595..719caa1 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorProtectedArea.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorProtectedArea.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorQuery.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorQuery.java
index 9f03ef9..2e7b286 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorQuery.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorQuery.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorTemplate.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorTemplate.java
index 4fd4560..4e4a37e 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorTemplate.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorTemplate.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorVariable.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorVariable.java
index 2b9e903..0db12be 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorVariable.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ErrorVariable.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Expression.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Expression.java
index 51ebbc5..e52dfae 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Expression.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Expression.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -11,8 +11,6 @@
  */
 package org.eclipse.acceleo;
 
-import org.eclipse.acceleo.query.parser.AstResult;
-
 /**
  * <!-- begin-user-doc --> A representation of the model object '<em><b>Expression</b></em>'. <!--
  * end-user-doc -->
@@ -39,12 +37,12 @@
 	 * </p>
 	 * <!-- end-user-doc -->
 	 * @return the value of the '<em>Ast</em>' attribute.
-	 * @see #setAst(AstResult)
+	 * @see #setAst(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)
 	 * @see org.eclipse.acceleo.AcceleoPackage#getExpression_Ast()
 	 * @model dataType="org.eclipse.acceleo.ASTResult" required="true"
 	 * @generated
 	 */
-	AstResult getAst();
+	org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult getAst();
 
 	/**
 	 * Sets the value of the '{@link org.eclipse.acceleo.Expression#getAst <em>Ast</em>}' attribute.
@@ -54,7 +52,7 @@
 	 * @see #getAst()
 	 * @generated
 	 */
-	void setAst(AstResult value);
+	void setAst(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult value);
 
 	/**
 	 * Returns the value of the '<em><b>Aql</b></em>' containment reference.
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ExpressionStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ExpressionStatement.java
index 034e661..99be067 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ExpressionStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ExpressionStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/FileStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/FileStatement.java
index 4838607..90a9309 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/FileStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/FileStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ForStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ForStatement.java
index de149c2..b2cd58f 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ForStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ForStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/IfStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/IfStatement.java
index 1cffe15..27506df 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/IfStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/IfStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Import.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Import.java
index 455b47c..b6ab012 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Import.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Import.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/LeafStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/LeafStatement.java
index 9efe5b5..8a4285f 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/LeafStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/LeafStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/LetStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/LetStatement.java
index ca6be1d..7d45a35 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/LetStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/LetStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Metamodel.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Metamodel.java
index 0545a27..dc9f895 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Metamodel.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Metamodel.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Module.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Module.java
index 67320e3..d992fb6 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Module.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Module.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleDocumentation.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleDocumentation.java
index 1a97f92..d2c0094 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleDocumentation.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleDocumentation.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleElement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleElement.java
index 5cde0b4..9755f11 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleElement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleElement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleElementDocumentation.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleElementDocumentation.java
index ffdff87..54c9336 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleElementDocumentation.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleElementDocumentation.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleReference.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleReference.java
index 0ea8a72..f0123ef 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleReference.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ModuleReference.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/NamedElement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/NamedElement.java
index 3ea10fe..5fac057 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/NamedElement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/NamedElement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/NewLineStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/NewLineStatement.java
index 7ea32ab..9d94f05 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/NewLineStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/NewLineStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/OpenModeKind.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/OpenModeKind.java
index a91f7e6..52991a3 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/OpenModeKind.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/OpenModeKind.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ParameterDocumentation.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ParameterDocumentation.java
index cb8ffe6..70b0b66 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ParameterDocumentation.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ParameterDocumentation.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ProtectedArea.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ProtectedArea.java
index b48638f..615aaad 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ProtectedArea.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/ProtectedArea.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Query.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Query.java
index 1a226d6..c5c1bb3 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Query.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Query.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Statement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Statement.java
index 601a4b6..8bcec1c 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Statement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Statement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Template.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Template.java
index cd126f3..a54d499 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Template.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Template.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/TextStatement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/TextStatement.java
index 16cb08d..4c323d2 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/TextStatement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/TextStatement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/TypedElement.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/TypedElement.java
index 10769b3..7cb5e05 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/TypedElement.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/TypedElement.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -12,7 +12,6 @@
 package org.eclipse.acceleo;
 
 import org.eclipse.acceleo.query.ast.Expression;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.ecore.EObject;
 
 /**
@@ -42,12 +41,12 @@
 	 * </p>
 	 * <!-- end-user-doc -->
 	 * @return the value of the '<em>Type</em>' attribute.
-	 * @see #setType(AstResult)
+	 * @see #setType(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)
 	 * @see org.eclipse.acceleo.AcceleoPackage#getTypedElement_Type()
 	 * @model dataType="org.eclipse.acceleo.ASTResult" required="true"
 	 * @generated
 	 */
-	AstResult getType();
+	org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult getType();
 
 	/**
 	 * Sets the value of the '{@link org.eclipse.acceleo.TypedElement#getType <em>Type</em>}' attribute.
@@ -57,7 +56,7 @@
 	 * @see #getType()
 	 * @generated
 	 */
-	void setType(AstResult value);
+	void setType(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult value);
 
 	/**
 	 * Returns the value of the '<em><b>Type Aql</b></em>' containment reference.
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Variable.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Variable.java
index ea77d19..fb26707 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Variable.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/Variable.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/VisibilityKind.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/VisibilityKind.java
index 2a6781d..9b41483 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/VisibilityKind.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/VisibilityKind.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/AcceleoFactoryImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/AcceleoFactoryImpl.java
index bb71155..3d2001d 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/AcceleoFactoryImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/AcceleoFactoryImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -60,7 +60,6 @@
 import org.eclipse.acceleo.Variable;
 import org.eclipse.acceleo.VisibilityKind;
 import org.eclipse.acceleo.aql.parser.AcceleoAstResult;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EDataType;
 import org.eclipse.emf.ecore.EObject;
@@ -802,8 +801,10 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public AstResult createASTResultFromString(EDataType eDataType, String initialValue) {
-		return (AstResult)super.createFromString(eDataType, initialValue);
+	public org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult createASTResultFromString(
+			EDataType eDataType, String initialValue) {
+		return (org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)super.createFromString(
+				eDataType, initialValue);
 	}
 
 	/**
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/AcceleoPackageImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/AcceleoPackageImpl.java
index c587146..e6ae26e 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/AcceleoPackageImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/AcceleoPackageImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -67,7 +67,6 @@
 import org.eclipse.acceleo.VisibilityKind;
 import org.eclipse.acceleo.aql.parser.AcceleoAstResult;
 import org.eclipse.acceleo.query.ast.AstPackage;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.ecore.EAttribute;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EDataType;
@@ -3128,8 +3127,9 @@
 		addEEnumLiteral(openModeKindEEnum, OpenModeKind.CREATE);
 
 		// Initialize data types
-		initEDataType(astResultEDataType, AstResult.class, "ASTResult", IS_SERIALIZABLE, //$NON-NLS-1$
-				!IS_GENERATED_INSTANCE_CLASS);
+		initEDataType(astResultEDataType,
+				org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult.class, "ASTResult", //$NON-NLS-1$
+				IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
 		initEDataType(moduleQualifiedNameEDataType, String.class, "ModuleQualifiedName", IS_SERIALIZABLE, //$NON-NLS-1$
 				!IS_GENERATED_INSTANCE_CLASS);
 		initEDataType(acceleoAstResultEDataType, AcceleoAstResult.class, "AcceleoAstResult", IS_SERIALIZABLE, //$NON-NLS-1$
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BindingImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BindingImpl.java
index 13b7d1d..58f9777 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BindingImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BindingImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BlockCommentImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BlockCommentImpl.java
index 65c91e5..77ca758 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BlockCommentImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BlockCommentImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BlockImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BlockImpl.java
index 7e5935b..a7e646f 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BlockImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/BlockImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/CommentBodyImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/CommentBodyImpl.java
index 6123eba..27df19f 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/CommentBodyImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/CommentBodyImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/CommentImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/CommentImpl.java
index c404c4b..26ac72a 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/CommentImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/CommentImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorBindingImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorBindingImpl.java
index ce128f0..7a16207 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorBindingImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorBindingImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -18,7 +18,6 @@
 import org.eclipse.acceleo.NamedElement;
 import org.eclipse.acceleo.TypedElement;
 import org.eclipse.acceleo.Variable;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.notify.NotificationChain;
 import org.eclipse.emf.ecore.EClass;
@@ -55,7 +54,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected static final AstResult TYPE_EDEFAULT = null;
+	protected static final org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult TYPE_EDEFAULT = null;
 
 	/**
 	 * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
@@ -65,7 +64,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected AstResult type = TYPE_EDEFAULT;
+	protected org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult type = TYPE_EDEFAULT;
 
 	/**
 	 * The cached value of the '{@link #getTypeAql() <em>Type Aql</em>}' containment reference. <!--
@@ -224,17 +223,18 @@
 	 * @generated
 	 */
 	@Override
-	public AstResult getType() {
+	public org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult getType() {
 		return type;
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	@Override
-	public void setType(AstResult newType) {
-		AstResult oldType = type;
+	public void setType(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult newType) {
+		org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult oldType = type;
 		type = newType;
 		if (eNotificationRequired())
 			eNotify(new ENotificationImpl(this, Notification.SET, AcceleoPackage.ERROR_BINDING__TYPE, oldType,
@@ -526,7 +526,7 @@
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
 			case AcceleoPackage.ERROR_BINDING__TYPE:
-				setType((AstResult)newValue);
+				setType((org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)newValue);
 				return;
 			case AcceleoPackage.ERROR_BINDING__TYPE_AQL:
 				setTypeAql((org.eclipse.acceleo.query.ast.Expression)newValue);
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorBlockCommentImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorBlockCommentImpl.java
index 5fc1092..b6d6155 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorBlockCommentImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorBlockCommentImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorCommentImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorCommentImpl.java
index 37d416c..a1b9602 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorCommentImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorCommentImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorExpressionImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorExpressionImpl.java
index 1c8b716..e946ff5 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorExpressionImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorExpressionImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -14,7 +14,6 @@
 import org.eclipse.acceleo.AcceleoPackage;
 import org.eclipse.acceleo.ErrorExpression;
 import org.eclipse.acceleo.Expression;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.common.notify.Notification;
 
 import org.eclipse.emf.common.notify.NotificationChain;
@@ -47,7 +46,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected static final AstResult AST_EDEFAULT = null;
+	protected static final org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult AST_EDEFAULT = null;
 
 	/**
 	 * The cached value of the '{@link #getAst() <em>Ast</em>}' attribute.
@@ -57,7 +56,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected AstResult ast = AST_EDEFAULT;
+	protected org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult ast = AST_EDEFAULT;
 
 	/**
 	 * The cached value of the '{@link #getAql() <em>Aql</em>}' containment reference.
@@ -94,7 +93,7 @@
 	 * @generated
 	 */
 	@Override
-	public AstResult getAst() {
+	public org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult getAst() {
 		return ast;
 	}
 
@@ -104,8 +103,8 @@
 	 * @generated
 	 */
 	@Override
-	public void setAst(AstResult newAst) {
-		AstResult oldAst = ast;
+	public void setAst(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult newAst) {
+		org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult oldAst = ast;
 		ast = newAst;
 		if (eNotificationRequired())
 			eNotify(new ENotificationImpl(this, Notification.SET, AcceleoPackage.ERROR_EXPRESSION__AST,
@@ -204,7 +203,7 @@
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
 			case AcceleoPackage.ERROR_EXPRESSION__AST:
-				setAst((AstResult)newValue);
+				setAst((org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)newValue);
 				return;
 			case AcceleoPackage.ERROR_EXPRESSION__AQL:
 				setAql((org.eclipse.acceleo.query.ast.Expression)newValue);
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorExpressionStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorExpressionStatementImpl.java
index 393d036..a087c51 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorExpressionStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorExpressionStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorFileStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorFileStatementImpl.java
index d9a20c5..eacb4fc 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorFileStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorFileStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorForStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorForStatementImpl.java
index 6269f6f..429cdae 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorForStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorForStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorIfStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorIfStatementImpl.java
index 9b8553d..4ca3c63 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorIfStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorIfStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorImportImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorImportImpl.java
index 4e30037..95c0408 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorImportImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorImportImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorLetStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorLetStatementImpl.java
index 2e5a126..530122f 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorLetStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorLetStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorMetamodelImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorMetamodelImpl.java
index e057a63..b06a07c 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorMetamodelImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorMetamodelImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleDocumentationImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleDocumentationImpl.java
index 9350408..c42c908 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleDocumentationImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleDocumentationImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleElementDocumentationImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleElementDocumentationImpl.java
index e868f26..949787f 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleElementDocumentationImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleElementDocumentationImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleImpl.java
index 21741bd..0cdc3af 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleReferenceImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleReferenceImpl.java
index 0e49329..1ed687e 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleReferenceImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorModuleReferenceImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorProtectedAreaImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorProtectedAreaImpl.java
index 6545d18..0ba6e86 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorProtectedAreaImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorProtectedAreaImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorQueryImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorQueryImpl.java
index 6d60502..2596bbc 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorQueryImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorQueryImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -24,7 +24,6 @@
 import org.eclipse.acceleo.TypedElement;
 import org.eclipse.acceleo.Variable;
 import org.eclipse.acceleo.VisibilityKind;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.notify.NotificationChain;
 import org.eclipse.emf.common.util.EList;
@@ -122,7 +121,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected static final AstResult TYPE_EDEFAULT = null;
+	protected static final org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult TYPE_EDEFAULT = null;
 
 	/**
 	 * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
@@ -132,7 +131,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected AstResult type = TYPE_EDEFAULT;
+	protected org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult type = TYPE_EDEFAULT;
 
 	/**
 	 * The cached value of the '{@link #getTypeAql() <em>Type Aql</em>}' containment reference. <!--
@@ -493,17 +492,18 @@
 	 * @generated
 	 */
 	@Override
-	public AstResult getType() {
+	public org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult getType() {
 		return type;
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	@Override
-	public void setType(AstResult newType) {
-		AstResult oldType = type;
+	public void setType(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult newType) {
+		org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult oldType = type;
 		type = newType;
 		if (eNotificationRequired())
 			eNotify(new ENotificationImpl(this, Notification.SET, AcceleoPackage.ERROR_QUERY__TYPE, oldType,
@@ -944,7 +944,7 @@
 				setName((String)newValue);
 				return;
 			case AcceleoPackage.ERROR_QUERY__TYPE:
-				setType((AstResult)newValue);
+				setType((org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)newValue);
 				return;
 			case AcceleoPackage.ERROR_QUERY__TYPE_AQL:
 				setTypeAql((org.eclipse.acceleo.query.ast.Expression)newValue);
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorTemplateImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorTemplateImpl.java
index 5387563..1dc7afe 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorTemplateImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorTemplateImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorVariableImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorVariableImpl.java
index 02789a4..0ab9eaf 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorVariableImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ErrorVariableImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -17,7 +17,6 @@
 import org.eclipse.acceleo.TypedElement;
 import org.eclipse.acceleo.Variable;
 import org.eclipse.acceleo.query.ast.Expression;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.notify.NotificationChain;
 import org.eclipse.emf.ecore.EClass;
@@ -51,7 +50,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected static final AstResult TYPE_EDEFAULT = null;
+	protected static final org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult TYPE_EDEFAULT = null;
 
 	/**
 	 * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
@@ -61,7 +60,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected AstResult type = TYPE_EDEFAULT;
+	protected org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult type = TYPE_EDEFAULT;
 
 	/**
 	 * The cached value of the '{@link #getTypeAql() <em>Type Aql</em>}' containment reference. <!--
@@ -175,17 +174,18 @@
 	 * @generated
 	 */
 	@Override
-	public AstResult getType() {
+	public org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult getType() {
 		return type;
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	@Override
-	public void setType(AstResult newType) {
-		AstResult oldType = type;
+	public void setType(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult newType) {
+		org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult oldType = type;
 		type = newType;
 		if (eNotificationRequired())
 			eNotify(new ENotificationImpl(this, Notification.SET, AcceleoPackage.ERROR_VARIABLE__TYPE,
@@ -373,7 +373,7 @@
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
 			case AcceleoPackage.ERROR_VARIABLE__TYPE:
-				setType((AstResult)newValue);
+				setType((org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)newValue);
 				return;
 			case AcceleoPackage.ERROR_VARIABLE__TYPE_AQL:
 				setTypeAql((Expression)newValue);
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ExpressionImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ExpressionImpl.java
index 1bedb6c..71314a3 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ExpressionImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ExpressionImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -13,7 +13,6 @@
 
 import org.eclipse.acceleo.AcceleoPackage;
 import org.eclipse.acceleo.Expression;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.common.notify.Notification;
 
 import org.eclipse.emf.common.notify.NotificationChain;
@@ -46,7 +45,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected static final AstResult AST_EDEFAULT = null;
+	protected static final org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult AST_EDEFAULT = null;
 
 	/**
 	 * The cached value of the '{@link #getAst() <em>Ast</em>}' attribute.
@@ -56,7 +55,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected AstResult ast = AST_EDEFAULT;
+	protected org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult ast = AST_EDEFAULT;
 
 	/**
 	 * The cached value of the '{@link #getAql() <em>Aql</em>}' containment reference.
@@ -93,7 +92,7 @@
 	 * @generated
 	 */
 	@Override
-	public AstResult getAst() {
+	public org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult getAst() {
 		return ast;
 	}
 
@@ -103,8 +102,8 @@
 	 * @generated
 	 */
 	@Override
-	public void setAst(AstResult newAst) {
-		AstResult oldAst = ast;
+	public void setAst(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult newAst) {
+		org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult oldAst = ast;
 		ast = newAst;
 		if (eNotificationRequired())
 			eNotify(new ENotificationImpl(this, Notification.SET, AcceleoPackage.EXPRESSION__AST, oldAst,
@@ -203,7 +202,7 @@
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
 			case AcceleoPackage.EXPRESSION__AST:
-				setAst((AstResult)newValue);
+				setAst((org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)newValue);
 				return;
 			case AcceleoPackage.EXPRESSION__AQL:
 				setAql((org.eclipse.acceleo.query.ast.Expression)newValue);
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ExpressionStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ExpressionStatementImpl.java
index fe57d70..6131215 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ExpressionStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ExpressionStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/FileStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/FileStatementImpl.java
index 10b943e..c44433a 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/FileStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/FileStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ForStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ForStatementImpl.java
index 6c42d72..3c5bb4e 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ForStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ForStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/IfStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/IfStatementImpl.java
index 79e6513..7fb4d4e 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/IfStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/IfStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ImportImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ImportImpl.java
index c9bf41a..f26cc66 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ImportImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ImportImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/LeafStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/LeafStatementImpl.java
index 20a2e89..5fc0c41 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/LeafStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/LeafStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/LetStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/LetStatementImpl.java
index 6623fd0..079c772 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/LetStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/LetStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/MetamodelImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/MetamodelImpl.java
index 96a2e1f..389f68d 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/MetamodelImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/MetamodelImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleDocumentationImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleDocumentationImpl.java
index 71f5972..eaac550 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleDocumentationImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleDocumentationImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleElementDocumentationImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleElementDocumentationImpl.java
index ad575d9..ec503d0 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleElementDocumentationImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleElementDocumentationImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleElementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleElementImpl.java
index f3ed57a..f5e815b 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleElementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleElementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleImpl.java
index 7df0d0c..9efd099 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleReferenceImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleReferenceImpl.java
index 3cf3847..232ed7d 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleReferenceImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ModuleReferenceImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/NamedElementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/NamedElementImpl.java
index 6d6666a..dcec333 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/NamedElementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/NamedElementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/NewLineStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/NewLineStatementImpl.java
index c3f8941..f87a00e 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/NewLineStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/NewLineStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ParameterDocumentationImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ParameterDocumentationImpl.java
index 236dfb7..f73c596 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ParameterDocumentationImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ParameterDocumentationImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ProtectedAreaImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ProtectedAreaImpl.java
index 3a56d6c..6a5e6d3 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ProtectedAreaImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/ProtectedAreaImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/QueryImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/QueryImpl.java
index 656077d..939d279 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/QueryImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/QueryImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -22,7 +22,6 @@
 import org.eclipse.acceleo.TypedElement;
 import org.eclipse.acceleo.Variable;
 import org.eclipse.acceleo.VisibilityKind;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.notify.NotificationChain;
 import org.eclipse.emf.common.util.EList;
@@ -110,7 +109,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected static final AstResult TYPE_EDEFAULT = null;
+	protected static final org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult TYPE_EDEFAULT = null;
 
 	/**
 	 * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
@@ -120,7 +119,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected AstResult type = TYPE_EDEFAULT;
+	protected org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult type = TYPE_EDEFAULT;
 
 	/**
 	 * The cached value of the '{@link #getTypeAql() <em>Type Aql</em>}' containment reference. <!--
@@ -304,17 +303,18 @@
 	 * @generated
 	 */
 	@Override
-	public AstResult getType() {
+	public org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult getType() {
 		return type;
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	@Override
-	public void setType(AstResult newType) {
-		AstResult oldType = type;
+	public void setType(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult newType) {
+		org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult oldType = type;
 		type = newType;
 		if (eNotificationRequired())
 			eNotify(new ENotificationImpl(this, Notification.SET, AcceleoPackage.QUERY__TYPE, oldType, type));
@@ -536,7 +536,7 @@
 				setName((String)newValue);
 				return;
 			case AcceleoPackage.QUERY__TYPE:
-				setType((AstResult)newValue);
+				setType((org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)newValue);
 				return;
 			case AcceleoPackage.QUERY__TYPE_AQL:
 				setTypeAql((org.eclipse.acceleo.query.ast.Expression)newValue);
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TemplateImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TemplateImpl.java
index 6f42908..c1fa3cc 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TemplateImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TemplateImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TextStatementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TextStatementImpl.java
index 82dec9f..5700efa 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TextStatementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TextStatementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TypedElementImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TypedElementImpl.java
index 457c532..704853b 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TypedElementImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/TypedElementImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -14,7 +14,6 @@
 import org.eclipse.acceleo.AcceleoPackage;
 import org.eclipse.acceleo.TypedElement;
 import org.eclipse.acceleo.query.ast.Expression;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.notify.NotificationChain;
 import org.eclipse.emf.ecore.EClass;
@@ -44,7 +43,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected static final AstResult TYPE_EDEFAULT = null;
+	protected static final org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult TYPE_EDEFAULT = null;
 
 	/**
 	 * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
@@ -54,7 +53,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected AstResult type = TYPE_EDEFAULT;
+	protected org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult type = TYPE_EDEFAULT;
 
 	/**
 	 * The cached value of the '{@link #getTypeAql() <em>Type Aql</em>}' containment reference. <!--
@@ -88,17 +87,18 @@
 	 * @generated
 	 */
 	@Override
-	public AstResult getType() {
+	public org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult getType() {
 		return type;
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	@Override
-	public void setType(AstResult newType) {
-		AstResult oldType = type;
+	public void setType(org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult newType) {
+		org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult oldType = type;
 		type = newType;
 		if (eNotificationRequired())
 			eNotify(new ENotificationImpl(this, Notification.SET, AcceleoPackage.TYPED_ELEMENT__TYPE, oldType,
@@ -190,7 +190,7 @@
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
 			case AcceleoPackage.TYPED_ELEMENT__TYPE:
-				setType((AstResult)newValue);
+				setType((org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult)newValue);
 				return;
 			case AcceleoPackage.TYPED_ELEMENT__TYPE_AQL:
 				setTypeAql((Expression)newValue);
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/VariableImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/VariableImpl.java
index 8cca1d0..68e35a0 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/VariableImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/impl/VariableImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoAdapterFactory.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoAdapterFactory.java
index 84261f6..7c5833a 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoAdapterFactory.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoAdapterFactory.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoResourceFactoryImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoResourceFactoryImpl.java
index e29be7c..4969d11 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoResourceFactoryImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoResourceFactoryImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoResourceImpl.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoResourceImpl.java
index 63d012c..ea68e63 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoResourceImpl.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoResourceImpl.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoSwitch.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoSwitch.java
index 7a4735e..a901300 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoSwitch.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoSwitch.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoXMLProcessor.java b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoXMLProcessor.java
index 06fc9d6..0bae0e5 100644
--- a/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoXMLProcessor.java
+++ b/plugins/org.eclipse.acceleo.aql/src-gen/org/eclipse/acceleo/util/AcceleoXMLProcessor.java
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2008, 2020 Obeo.
+ * Copyright (c) 2008, 2021 Obeo.
  * 
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/evaluation/AcceleoEvaluator.java b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/evaluation/AcceleoEvaluator.java
index 561b8e1..13aed03 100644
--- a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/evaluation/AcceleoEvaluator.java
+++ b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/evaluation/AcceleoEvaluator.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016, 2020  Obeo.
+ * Copyright (c) 2016, 2021  Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -46,8 +46,8 @@
 import org.eclipse.acceleo.TextStatement;
 import org.eclipse.acceleo.aql.AcceleoUtil;
 import org.eclipse.acceleo.aql.IAcceleoEnvironment;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.EvaluationResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IQueryEvaluationEngine;
 import org.eclipse.acceleo.query.runtime.QueryEvaluation;
diff --git a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/AcceleoLocator.java b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/AcceleoLocator.java
index eaa9193..504fec0 100644
--- a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/AcceleoLocator.java
+++ b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/AcceleoLocator.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2020 Obeo.
+ * Copyright (c) 2020, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -20,7 +20,7 @@
 import org.eclipse.acceleo.aql.location.common.AbstractLocationLink;
 import org.eclipse.acceleo.aql.parser.AcceleoAstResult;
 import org.eclipse.acceleo.aql.parser.AcceleoAstUtils;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.namespace.IQualifiedNameLookupEngine;
 import org.eclipse.emf.ecore.EObject;
 
diff --git a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/aql/AqlDefinitionLocator.java b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/aql/AqlDefinitionLocator.java
index b6acecf..0296b6d 100644
--- a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/aql/AqlDefinitionLocator.java
+++ b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/aql/AqlDefinitionLocator.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2020 Obeo.
+ * Copyright (c) 2020, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -28,10 +28,10 @@
 import org.eclipse.acceleo.query.ast.VariableDeclaration;
 import org.eclipse.acceleo.query.ast.util.AstSwitch;
 import org.eclipse.acceleo.query.parser.AstEvaluator;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.AstValidator;
 import org.eclipse.acceleo.query.parser.CombineIterator;
 import org.eclipse.acceleo.query.runtime.EvaluationResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IService;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
diff --git a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/aql/AqlLocator.java b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/aql/AqlLocator.java
index a008280..28f1e66 100644
--- a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/aql/AqlLocator.java
+++ b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/location/aql/AqlLocator.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2020 Obeo.
+ * Copyright (c) 2020, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -15,7 +15,7 @@
 import java.util.Objects;
 
 import org.eclipse.acceleo.aql.location.common.AbstractLocationLink;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.emf.ecore.EObject;
 
diff --git a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/parser/AcceleoAstUtils.java b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/parser/AcceleoAstUtils.java
index 3381d36..a6fc798 100644
--- a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/parser/AcceleoAstUtils.java
+++ b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/parser/AcceleoAstUtils.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2020 Obeo.
+ * Copyright (c) 2020, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -21,7 +21,7 @@
 import org.eclipse.acceleo.Module;
 import org.eclipse.acceleo.TypedElement;
 import org.eclipse.acceleo.query.ast.VariableDeclaration;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.util.EcoreUtil.EqualityHelper;
diff --git a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/parser/AcceleoParser.java b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/parser/AcceleoParser.java
index b3825e4..d1b6f1c 100644
--- a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/parser/AcceleoParser.java
+++ b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/parser/AcceleoParser.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016, 2020 Obeo.
+ * Copyright (c) 2016, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -79,10 +79,10 @@
 import org.eclipse.acceleo.query.ast.AstPackage;
 import org.eclipse.acceleo.query.ast.ErrorTypeLiteral;
 import org.eclipse.acceleo.query.parser.AstBuilderListener;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.Positions;
 import org.eclipse.acceleo.query.parser.QueryLexer;
 import org.eclipse.acceleo.query.parser.QueryParser;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IReadOnlyQueryEnvironment;
 import org.eclipse.emf.common.util.BasicDiagnostic;
 import org.eclipse.emf.common.util.Diagnostic;
diff --git a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/AcceleoValidationResult.java b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/AcceleoValidationResult.java
index 5381184..95a6001 100644
--- a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/AcceleoValidationResult.java
+++ b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/AcceleoValidationResult.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2017 Obeo.
+ * Copyright (c) 2017, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -21,7 +21,7 @@
 
 import org.eclipse.acceleo.ASTNode;
 import org.eclipse.acceleo.aql.parser.AcceleoAstResult;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IValidationMessage;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
 
diff --git a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/AcceleoValidationUtils.java b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/AcceleoValidationUtils.java
index de7a341..02351af 100644
--- a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/AcceleoValidationUtils.java
+++ b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/AcceleoValidationUtils.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2020 Obeo.
+ * Copyright (c) 2020, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -20,8 +20,8 @@
 
 import org.eclipse.acceleo.TypedElement;
 import org.eclipse.acceleo.Variable;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.AstValidator;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
 import org.eclipse.acceleo.query.runtime.impl.ValidationServices;
diff --git a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/IAcceleoValidationResult.java b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/IAcceleoValidationResult.java
index a212074..3fd1a2c 100644
--- a/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/IAcceleoValidationResult.java
+++ b/plugins/org.eclipse.acceleo.aql/src/org/eclipse/acceleo/aql/validation/IAcceleoValidationResult.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2017 Obeo.
+ * Copyright (c) 2017, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -14,7 +14,7 @@
 
 import org.eclipse.acceleo.ASTNode;
 import org.eclipse.acceleo.aql.parser.AcceleoAstResult;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IValidationMessage;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
 
@@ -33,8 +33,8 @@
 	AcceleoAstResult getAcceleoAstResult();
 
 	/**
-	 * Gets the {@link List} of all {@link IValidationMessage} for
-	 * {@link IAcceleoValidationResult#getModule() validated module}.
+	 * Gets the {@link List} of all {@link IValidationMessage} for {@link IAcceleoValidationResult#getModule()
+	 * validated module}.
 	 * 
 	 * @return the {@link List} of all {@link IValidationMessage} for
 	 *         {@link IAcceleoValidationResult#getModule() validated module}
diff --git a/query/plugins/org.eclipse.acceleo.query.doc/src/org/eclipse/acceleo/query/doc/internal/DocumentationGenerator.java b/query/plugins/org.eclipse.acceleo.query.doc/src/org/eclipse/acceleo/query/doc/internal/DocumentationGenerator.java
index 317185d..74a4dd0 100644
--- a/query/plugins/org.eclipse.acceleo.query.doc/src/org/eclipse/acceleo/query/doc/internal/DocumentationGenerator.java
+++ b/query/plugins/org.eclipse.acceleo.query.doc/src/org/eclipse/acceleo/query/doc/internal/DocumentationGenerator.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -42,8 +42,9 @@
  * @author <a href="mailto:stephane.begaudeau@obeo.fr">Stephane Begaudeau</a>
  */
 public final class DocumentationGenerator {
+
 	/**
-	 * 
+	 * Some kind of marker.
 	 */
 	private static final String TRIGGER_TO_APPEND_STD_DOC = "<p>These sections are listing all the services of the standard library of AQL.</p>";
 
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLInvocationDelegate.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLInvocationDelegate.java
index c1858a6..3a168eb 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLInvocationDelegate.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLInvocationDelegate.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016 Obeo.
+ * Copyright (c) 2016, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -15,9 +15,9 @@
 import java.util.List;
 import java.util.Map;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.AcceleoQueryEvaluationException;
 import org.eclipse.acceleo.query.runtime.EvaluationResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IQueryEvaluationEngine;
 import org.eclipse.acceleo.query.runtime.QueryEvaluation;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLInvocationDelegateFactory.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLInvocationDelegateFactory.java
index 14afb80..0440625 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLInvocationDelegateFactory.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLInvocationDelegateFactory.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016 Obeo.
+ * Copyright (c) 2016, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -14,8 +14,8 @@
 import java.util.List;
 
 import org.eclipse.acceleo.query.ast.AstPackage;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.QueryParsing;
 import org.eclipse.emf.ecore.EOperation;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLQueryDelegate.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLQueryDelegate.java
index 209a71a..ff9af14 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLQueryDelegate.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLQueryDelegate.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016 Obeo.
+ * Copyright (c) 2016, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -14,9 +14,9 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.AcceleoQueryEvaluationException;
 import org.eclipse.acceleo.query.runtime.EvaluationResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IQueryEvaluationEngine;
 import org.eclipse.acceleo.query.runtime.QueryEvaluation;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLQueryDelegateFactory.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLQueryDelegateFactory.java
index 19c6978..6685587 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLQueryDelegateFactory.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLQueryDelegateFactory.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016 Obeo.
+ * Copyright (c) 2016, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -12,8 +12,8 @@
 
 import java.util.Map;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.QueryParsing;
 import org.eclipse.emf.ecore.EClassifier;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLSettingDelegate.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLSettingDelegate.java
index 9e143de..5e435d9 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLSettingDelegate.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLSettingDelegate.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016 Obeo.
+ * Copyright (c) 2016, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -13,8 +13,8 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.EvaluationResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IQueryEvaluationEngine;
 import org.eclipse.acceleo.query.runtime.QueryEvaluation;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLSettingDelegateFactory.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLSettingDelegateFactory.java
index 3d60313..8246d79 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLSettingDelegateFactory.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLSettingDelegateFactory.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016 Obeo.
+ * Copyright (c) 2016, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -11,8 +11,8 @@
 package org.eclipse.acceleo.query.delegates;
 
 import org.eclipse.acceleo.query.ast.AstPackage;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.QueryParsing;
 import org.eclipse.emf.ecore.EStructuralFeature;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLValidationDelegate.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLValidationDelegate.java
index 1f3bab4..0922745 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLValidationDelegate.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/delegates/AQLValidationDelegate.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016 Obeo.
+ * Copyright (c) 2016, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -13,9 +13,9 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.EvaluationResult;
 import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IQueryEvaluationEngine;
 import org.eclipse.acceleo.query.runtime.QueryEvaluation;
@@ -46,8 +46,8 @@
 	 *      org.eclipse.emf.ecore.EObject, java.util.Map, org.eclipse.emf.ecore.EOperation, java.lang.String)
 	 */
 	@Override
-	public boolean validate(EClass eClass, EObject eObject, Map<Object, Object> context,
-			EOperation invariant, String expression) {
+	public boolean validate(EClass eClass, EObject eObject, Map<Object, Object> context, EOperation invariant,
+			String expression) {
 		return Boolean.TRUE.equals(evaluate(eObject, expression));
 	}
 
@@ -70,8 +70,8 @@
 	 *      java.lang.Object, java.util.Map, java.lang.String, java.lang.String)
 	 */
 	@Override
-	public boolean validate(EDataType eDataType, Object value, Map<Object, Object> context,
-			String constraint, String expression) {
+	public boolean validate(EDataType eDataType, Object value, Map<Object, Object> context, String constraint,
+			String expression) {
 		return Boolean.TRUE.equals(evaluate(value, expression));
 	}
 
@@ -102,8 +102,8 @@
 				for (Diagnostic child : evaluationResult.getDiagnostic().getChildren()) {
 					messages.append("\n" + child.getMessage());
 				}
-				throw new IllegalArgumentException("Unable to evaluate \"" + expression + "\""
-						+ messages.toString());
+				throw new IllegalArgumentException("Unable to evaluate \"" + expression + "\"" + messages
+						.toString());
 			}
 			return evaluationResult.getResult();
 		} else {
@@ -111,7 +111,8 @@
 			for (Diagnostic child : astResult.getDiagnostic().getChildren()) {
 				messages.append("\n" + child.getMessage());
 			}
-			throw new IllegalArgumentException("Unable to parse \"" + expression + "\"" + messages.toString());
+			throw new IllegalArgumentException("Unable to parse \"" + expression + "\"" + messages
+					.toString());
 		}
 
 	}
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstBuilderListener.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstBuilderListener.java
index c9286f8..0e4db9e 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstBuilderListener.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstBuilderListener.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -109,6 +109,7 @@
 import org.eclipse.acceleo.query.parser.QueryParser.VariableDefinitionContext;
 import org.eclipse.acceleo.query.parser.QueryParser.XorContext;
 import org.eclipse.acceleo.query.runtime.AcceleoQueryEvaluationException;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IReadOnlyQueryEnvironment;
 import org.eclipse.emf.common.util.BasicDiagnostic;
 import org.eclipse.emf.common.util.Diagnostic;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstCompletor.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstCompletor.java
index 7de12f0..a500bf9 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstCompletor.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstCompletor.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -35,6 +35,7 @@
 import org.eclipse.acceleo.query.ast.VariableDeclaration;
 import org.eclipse.acceleo.query.ast.util.AstSwitch;
 import org.eclipse.acceleo.query.runtime.ICompletionProposal;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IServiceCompletionProposal;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
 import org.eclipse.acceleo.query.runtime.impl.CompletionServices;
@@ -103,8 +104,8 @@
 			result = doSwitch(errorToComplete);
 		} else {
 			// no need for variables here since "expression variable" can't be valid
-			final Set<IType> possibleTypes = validationResult.getPossibleTypes(validationResult
-					.getAstResult().getAst());
+			final Set<IType> possibleTypes = validationResult.getPossibleTypes(validationResult.getAstResult()
+					.getAst());
 			result = getExpressionTextFollows(possibleTypes);
 		}
 
@@ -268,8 +269,8 @@
 	public List<ICompletionProposal> caseErrorEnumLiteral(ErrorEnumLiteral object) {
 		final List<ICompletionProposal> result = new ArrayList<ICompletionProposal>();
 
-		result.addAll(services.getEEnumLiteralProposals(object.getSegments().get(0), object.getSegments()
-				.get(1)));
+		result.addAll(services.getEEnumLiteralProposals(object.getSegments().get(0), object.getSegments().get(
+				1)));
 
 		return result;
 	}
@@ -467,8 +468,8 @@
 	 * 
 	 * @param possibleTypes
 	 *            possible types of the {@link org.eclipse.acceleo.query.ast.Expression Expression}
-	 * @return the {@link TextCompletionProposal} following an
-	 *         {@link org.eclipse.acceleo.query.ast.Expression Expression}
+	 * @return the {@link TextCompletionProposal} following an {@link org.eclipse.acceleo.query.ast.Expression
+	 *         Expression}
 	 */
 	private List<ICompletionProposal> getExpressionTextFollows(Set<IType> possibleTypes) {
 		final List<ICompletionProposal> result = new ArrayList<ICompletionProposal>();
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstResult.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstResult.java
deleted file mode 100644
index 893ba32..0000000
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstResult.java
+++ /dev/null
@@ -1,421 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.acceleo.query.parser;
-
-import java.util.List;
-
-import org.eclipse.acceleo.query.ast.Error;
-import org.eclipse.acceleo.query.ast.Expression;
-import org.eclipse.acceleo.query.ast.VariableDeclaration;
-import org.eclipse.emf.common.util.Diagnostic;
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * Representation of an ast built.
- * 
- * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
- */
-public class AstResult {
-
-	/**
-	 * The built {@link Expression}.
-	 */
-	private final Expression ast;
-
-	/**
-	 * The {@link List} of {@link Error}.
-	 */
-	private final List<Error> errors;
-
-	/**
-	 * The positions of parsed elements.
-	 */
-	private final Positions positions;
-
-	/**
-	 * The {@link Diagnostic} of the parsing.
-	 */
-	private Diagnostic diagnostic;
-
-	/**
-	 * Constructor.
-	 * 
-	 * @param ast
-	 *            the built {@link Expression}
-	 * @param positions
-	 *            the {@link Positions} of parsed elements
-	 * @param errors
-	 *            the {@link List} of {@link Error}
-	 * @param diagnostic
-	 *            the {@link Diagnostic} of the parsing
-	 */
-	public AstResult(Expression ast, Positions positions, List<Error> errors, Diagnostic diagnostic) {
-		this.ast = ast;
-		this.positions = positions;
-		this.errors = errors;
-		this.diagnostic = diagnostic;
-	}
-
-	/**
-	 * Gets the built {@link Expression}.
-	 * 
-	 * @return the built {@link Expression}
-	 */
-	public Expression getAst() {
-		return ast;
-	}
-
-	/**
-	 * Gets the {@link List} of {@link Error}.
-	 * 
-	 * @return the {@link List} of {@link Error}
-	 */
-	public List<Error> getErrors() {
-		return errors;
-	}
-
-	/**
-	 * Gets the start position of the given {@link Expression} in the parsed text.
-	 * 
-	 * @param expression
-	 *            the {@link Expression}
-	 * @return the start position of the given {@link Expression} in the parsed text if any, <code>-1</code>
-	 *         otherwise
-	 */
-	public int getStartPosition(Expression expression) {
-		return getInternalStartPosition(expression);
-	}
-
-	/**
-	 * Gets the start position of the given {@link VariableDeclaration} in the parsed text.
-	 * 
-	 * @param declaration
-	 *            the {@link VariableDeclaration}
-	 * @return the start position of the given {@link VariableDeclaration} in the parsed text if any,
-	 *         <code>-1</code> otherwise
-	 */
-	public int getStartPosition(VariableDeclaration declaration) {
-		return getInternalStartPosition(declaration);
-	}
-
-	/**
-	 * Gets the start position of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 * text.
-	 * 
-	 * @param object
-	 *            the {@link Expression} or a {@link VariableDeclaration}
-	 * @return the start position of the given {@link Expression} or a {@link VariableDeclaration} in the
-	 *         parsed text if any, <code>-1</code> otherwise
-	 */
-	private int getInternalStartPosition(EObject object) {
-		final int res;
-
-		final Integer position = positions.getStartPositions(object);
-		if (position != null) {
-			res = position.intValue();
-		} else {
-			res = -1;
-		}
-
-		return res;
-	}
-
-	/**
-	 * Gets the start line of the given {@link Expression} in the parsed text.
-	 * 
-	 * @param expression
-	 *            the {@link Expression}
-	 * @return the start line of the given {@link Expression} in the parsed text if any, <code>-1</code>
-	 *         otherwise
-	 */
-	public int getStartLine(Expression expression) {
-		return getInternalStartLine(expression);
-	}
-
-	/**
-	 * Gets the start line of the given {@link VariableDeclaration} in the parsed text.
-	 * 
-	 * @param declaration
-	 *            the {@link VariableDeclaration}
-	 * @return the start line of the given {@link VariableDeclaration} in the parsed text if any,
-	 *         <code>-1</code> otherwise
-	 */
-	public int getStartLine(VariableDeclaration declaration) {
-		return getInternalStartLine(declaration);
-	}
-
-	/**
-	 * Gets the start line of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 * text.
-	 * 
-	 * @param object
-	 *            the {@link Expression} or a {@link VariableDeclaration}
-	 * @return the start line of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 *         text if any, <code>-1</code> otherwise
-	 */
-	private int getInternalStartLine(EObject object) {
-		final int res;
-
-		final Integer line = positions.getStartLines(object);
-		if (line != null) {
-			res = line.intValue();
-		} else {
-			res = -1;
-		}
-
-		return res;
-	}
-
-	/**
-	 * Gets the start column of the given {@link Expression} in the parsed text.
-	 * 
-	 * @param expression
-	 *            the {@link Expression}
-	 * @return the start column of the given {@link Expression} in the parsed text if any, <code>-1</code>
-	 *         otherwise
-	 */
-	public int getStartColumn(Expression expression) {
-		return getInternalStartColumn(expression);
-	}
-
-	/**
-	 * Gets the start column of the given {@link VariableDeclaration} in the parsed text.
-	 * 
-	 * @param declaration
-	 *            the {@link VariableDeclaration}
-	 * @return the start column of the given {@link VariableDeclaration} in the parsed text if any,
-	 *         <code>-1</code> otherwise
-	 */
-	public int getStartColumn(VariableDeclaration declaration) {
-		return getInternalStartColumn(declaration);
-	}
-
-	/**
-	 * Gets the start column of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 * text.
-	 * 
-	 * @param object
-	 *            the {@link Expression} or a {@link VariableDeclaration}
-	 * @return the start column of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 *         text if any, <code>-1</code> otherwise
-	 */
-	private int getInternalStartColumn(EObject object) {
-		final int res;
-
-		final Integer column = positions.getStartColumns(object);
-		if (column != null) {
-			res = column.intValue();
-		} else {
-			res = -1;
-		}
-
-		return res;
-	}
-
-	/**
-	 * Gets the end position of the given {@link Expression} in the parsed text.
-	 * 
-	 * @param expression
-	 *            the {@link Expression}
-	 * @return the end position of the given {@link Expression} in the parsed text if any, <code>-1</code>
-	 *         otherwise
-	 */
-	public int getEndPosition(Expression expression) {
-		return getInternalEndPosition(expression);
-	}
-
-	/**
-	 * Gets the end position of the given {@link VariableDeclaration} in the parsed text.
-	 * 
-	 * @param declaration
-	 *            the {@link VariableDeclaration}
-	 * @return the end position of the given {@link VariableDeclaration} in the parsed text if any,
-	 *         <code>-1</code> otherwise
-	 */
-	public int getEndPosition(VariableDeclaration declaration) {
-		return getInternalEndPosition(declaration);
-	}
-
-	/**
-	 * Gets the end position of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 * text.
-	 * 
-	 * @param object
-	 *            the {@link Expression} or a {@link VariableDeclaration}
-	 * @return the end position of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 *         text if any, <code>-1</code> otherwise
-	 */
-	private int getInternalEndPosition(EObject object) {
-		final int res;
-
-		final Integer position = positions.getEndPositions(object);
-		if (position != null) {
-			res = position.intValue();
-		} else {
-			res = -1;
-		}
-
-		return res;
-	}
-
-	/**
-	 * Gets the end line of the given {@link Expression} in the parsed text.
-	 * 
-	 * @param expression
-	 *            the {@link Expression}
-	 * @return the end line of the given {@link Expression} in the parsed text if any, <code>-1</code>
-	 *         otherwise
-	 */
-	public int getEndLine(Expression expression) {
-		return getInternalEndLine(expression);
-	}
-
-	/**
-	 * Gets the end line of the given {@link VariableDeclaration} in the parsed text.
-	 * 
-	 * @param declaration
-	 *            the {@link VariableDeclaration}
-	 * @return the end line of the given {@link VariableDeclaration} in the parsed text if any,
-	 *         <code>-1</code> otherwise
-	 */
-	public int getEndLine(VariableDeclaration declaration) {
-		return getInternalEndLine(declaration);
-	}
-
-	/**
-	 * Gets the end line of the given {@link Expression} or a {@link VariableDeclaration} in the parsed text.
-	 * 
-	 * @param object
-	 *            the {@link Expression} or a {@link VariableDeclaration}
-	 * @return the end line of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 *         text if any, <code>-1</code> otherwise
-	 */
-	private int getInternalEndLine(EObject object) {
-		final int res;
-
-		final Integer line = positions.getEndLines(object);
-		if (line != null) {
-			res = line.intValue();
-		} else {
-			res = -1;
-		}
-
-		return res;
-	}
-
-	/**
-	 * Gets the end column of the given {@link Expression} in the parsed text.
-	 * 
-	 * @param expression
-	 *            the {@link Expression}
-	 * @return the end column of the given {@link Expression} in the parsed text if any, <code>-1</code>
-	 *         otherwise
-	 */
-	public int getEndColumn(Expression expression) {
-		return getInternalEndColumn(expression);
-	}
-
-	/**
-	 * Gets the end column of the given {@link VariableDeclaration} in the parsed text.
-	 * 
-	 * @param declaration
-	 *            the {@link VariableDeclaration}
-	 * @return the end column of the given {@link VariableDeclaration} in the parsed text if any,
-	 *         <code>-1</code> otherwise
-	 */
-	public int getEndColumn(VariableDeclaration declaration) {
-		return getInternalEndColumn(declaration);
-	}
-
-	/**
-	 * Gets the end column of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 * text.
-	 * 
-	 * @param object
-	 *            the {@link Expression} or a {@link VariableDeclaration}
-	 * @return the end column of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
-	 *         text if any, <code>-1</code> otherwise
-	 */
-	private int getInternalEndColumn(EObject object) {
-		final int res;
-
-		final Integer column = positions.getEndColumns(object);
-		if (column != null) {
-			res = column.intValue();
-		} else {
-			res = -1;
-		}
-
-		return res;
-	}
-
-	/**
-	 * Add all the ast positions to the given {@link Positions} shifted by the given offset.
-	 * 
-	 * @param pos
-	 *            the {@link Positions}
-	 * @param offsetPosition
-	 *            the offset position
-	 * @param offsetLine
-	 *            the offset line
-	 * @param offsetColumn
-	 *            the offset column
-	 */
-	public void addAllPositonsTo(Positions pos, int offsetPosition, int offsetLine, int offsetColumn) {
-		pos.addAll(this.positions, offsetPosition, offsetLine, offsetColumn);
-	}
-
-	/**
-	 * Gets the {@link Diagnostic} of the parsing.
-	 * 
-	 * @return the {@link Diagnostic} of the parsing
-	 */
-	public Diagnostic getDiagnostic() {
-		return diagnostic;
-	}
-
-	/**
-	 * Creates an {@link AstResult} for the given {@link Expression sub AST}.
-	 * 
-	 * @param subAst
-	 *            the sub part of {@link Expression AST}
-	 * @return a new {@link AstResult} for the given {@link Expression sub AST}
-	 * @since 4.1
-	 */
-	public AstResult subResult(Expression subAst) {
-		return new AstResult(subAst, positions, errors, diagnostic);
-	}
-
-	/**
-	 * Gets the ast node at the given position.
-	 * 
-	 * @param position
-	 *            the position
-	 * @return the ast node at the given position if any, <code>null</code> otherwise
-	 */
-	public EObject getAstNode(int position) {
-		return positions.getNodeAt(ast, position);
-	}
-
-	/**
-	 * Gets the ast node at the given line and column.
-	 * 
-	 * @param line
-	 *            the start line
-	 * @param column
-	 *            the start column
-	 * @return the ast node at the given line and column if nay, <code>null</code> otherwise
-	 */
-	public EObject getAstNode(int line, int column) {
-		return positions.getNodeAt(ast, line, column);
-	}
-
-}
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstValidator.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstValidator.java
index 550850e..6937954 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstValidator.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/parser/AstValidator.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015, 2020 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -47,6 +47,7 @@
 import org.eclipse.acceleo.query.ast.VarRef;
 import org.eclipse.acceleo.query.ast.VariableDeclaration;
 import org.eclipse.acceleo.query.ast.util.AstSwitch;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IReadOnlyQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IValidationMessage;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IQueryBuilderEngine.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IQueryBuilderEngine.java
index 147ec8d..4cf616f 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IQueryBuilderEngine.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IQueryBuilderEngine.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -10,7 +10,14 @@
  *******************************************************************************/
 package org.eclipse.acceleo.query.runtime;
 
-import org.eclipse.acceleo.query.parser.AstResult;
+import java.util.List;
+
+import org.eclipse.acceleo.query.ast.Error;
+import org.eclipse.acceleo.query.ast.Expression;
+import org.eclipse.acceleo.query.ast.VariableDeclaration;
+import org.eclipse.acceleo.query.parser.Positions;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.ecore.EObject;
 
 /**
  * / Evaluation Engine is used to evaluate acceleo expressions. The evaluation engine allows to register
@@ -21,6 +28,409 @@
 public interface IQueryBuilderEngine extends IQueryEngine {
 
 	/**
+	 * Representation of an ast built.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	class AstResult {
+
+		/**
+		 * The built {@link Expression}.
+		 */
+		private final Expression ast;
+
+		/**
+		 * The {@link List} of {@link Error}.
+		 */
+		private final List<Error> errors;
+
+		/**
+		 * The positions of parsed elements.
+		 */
+		private final Positions positions;
+
+		/**
+		 * The {@link Diagnostic} of the parsing.
+		 */
+		private Diagnostic diagnostic;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param ast
+		 *            the built {@link Expression}
+		 * @param positions
+		 *            the {@link Positions} of parsed elements
+		 * @param errors
+		 *            the {@link List} of {@link Error}
+		 * @param diagnostic
+		 *            the {@link Diagnostic} of the parsing
+		 */
+		public AstResult(Expression ast, Positions positions, List<Error> errors, Diagnostic diagnostic) {
+			this.ast = ast;
+			this.positions = positions;
+			this.errors = errors;
+			this.diagnostic = diagnostic;
+		}
+
+		/**
+		 * Gets the built {@link Expression}.
+		 * 
+		 * @return the built {@link Expression}
+		 */
+		public Expression getAst() {
+			return ast;
+		}
+
+		/**
+		 * Gets the {@link List} of {@link Error}.
+		 * 
+		 * @return the {@link List} of {@link Error}
+		 */
+		public List<Error> getErrors() {
+			return errors;
+		}
+
+		/**
+		 * Gets the start position of the given {@link Expression} in the parsed text.
+		 * 
+		 * @param expression
+		 *            the {@link Expression}
+		 * @return the start position of the given {@link Expression} in the parsed text if any,
+		 *         <code>-1</code> otherwise
+		 */
+		public int getStartPosition(Expression expression) {
+			return getInternalStartPosition(expression);
+		}
+
+		/**
+		 * Gets the start position of the given {@link VariableDeclaration} in the parsed text.
+		 * 
+		 * @param declaration
+		 *            the {@link VariableDeclaration}
+		 * @return the start position of the given {@link VariableDeclaration} in the parsed text if any,
+		 *         <code>-1</code> otherwise
+		 */
+		public int getStartPosition(VariableDeclaration declaration) {
+			return getInternalStartPosition(declaration);
+		}
+
+		/**
+		 * Gets the start position of the given {@link Expression} or a {@link VariableDeclaration} in the
+		 * parsed text.
+		 * 
+		 * @param object
+		 *            the {@link Expression} or a {@link VariableDeclaration}
+		 * @return the start position of the given {@link Expression} or a {@link VariableDeclaration} in the
+		 *         parsed text if any, <code>-1</code> otherwise
+		 */
+		private int getInternalStartPosition(EObject object) {
+			final int res;
+
+			final Integer position = positions.getStartPositions(object);
+			if (position != null) {
+				res = position.intValue();
+			} else {
+				res = -1;
+			}
+
+			return res;
+		}
+
+		/**
+		 * Gets the start line of the given {@link Expression} in the parsed text.
+		 * 
+		 * @param expression
+		 *            the {@link Expression}
+		 * @return the start line of the given {@link Expression} in the parsed text if any, <code>-1</code>
+		 *         otherwise
+		 */
+		public int getStartLine(Expression expression) {
+			return getInternalStartLine(expression);
+		}
+
+		/**
+		 * Gets the start line of the given {@link VariableDeclaration} in the parsed text.
+		 * 
+		 * @param declaration
+		 *            the {@link VariableDeclaration}
+		 * @return the start line of the given {@link VariableDeclaration} in the parsed text if any,
+		 *         <code>-1</code> otherwise
+		 */
+		public int getStartLine(VariableDeclaration declaration) {
+			return getInternalStartLine(declaration);
+		}
+
+		/**
+		 * Gets the start line of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
+		 * text.
+		 * 
+		 * @param object
+		 *            the {@link Expression} or a {@link VariableDeclaration}
+		 * @return the start line of the given {@link Expression} or a {@link VariableDeclaration} in the
+		 *         parsed text if any, <code>-1</code> otherwise
+		 */
+		private int getInternalStartLine(EObject object) {
+			final int res;
+
+			final Integer line = positions.getStartLines(object);
+			if (line != null) {
+				res = line.intValue();
+			} else {
+				res = -1;
+			}
+
+			return res;
+		}
+
+		/**
+		 * Gets the start column of the given {@link Expression} in the parsed text.
+		 * 
+		 * @param expression
+		 *            the {@link Expression}
+		 * @return the start column of the given {@link Expression} in the parsed text if any, <code>-1</code>
+		 *         otherwise
+		 */
+		public int getStartColumn(Expression expression) {
+			return getInternalStartColumn(expression);
+		}
+
+		/**
+		 * Gets the start column of the given {@link VariableDeclaration} in the parsed text.
+		 * 
+		 * @param declaration
+		 *            the {@link VariableDeclaration}
+		 * @return the start column of the given {@link VariableDeclaration} in the parsed text if any,
+		 *         <code>-1</code> otherwise
+		 */
+		public int getStartColumn(VariableDeclaration declaration) {
+			return getInternalStartColumn(declaration);
+		}
+
+		/**
+		 * Gets the start column of the given {@link Expression} or a {@link VariableDeclaration} in the
+		 * parsed text.
+		 * 
+		 * @param object
+		 *            the {@link Expression} or a {@link VariableDeclaration}
+		 * @return the start column of the given {@link Expression} or a {@link VariableDeclaration} in the
+		 *         parsed text if any, <code>-1</code> otherwise
+		 */
+		private int getInternalStartColumn(EObject object) {
+			final int res;
+
+			final Integer column = positions.getStartColumns(object);
+			if (column != null) {
+				res = column.intValue();
+			} else {
+				res = -1;
+			}
+
+			return res;
+		}
+
+		/**
+		 * Gets the end position of the given {@link Expression} in the parsed text.
+		 * 
+		 * @param expression
+		 *            the {@link Expression}
+		 * @return the end position of the given {@link Expression} in the parsed text if any, <code>-1</code>
+		 *         otherwise
+		 */
+		public int getEndPosition(Expression expression) {
+			return getInternalEndPosition(expression);
+		}
+
+		/**
+		 * Gets the end position of the given {@link VariableDeclaration} in the parsed text.
+		 * 
+		 * @param declaration
+		 *            the {@link VariableDeclaration}
+		 * @return the end position of the given {@link VariableDeclaration} in the parsed text if any,
+		 *         <code>-1</code> otherwise
+		 */
+		public int getEndPosition(VariableDeclaration declaration) {
+			return getInternalEndPosition(declaration);
+		}
+
+		/**
+		 * Gets the end position of the given {@link Expression} or a {@link VariableDeclaration} in the
+		 * parsed text.
+		 * 
+		 * @param object
+		 *            the {@link Expression} or a {@link VariableDeclaration}
+		 * @return the end position of the given {@link Expression} or a {@link VariableDeclaration} in the
+		 *         parsed text if any, <code>-1</code> otherwise
+		 */
+		private int getInternalEndPosition(EObject object) {
+			final int res;
+
+			final Integer position = positions.getEndPositions(object);
+			if (position != null) {
+				res = position.intValue();
+			} else {
+				res = -1;
+			}
+
+			return res;
+		}
+
+		/**
+		 * Gets the end line of the given {@link Expression} in the parsed text.
+		 * 
+		 * @param expression
+		 *            the {@link Expression}
+		 * @return the end line of the given {@link Expression} in the parsed text if any, <code>-1</code>
+		 *         otherwise
+		 */
+		public int getEndLine(Expression expression) {
+			return getInternalEndLine(expression);
+		}
+
+		/**
+		 * Gets the end line of the given {@link VariableDeclaration} in the parsed text.
+		 * 
+		 * @param declaration
+		 *            the {@link VariableDeclaration}
+		 * @return the end line of the given {@link VariableDeclaration} in the parsed text if any,
+		 *         <code>-1</code> otherwise
+		 */
+		public int getEndLine(VariableDeclaration declaration) {
+			return getInternalEndLine(declaration);
+		}
+
+		/**
+		 * Gets the end line of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
+		 * text.
+		 * 
+		 * @param object
+		 *            the {@link Expression} or a {@link VariableDeclaration}
+		 * @return the end line of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
+		 *         text if any, <code>-1</code> otherwise
+		 */
+		private int getInternalEndLine(EObject object) {
+			final int res;
+
+			final Integer line = positions.getEndLines(object);
+			if (line != null) {
+				res = line.intValue();
+			} else {
+				res = -1;
+			}
+
+			return res;
+		}
+
+		/**
+		 * Gets the end column of the given {@link Expression} in the parsed text.
+		 * 
+		 * @param expression
+		 *            the {@link Expression}
+		 * @return the end column of the given {@link Expression} in the parsed text if any, <code>-1</code>
+		 *         otherwise
+		 */
+		public int getEndColumn(Expression expression) {
+			return getInternalEndColumn(expression);
+		}
+
+		/**
+		 * Gets the end column of the given {@link VariableDeclaration} in the parsed text.
+		 * 
+		 * @param declaration
+		 *            the {@link VariableDeclaration}
+		 * @return the end column of the given {@link VariableDeclaration} in the parsed text if any,
+		 *         <code>-1</code> otherwise
+		 */
+		public int getEndColumn(VariableDeclaration declaration) {
+			return getInternalEndColumn(declaration);
+		}
+
+		/**
+		 * Gets the end column of the given {@link Expression} or a {@link VariableDeclaration} in the parsed
+		 * text.
+		 * 
+		 * @param object
+		 *            the {@link Expression} or a {@link VariableDeclaration}
+		 * @return the end column of the given {@link Expression} or a {@link VariableDeclaration} in the
+		 *         parsed text if any, <code>-1</code> otherwise
+		 */
+		private int getInternalEndColumn(EObject object) {
+			final int res;
+
+			final Integer column = positions.getEndColumns(object);
+			if (column != null) {
+				res = column.intValue();
+			} else {
+				res = -1;
+			}
+
+			return res;
+		}
+
+		/**
+		 * Add all the ast positions to the given {@link Positions} shifted by the given offset.
+		 * 
+		 * @param pos
+		 *            the {@link Positions}
+		 * @param offsetPosition
+		 *            the offset position
+		 * @param offsetLine
+		 *            the offset line
+		 * @param offsetColumn
+		 *            the offset column
+		 */
+		public void addAllPositonsTo(Positions pos, int offsetPosition, int offsetLine, int offsetColumn) {
+			pos.addAll(this.positions, offsetPosition, offsetLine, offsetColumn);
+		}
+
+		/**
+		 * Gets the {@link Diagnostic} of the parsing.
+		 * 
+		 * @return the {@link Diagnostic} of the parsing
+		 */
+		public Diagnostic getDiagnostic() {
+			return diagnostic;
+		}
+
+		/**
+		 * Creates an {@link AstResult} for the given {@link Expression sub AST}.
+		 * 
+		 * @param subAst
+		 *            the sub part of {@link Expression AST}
+		 * @return a new {@link AstResult} for the given {@link Expression sub AST}
+		 * @since 4.1
+		 */
+		public AstResult subResult(Expression subAst) {
+			return new AstResult(subAst, positions, errors, diagnostic);
+		}
+
+		/**
+		 * Gets the ast node at the given position.
+		 * 
+		 * @param position
+		 *            the position
+		 * @return the ast node at the given position if any, <code>null</code> otherwise
+		 */
+		public EObject getAstNode(int position) {
+			return positions.getNodeAt(ast, position);
+		}
+
+		/**
+		 * Gets the ast node at the given line and column.
+		 * 
+		 * @param line
+		 *            the start line
+		 * @param column
+		 *            the start column
+		 * @return the ast node at the given line and column if nay, <code>null</code> otherwise
+		 */
+		public EObject getAstNode(int line, int column) {
+			return positions.getNodeAt(ast, line, column);
+		}
+
+	}
+
+	/**
 	 * Builds the specified expression.
 	 * 
 	 * @param expression
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IQueryEvaluationEngine.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IQueryEvaluationEngine.java
index d38841f..bca1339 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IQueryEvaluationEngine.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IQueryEvaluationEngine.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -12,7 +12,7 @@
 
 import java.util.Map;
 
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 
 /**
  * / Evaluation Engine is used to evaluate acceleo expressions. The evaluation engine allows to register
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IValidationResult.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IValidationResult.java
index 21330a9..04b902c 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IValidationResult.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/IValidationResult.java
@@ -1,15 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Obeo - initial API and implementation
- *******************************************************************************/
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -25,7 +15,7 @@
 import java.util.Set;
 
 import org.eclipse.acceleo.query.ast.Expression;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.validation.type.IType;
 
 /**
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryBuilderEngine.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryBuilderEngine.java
index b7be5d7..1e69660 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryBuilderEngine.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryBuilderEngine.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -27,7 +27,6 @@
 import org.eclipse.acceleo.query.ast.Error;
 import org.eclipse.acceleo.query.ast.ErrorExpression;
 import org.eclipse.acceleo.query.parser.AstBuilderListener;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.Positions;
 import org.eclipse.acceleo.query.parser.QueryLexer;
 import org.eclipse.acceleo.query.parser.QueryParser;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryEvaluationEngine.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryEvaluationEngine.java
index bc0a09a..67f37a1 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryEvaluationEngine.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryEvaluationEngine.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -14,9 +14,9 @@
 
 import org.eclipse.acceleo.query.ast.Expression;
 import org.eclipse.acceleo.query.parser.AstEvaluator;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.AcceleoQueryEvaluationException;
 import org.eclipse.acceleo.query.runtime.EvaluationResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IQueryEvaluationEngine;
 
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryValidationEngine.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryValidationEngine.java
index d22c9cf..ee3ec3f 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryValidationEngine.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/QueryValidationEngine.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -13,9 +13,9 @@
 import java.util.Map;
 import java.util.Set;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.AstValidator;
 import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryValidationEngine;
 import org.eclipse.acceleo.query.runtime.IReadOnlyQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/ValidationResult.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/ValidationResult.java
index ea77e56..a99f969 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/ValidationResult.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/ValidationResult.java
@@ -1,15 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Obeo - initial API and implementation
- *******************************************************************************/
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -28,15 +18,14 @@
 import java.util.Set;
 
 import org.eclipse.acceleo.query.ast.Expression;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IValidationMessage;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
 import org.eclipse.acceleo.query.validation.type.IType;
 
 /**
- * Result of a
- * {@link org.eclipse.acceleo.query.runtime.IQueryValidationEngine#validate(String, java.util.Map) validation}
- * .
+ * Result of a {@link org.eclipse.acceleo.query.runtime.IQueryValidationEngine#validate(String, java.util.Map)
+ * validation}.
  * 
  * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
  */
diff --git a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/namespace/AbstractQualifiedNameService.java b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/namespace/AbstractQualifiedNameService.java
index 5ac9d54..6673fdd 100644
--- a/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/namespace/AbstractQualifiedNameService.java
+++ b/query/plugins/org.eclipse.acceleo.query/src/org/eclipse/acceleo/query/runtime/impl/namespace/AbstractQualifiedNameService.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -21,6 +21,8 @@
  * {@link IQualifiedNameLookupEngine#pushContext(String) push imports},
  * {@link IQualifiedNameLookupEngine#popContext(String) pop}.
  * 
+ * @param <O>
+ *            the origin type of the service
  * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
  */
 public abstract class AbstractQualifiedNameService<O> extends AbstractService<O> {
diff --git a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/parser/tests/BuildTest.java b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/parser/tests/BuildTest.java
index 4e67814..1903a77 100644
--- a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/parser/tests/BuildTest.java
+++ b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/parser/tests/BuildTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -44,7 +44,7 @@
 import org.eclipse.acceleo.query.ast.VarRef;
 import org.eclipse.acceleo.query.ast.VariableDeclaration;
 import org.eclipse.acceleo.query.parser.AstBuilderListener;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.Query;
 import org.eclipse.acceleo.query.runtime.impl.QueryBuilderEngine;
diff --git a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/parser/tests/PositionsTests.java b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/parser/tests/PositionsTests.java
index 82ab012..26f39e2 100644
--- a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/parser/tests/PositionsTests.java
+++ b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/parser/tests/PositionsTests.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2020 Obeo.
+ * Copyright (c) 2020, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -12,7 +12,7 @@
 
 import org.eclipse.acceleo.query.ast.Or;
 import org.eclipse.acceleo.query.ast.VarRef;
-import org.eclipse.acceleo.query.parser.AstResult;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.Query;
 import org.eclipse.acceleo.query.runtime.impl.QueryBuilderEngine;
diff --git a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/AnyServicesAstValidationTest.java b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/AnyServicesAstValidationTest.java
index caad45f..bd59a5d 100644
--- a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/AnyServicesAstValidationTest.java
+++ b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/AnyServicesAstValidationTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -14,8 +14,8 @@
 import java.util.Iterator;
 import java.util.Set;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.tests.ValidationTest;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
 import org.eclipse.acceleo.query.runtime.ValidationMessageLevel;
 import org.eclipse.acceleo.query.validation.type.IType;
diff --git a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/BooleanServicesAstValidationTest.java b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/BooleanServicesAstValidationTest.java
index bb42ebb..fd2aacc 100644
--- a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/BooleanServicesAstValidationTest.java
+++ b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/BooleanServicesAstValidationTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -14,8 +14,8 @@
 import java.util.Iterator;
 import java.util.Set;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.tests.ValidationTest;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
 import org.eclipse.acceleo.query.runtime.ValidationMessageLevel;
 import org.eclipse.acceleo.query.validation.type.IType;
diff --git a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/CollectionServicesAstValidationTest.java b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/CollectionServicesAstValidationTest.java
index 336c15a..ce37157 100644
--- a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/CollectionServicesAstValidationTest.java
+++ b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/CollectionServicesAstValidationTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -17,8 +17,8 @@
 import java.util.Map;
 import java.util.Set;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.tests.ValidationTest;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
 import org.eclipse.acceleo.query.runtime.ValidationMessageLevel;
 import org.eclipse.acceleo.query.validation.type.IType;
diff --git a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/CollectionServicesTest.java b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/CollectionServicesTest.java
index 044ea94..543f6ea 100644
--- a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/CollectionServicesTest.java
+++ b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/CollectionServicesTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -24,9 +24,9 @@
 
 import org.eclipse.acceleo.query.ast.Lambda;
 import org.eclipse.acceleo.query.parser.AstEvaluator;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.EvaluationResult;
 import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IQueryEvaluationEngine;
 import org.eclipse.acceleo.query.runtime.Query;
diff --git a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/ComparableServicesAstValidationTest.java b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/ComparableServicesAstValidationTest.java
index a53323d..3c652e4 100644
--- a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/ComparableServicesAstValidationTest.java
+++ b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/ComparableServicesAstValidationTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -13,8 +13,8 @@
 import java.util.Collections;
 import java.util.Set;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.tests.ValidationTest;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
 import org.eclipse.acceleo.query.runtime.ValidationMessageLevel;
 import org.eclipse.acceleo.query.validation.type.IType;
diff --git a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/EObjectServicesPerformanceTest.java b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/EObjectServicesPerformanceTest.java
index 51a9e56..5bc582d 100644
--- a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/EObjectServicesPerformanceTest.java
+++ b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/services/tests/EObjectServicesPerformanceTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2016 Obeo.
+ * Copyright (c) 2016, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -21,9 +21,9 @@
 import java.util.Map;
 import java.util.concurrent.TimeUnit;
 
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.runtime.EvaluationResult;
 import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
 import org.eclipse.acceleo.query.runtime.IQueryEvaluationEngine;
 import org.eclipse.acceleo.query.runtime.Query;
diff --git a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/tests/AcceleoQueryInterpreter.java b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/tests/AcceleoQueryInterpreter.java
index 88b7fc4..38de734 100644
--- a/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/tests/AcceleoQueryInterpreter.java
+++ b/query/tests/org.eclipse.acceleo.query.tests/src/org/eclipse/acceleo/query/tests/AcceleoQueryInterpreter.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2015 Obeo.
+ * Copyright (c) 2015, 2021 Obeo.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -18,9 +18,9 @@
 import java.util.logging.Logger;
 
 import org.eclipse.acceleo.query.parser.AstEvaluator;
-import org.eclipse.acceleo.query.parser.AstResult;
 import org.eclipse.acceleo.query.parser.AstValidator;
 import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine;
+import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
 import org.eclipse.acceleo.query.runtime.IService;
 import org.eclipse.acceleo.query.runtime.IValidationMessage;
 import org.eclipse.acceleo.query.runtime.IValidationResult;
diff --git a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/expressionStatement/invalidAQLExpression/invalidAQLExpression-expected-runtimeMessages.txt b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/expressionStatement/invalidAQLExpression/invalidAQLExpression-expected-runtimeMessages.txt
index 15c9924..b2b2bb6 100644
--- a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/expressionStatement/invalidAQLExpression/invalidAQLExpression-expected-runtimeMessages.txt
+++ b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/expressionStatement/invalidAQLExpression/invalidAQLExpression-expected-runtimeMessages.txt
@@ -1,5 +1,5 @@
  (null 0 4) null[]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EPackage)' service[null]
diff --git a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/expressionStatement/templateCallWithPostErrorExpression/templateCallWithPostErrorExpression-expected-runtimeMessages.txt b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/expressionStatement/templateCallWithPostErrorExpression/templateCallWithPostErrorExpression-expected-runtimeMessages.txt
index 0004d01..af6a093 100644
--- a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/expressionStatement/templateCallWithPostErrorExpression/templateCallWithPostErrorExpression-expected-runtimeMessages.txt
+++ b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/expressionStatement/templateCallWithPostErrorExpression/templateCallWithPostErrorExpression-expected-runtimeMessages.txt
@@ -1,6 +1,6 @@
  (null 0 4) null[]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(self, anydsl
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(self, anydsl
 ), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(java.lang.String)' service[null]
diff --git a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/forStatement/forStatementNull/forStatementNull-expected-runtimeMessages.txt b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/forStatement/forStatementNull/forStatementNull-expected-runtimeMessages.txt
index 2bf721e..be39c7f 100644
--- a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/forStatement/forStatementNull/forStatementNull-expected-runtimeMessages.txt
+++ b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/forStatement/forStatementNull/forStatementNull-expected-runtimeMessages.txt
@@ -1,2 +1,2 @@
  (null 0 2) null[]
-   (org.eclipse.acceleo.aql 0 2) The expression should not be null[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) The expression should not be null[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
diff --git a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/forStatement/forStatementWithSeparatorinvalidExpression/forStatementWithSeparatorinvalidExpression-expected-runtimeMessages.txt b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/forStatement/forStatementWithSeparatorinvalidExpression/forStatementWithSeparatorinvalidExpression-expected-runtimeMessages.txt
index 9665a5c..6cf0211 100644
--- a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/forStatement/forStatementWithSeparatorinvalidExpression/forStatementWithSeparatorinvalidExpression-expected-runtimeMessages.txt
+++ b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/forStatement/forStatementWithSeparatorinvalidExpression/forStatementWithSeparatorinvalidExpression-expected-runtimeMessages.txt
@@ -1,89 +1,89 @@
  (null 0 4) null[]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: MultiNamedElement) (instanceClassName: null) (abstract: true, interface: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: MultiNamedElement) (instanceClassName: null) (abstract: true, interface: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: NamedElement) (instanceClassName: null) (abstract: true, interface: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: NamedElement) (instanceClassName: null) (abstract: true, interface: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Producer) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Producer) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Adress) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Adress) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Company) (instanceClassName: null) (abstract: true, interface: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Company) (instanceClassName: null) (abstract: true, interface: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: ProductionCompany) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: ProductionCompany) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Restaurant) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Restaurant) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Chef) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Chef) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Recipe) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Recipe) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Food) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Food) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Source) (instanceClassName: null) (abstract: true, interface: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Source) (instanceClassName: null) (abstract: true, interface: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Plant) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Plant) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Animal) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: Animal) (instanceClassName: null) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Color) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Color) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EEnum)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Caliber) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Caliber) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EEnum)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Group) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Group) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EEnum)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Continent) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Continent) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EEnum)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Kind) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Kind) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EEnum)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Part) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EEnumImpl@00000000 (name: Part) (instanceClassName: null) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EEnum)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EDataTypeImpl@00000000 (name: CountryData) (instanceClassName: anydsl.Country) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EDataTypeImpl@00000000 (name: CountryData) (instanceClassName: anydsl.Country) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EDataType)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EDataTypeImpl@00000000 (name: SingleString) (instanceClassName: java.lang.String) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EDataTypeImpl@00000000 (name: SingleString) (instanceClassName: java.lang.String) (serializable: true)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EDataType)' service[null]
-   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 ]
+   (org.eclipse.acceleo.aql 0 4) AQL parsing issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 ]
      (org.eclipse.acceleo.query 0 4) missing feature access or service call[org.eclipse.acceleo.query.ast.impl.ErrorCallImpl@00000000 (serviceName: aqlFeatureAccess, type: CALLORAPPLY, missingEndParenthesis: false)]
-   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: EStringToRecipeMap) (instanceClassName: java.util.Map$Entry) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) AQL evaluation issue[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myVariable, org.eclipse.emf.ecore.impl.EClassImpl@00000000 (name: EStringToRecipeMap) (instanceClassName: java.util.Map$Entry) (abstract: false, interface: false)), (myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
      (org.eclipse.acceleo.query 0 2) Couldn't find the 'aqlFeatureAccess(EClassifier=EClass)' service[null]
diff --git a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementElseIfNotBoolean/ifStatementElseIfNotBoolean-expected-runtimeMessages.txt b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementElseIfNotBoolean/ifStatementElseIfNotBoolean-expected-runtimeMessages.txt
index a7da616..d6d35c6 100644
--- a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementElseIfNotBoolean/ifStatementElseIfNotBoolean-expected-runtimeMessages.txt
+++ b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementElseIfNotBoolean/ifStatementElseIfNotBoolean-expected-runtimeMessages.txt
@@ -1,2 +1,2 @@
  (null 0 4) null[]
-   (org.eclipse.acceleo.aql 0 4) The expression must be evaluated to a boolean not: [org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 4) The expression must be evaluated to a boolean not: [org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
diff --git a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementSecondElseIfNotBoolean/ifStatementSecondElseIfNotBoolean-expected-runtimeMessages.txt b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementSecondElseIfNotBoolean/ifStatementSecondElseIfNotBoolean-expected-runtimeMessages.txt
index a7da616..d6d35c6 100644
--- a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementSecondElseIfNotBoolean/ifStatementSecondElseIfNotBoolean-expected-runtimeMessages.txt
+++ b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementSecondElseIfNotBoolean/ifStatementSecondElseIfNotBoolean-expected-runtimeMessages.txt
@@ -1,2 +1,2 @@
  (null 0 4) null[]
-   (org.eclipse.acceleo.aql 0 4) The expression must be evaluated to a boolean not: [org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 4) The expression must be evaluated to a boolean not: [org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
diff --git a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementThenNotBoolean/ifStatementThenNotBoolean-expected-runtimeMessages.txt b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementThenNotBoolean/ifStatementThenNotBoolean-expected-runtimeMessages.txt
index a7da616..d6d35c6 100644
--- a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementThenNotBoolean/ifStatementThenNotBoolean-expected-runtimeMessages.txt
+++ b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/ifStatement/ifStatementThenNotBoolean/ifStatementThenNotBoolean-expected-runtimeMessages.txt
@@ -1,2 +1,2 @@
  (null 0 4) null[]
-   (org.eclipse.acceleo.aql 0 4) The expression must be evaluated to a boolean not: [org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 4) The expression must be evaluated to a boolean not: [org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
diff --git a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/textStatement/textStatement_InvalidCharset/textStatement_InvalidCharset-expected-runtimeMessages.txt b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/textStatement/textStatement_InvalidCharset/textStatement_InvalidCharset-expected-runtimeMessages.txt
index 76692a3..9b78be5 100644
--- a/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/textStatement/textStatement_InvalidCharset/textStatement_InvalidCharset-expected-runtimeMessages.txt
+++ b/tests/org.eclipse.acceleo.aql.tests/resources/evaluation/textStatement/textStatement_InvalidCharset/textStatement_InvalidCharset-expected-runtimeMessages.txt
@@ -1,2 +1,2 @@
  (null 0 2) null[]
-   (org.eclipse.acceleo.aql 0 2) InvalidCharset fallback to UTF-8[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.parser.AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]
+   (org.eclipse.acceleo.aql 0 2) InvalidCharset fallback to UTF-8[org.eclipse.acceleo.impl.ExpressionImpl@00000000 (ast: org.eclipse.acceleo.query.runtime.IQueryBuilderEngine$AstResult@00000000 [(myParam, org.eclipse.emf.ecore.impl.EPackageImpl@00000000 (name: anydsl) (nsURI: http://www.eclipse.org/acceleo/anydsl, nsPrefix: anydsl)), ]]