Index: tmp/org.txm.core/src/java/org/txm/objects/Edition.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Edition.java	(revision 1985)
+++ tmp/org.txm.core/src/java/org/txm/objects/Edition.java	(revision 1986)
@@ -86,7 +86,7 @@
 		this.setVisible(false);
 		this.internalPersistable = true;
 	}
-
+	
 	/**
 	 * Gets the text.
 	 *
Index: tmp/org.txm.core/src/java/org/txm/objects/Workspace.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Workspace.java	(revision 1985)
+++ tmp/org.txm.core/src/java/org/txm/objects/Workspace.java	(revision 1986)
@@ -28,44 +28,23 @@
 package org.txm.objects;
 
 import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStreamWriter;
-import java.lang.reflect.Constructor;
-import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.List;
 
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
 import org.eclipse.core.resources.IProject;
 import org.eclipse.core.resources.IProjectDescription;
 import org.eclipse.core.resources.IWorkspace;
 import org.eclipse.core.resources.IWorkspaceRoot;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IPath;
 import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
 import org.eclipse.osgi.util.NLS;
-import org.osgi.framework.Bundle;
-import org.txm.PostTXMHOMEInstallationStep;
 import org.txm.Toolbox;
 import org.txm.core.messages.TXMCoreMessages;
-import org.txm.core.preferences.TBXPreferences;
-import org.txm.core.preferences.TXMPreferences;
-import org.txm.core.results.Parameter;
 import org.txm.core.results.TXMParameters;
 import org.txm.core.results.TXMResult;
-import org.txm.utils.DeleteDir;
 import org.txm.utils.LogMonitor;
-import org.txm.utils.io.FileCopy;
 import org.txm.utils.logger.Log;
-import org.txm.utils.xml.DomUtils;
-import org.w3c.dom.Document;
 import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
 
 /**
  * The Class Workspace: manages the TXM corpora in the $TXMHOME/corpora directory
@@ -258,13 +237,13 @@
 
 			// load the project from the project .settings directory
 			IWorkspace rcpWorkspace = ResourcesPlugin.getWorkspace();
-			
+
 			//rcpWorkspace.getRoot().refreshLocal(1, new LogMonitor());
-			
+
 			IProjectDescription description = rcpWorkspace.loadProjectDescription(new Path(binCorpusDir.getAbsolutePath()+"/.project"));
 			description.setLocation(new Path(binCorpusDir.getAbsolutePath()));
 			IProject rcpProject = rcpWorkspace.getRoot().getProject(description.getName());
-			
+
 			if (!rcpProject.exists()) {
 				rcpProject.create(description, new LogMonitor());
 			}
@@ -436,11 +415,14 @@
 			}
 		}
 
-		for (TXMResult corpus : this.getDeepChildren(CorpusBuild.class)) {
-			CorpusBuild cb = (CorpusBuild)corpus;
-			if (!cb.compute(false)) {
-				System.out.println("Deleting duplicated corpus: "+cb+" of "+cb.getProject());
-				cb.delete();
+		// force the initialization of CorpusBuilds
+		for (TXMResult project : this.getChildren(Project.class)) {
+			for (TXMResult corpus : project.getChildren(CorpusBuild.class)) {
+				CorpusBuild cb = (CorpusBuild)corpus;
+				if (!cb.compute(false)) {
+					System.out.println("Deleting duplicated corpus: "+cb+" of "+cb.getProject());
+					cb.delete();
+				}
 			}
 		}
 	}
Index: tmp/org.txm.core/src/java/org/txm/objects/Project.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Project.java	(revision 1985)
+++ tmp/org.txm.core/src/java/org/txm/objects/Project.java	(revision 1986)
@@ -386,13 +386,13 @@
 
 		//TXMPreferences.dump();
 
+		HashMap<String, TXMResult> loaded = new HashMap<String, TXMResult>();
 		ArrayList<String> errors = new ArrayList<String>();
 		for (String resultNodePath : resultNodePaths) {
 
 			try {
 				Preferences node = TXMPreferences.preferencesRootNode.node(resultNodePath);
 
-
 				String className = node.get("class", ""); //$NON-NLS-1$ //$NON-NLS-2$
 
 				// Skip Project object
@@ -413,10 +413,12 @@
 				Log.fine("\nProject.loadResults(): loading from result node qualifier " + resultNodePath);
 				//Log.finest("Toolbox.initialize(): class = " + TXMPreferences.getString("class", nodeQualifier));
 				//TXMPreferences.dump();
-				TXMResult result = TXMResult.getResult(this, resultNodePath);
-				if (result != null) { // result already restored
-					continue;
-				}
+				
+//				//TODO see if necessary to prevent errors
+//				TXMResult result2 = TXMResult.getResult(this, resultNodePath);
+//				if (result2 != null) { // result already restored
+//					continue;
+//				}
 				Log.fine("Project.loadResults(): class = " + className); //$NON-NLS-1$
 				//					Log.finest("Toolbox.initialize(): parent_uuid = " + TXMPreferences.getString(TXMPreferences.PARENT_UUID, nodeQualifier));
 				Log.fine("Project.loadResults(): parent_uuid = " + node.get(TXMPreferences.PARENT_PARAMETERS_NODE_PATH, "")); //$NON-NLS-1$
@@ -435,9 +437,17 @@
 				}
 
 				Class<?> cl = bundle.loadClass(className);
-				Constructor<?> cons = cl.getConstructor(String.class);
-				result = (TXMResult) cons.newInstance(resultNodePath);
-
+				
+//				TXMResult parent = loaded.get(node.get(TXMPreferences.PARENT_PARAMETERS_NODE_PATH, null));
+//				TXMResult result = null;
+//				if (parent == null) {
+					Constructor<?> cons = cl.getConstructor(String.class);
+					TXMResult result = (TXMResult) cons.newInstance(resultNodePath);
+//				} else {
+//					Constructor<?> cons = cl.getConstructor(String.class, TXMResult.class);
+//					result = (TXMResult) cons.newInstance(resultNodePath, parent);
+//				}
+				loaded.put(resultNodePath, result);
 				// not an internal persistence (eg. corpus or partition)
 				if (!result.isInternalPersistable())	{
 					result.setUserPersistable(true);	
