diff --git a/LINQ/LINQ/Interpreter/Query/AggregateExpression.vb b/LINQ/LINQ/Interpreter/Query/AggregateExpression.vb
index ac67f26..f44450d 100644
--- a/LINQ/LINQ/Interpreter/Query/AggregateExpression.vb
+++ b/LINQ/LINQ/Interpreter/Query/AggregateExpression.vb
@@ -1,6 +1,6 @@
Namespace Interpreter.Query
- Public Class AggregateExpression
+ Public Class AggregateExpression : Inherits QueryExpression
End Class
End Namespace
\ No newline at end of file
diff --git a/LINQ/LINQ/Interpreter/Query/DataSoruce.vb b/LINQ/LINQ/Interpreter/Query/DataSoruce.vb
new file mode 100644
index 0000000..094ba73
--- /dev/null
+++ b/LINQ/LINQ/Interpreter/Query/DataSoruce.vb
@@ -0,0 +1,25 @@
+Imports LINQ.Interpreter.Expressions
+Imports LINQ.Runtime
+
+Namespace Interpreter.Query
+
+ Public MustInherit Class DataSet
+
+ Public MustOverride Function PopulatesData(source As Object, driver As SymbolReference, env As Environment) As IEnumerable(Of Object)
+
+ End Class
+
+ Public Class SymbolIterator : Inherits DataSet
+
+ Public Overrides Function PopulatesData(source As Object, driver As SymbolReference, env As Environment) As IEnumerable(Of Object)
+ Throw New NotImplementedException()
+ End Function
+ End Class
+
+ Public Class URIIteratorDriver : Inherits DataSet
+
+ Public Overrides Function PopulatesData(source As Object, driver As SymbolReference, env As Environment) As IEnumerable(Of Object)
+ Throw New NotImplementedException()
+ End Function
+ End Class
+End Namespace
\ No newline at end of file
diff --git a/LINQ/LINQ/Interpreter/Query/ProjectionExpression.vb b/LINQ/LINQ/Interpreter/Query/ProjectionExpression.vb
index 3b2da32..3768195 100644
--- a/LINQ/LINQ/Interpreter/Query/ProjectionExpression.vb
+++ b/LINQ/LINQ/Interpreter/Query/ProjectionExpression.vb
@@ -1,6 +1,6 @@
Namespace Interpreter.Query
- Public Class ProjectionExpression
+ Public Class ProjectionExpression : Inherits QueryExpression
End Class
End Namespace
\ No newline at end of file
diff --git a/LINQ/LINQ/Interpreter/Query/Query.vb b/LINQ/LINQ/Interpreter/Query/Query.vb
new file mode 100644
index 0000000..272cb4c
--- /dev/null
+++ b/LINQ/LINQ/Interpreter/Query/Query.vb
@@ -0,0 +1,6 @@
+Namespace Interpreter.Query
+
+ Public MustInherit Class QueryExpression
+
+ End Class
+End Namespace
\ No newline at end of file
diff --git a/LINQ/LINQ/LINQ.vbproj b/LINQ/LINQ/LINQ.vbproj
index 0bb959a..8efec25 100644
--- a/LINQ/LINQ/LINQ.vbproj
+++ b/LINQ/LINQ/LINQ.vbproj
@@ -90,6 +90,8 @@
+
+