Standalone ANT-Ivy works with both XML and EMF models
diff --git a/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/.gitignore b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/.gitignore
index e0b84c7..b3f6993 100644
--- a/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/.gitignore
+++ b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/.gitignore
@@ -1 +1,2 @@
-ivy
\ No newline at end of file
+ivy
+lib
\ No newline at end of file
diff --git a/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/build.xml b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/build.xml
index 4c83f65..b2c3cb5 100644
--- a/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/build.xml
+++ b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/build.xml
@@ -6,8 +6,14 @@
     <property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar"/>
     
     <target name="go" depends="install-epsilon">
+        <epsilon.emf.loadModel name="Library" modelfile="library.model" metamodelfile="library.ecore"/>
+        <epsilon.xml.loadModel name="Tree" file="tree.xml"/>
+        
         <epsilon.eol>
-            "Hello Epsilon!".println();
+            Tree!t_tree.all.println();
+            Library!Writer.all.println();
+            <model ref="Tree"/>
+            <model ref="Library"/>
         </epsilon.eol>
     </target>
 
@@ -26,15 +32,43 @@
     </target>
 
     <target name="install-epsilon" depends="install-ivy">
-        <ivy:cleancache/>
+        <!--ivy:cleancache/-->
         <ivy:settings file="ivysettings.xml" />
-        <ivy:cachepath organisation="org.eclipse.epsilon" module="org.eclipse.epsilon.workflow" revision="${epsilon.version}"
-                       pathid="lib.path.id" inline="true"/>
-        <taskdef classpathref="lib.path.id" resource="org/eclipse/epsilon/workflow/tasks/tasks.xml"/>
-        <!--ivy:cachepath organisation="org.eclipse.epsilon" module="org.eclipse.epsilon.workflow.emf" revision="${epsilon.version}"
+        <!--ivy:cachepath organisation="org.eclipse.epsilon" module="org.eclipse.epsilon.workflow" revision="${epsilon.version}"
                        pathid="lib.path.id" inline="true"/-->
-                       
+
+        <ivy:retrieve conf="binaries" pattern="lib/[conf]/[artifact](-[classifier]).[ext]"/>
+
+        <path id="lib.path">
+            <fileset dir="lib/binaries" includes="*.jar"/>
+        </path>
+
+        <!--taskdef resource="org/eclipse/epsilon/workflow/tasks/tasks.xml" classpathref="lib.path" loaderref="lib.path.loader"/-->
+
+        <taskdef name="epsilon.eol" classname="org.eclipse.epsilon.workflow.tasks.EolTask" classpathref="lib.path" loaderref="lib.path.loader"/>
+        <taskdef name="epsilon.xml.loadModel" classname="org.eclipse.epsilon.workflow.tasks.xml.LoadXmlModel" classpathref="lib.path" loaderref="lib.path.loader"/>
+        <taskdef name="epsilon.emf.loadModel" classname="org.eclipse.epsilon.workflow.tasks.emf.LoadEmfModelTask" classpathref="lib.path" loaderref="lib.path.loader"/>
+        <!--taskdef name="epsilon.emf.loadRegisteredMetamodel" classname="org.eclipse.epsilon.workflow.tasks.emf.LoadRegisteredMetaModelTask" classpathref="lib.path.id"/>
+        <taskdef name="epsilon.emf.loadXmlModel" classname="org.eclipse.epsilon.workflow.tasks.emf.LoadXmlModelTask" classpathref="lib.path.id"/-->
+
+        <!--ivy:cachepath organisation="org.eclipse.epsilon" module="org.eclipse.epsilon.workflow" revision="${epsilon.version}" pathid="lib.path.id" inline="true"/>
+
+        <taskdef classpathref="lib.path.id" resource="org/eclipse/epsilon/workflow/tasks/tasks.xml"/-->
+
+
+        <!--
+        <ivy:cachepath organisation="org.eclipse.epsilon" module="org.eclipse.epsilon.workflow.emf" revision="${epsilon.version}"
+                       pathid="lib.path.id" inline="true"/>
+
+        <taskdef name="epsilon.eol" classname="org.eclipse.epsilon.workflow.tasks.EolTask" classpathref="lib.path.id"/>
+        <taskdef name="epsilon.xml.loadModel" classname="org.eclipse.epsilon.workflow.tasks.xml.LoadXmlModel" classpathref="lib.path.id"/>
         
+
+        <taskdef name="epsilon.emf.loadModel" classname="org.eclipse.epsilon.workflow.tasks.emf.LoadEmfModelTask" classpathref="lib.path.id"/>
+        <taskdef name="epsilon.emf.loadRegisteredMetamodel" classname="org.eclipse.epsilon.workflow.tasks.emf.LoadRegisteredMetaModelTask" classpathref="lib.path.id"/>
+        <taskdef name="epsilon.emf.loadXmlModel" classname="org.eclipse.epsilon.workflow.tasks.emf.LoadXmlModelTask" classpathref="lib.path.id"/>
+        -->
+
     </target>
 
 </project>
diff --git a/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/ivy.xml b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/ivy.xml
new file mode 100644
index 0000000..1e301ef
--- /dev/null
+++ b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/ivy.xml
@@ -0,0 +1,10 @@
+<ivy-module version="2.0">
+    <info organisation="" module="" />
+    <configurations>
+        <conf name="binaries" />
+    </configurations>
+    <dependencies>
+        <!--dependency org="org.eclipse.epsilon" name="org.eclipse.epsilon.workflow" rev="2.3.0-SNAPSOT" conf="binaries->default" /-->
+        <dependency org="org.eclipse.epsilon" name="org.eclipse.epsilon.workflow.emf" rev="2.3.0-SNAPSHOT" conf="binaries->default" />
+    </dependencies>
+</ivy-module>
\ No newline at end of file
diff --git a/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/library.ecore b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/library.ecore
new file mode 100644
index 0000000..297a323
--- /dev/null
+++ b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/library.ecore
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="library" nsURI="library" nsPrefix="">
+  <eClassifiers xsi:type="ecore:EClass" name="Library">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="writers" upperBound="-1"
+        eType="#//Writer" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="books" upperBound="-1"
+        eType="#//Book" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Writer">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="books" upperBound="-1"
+        eType="#//Book" eOpposite="#//Book/author"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Book">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="pages" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
+        defaultValueLiteral="100"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="#//BookCategory"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="author" lowerBound="1"
+        eType="#//Writer" eOpposite="#//Writer/books"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="BookCategory">
+    <eLiterals name="Mystery"/>
+    <eLiterals name="ScienceFiction" value="1"/>
+    <eLiterals name="Biography" value="2"/>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/library.emf b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/library.emf
new file mode 100644
index 0000000..82d6c8c
--- /dev/null
+++ b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/library.emf
@@ -0,0 +1,25 @@
+@namespace(uri="library", prefix="")
+package library;
+
+class Library {
+   val Writer[*] writers;
+   val Book[*] books;
+}
+
+class Writer {
+   attr String name;
+   ref Book[*]#author books;
+}
+
+class Book {
+   attr String title;
+   attr int pages = 100;
+   attr BookCategory category;
+   ref Writer[1]#books author;
+}
+
+enum BookCategory {
+   Mystery;
+   ScienceFiction;
+   Biography;
+}
\ No newline at end of file
diff --git a/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/library.model b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/library.model
new file mode 100644
index 0000000..bddc1ba
--- /dev/null
+++ b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/library.model
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="ASCII"?>
+<Library xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns="library" xmi:id="_A1Jr8EpMEeOg99lxwZeUmQ">
+  <writers xmi:id="_QF9jkEpMEeOg99lxwZeUmQ" name="Agatha Christie" books="_CAePkEpMEeOg99lxwZeUmQ"/>
+  <books xmi:id="_CAePkEpMEeOg99lxwZeUmQ" title="Endless Night" pages="224" author="_QF9jkEpMEeOg99lxwZeUmQ"/>
+</Library>
diff --git a/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/tree.xml b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/tree.xml
new file mode 100644
index 0000000..7770cfe
--- /dev/null
+++ b/examples/org.eclipse.epsilon.examples.workflow.standalone.ivy/tree.xml
@@ -0,0 +1 @@
+<tree/>
\ No newline at end of file