Index: tmp/org.txm.rcp/src/main/java/org/txm/rcp/editors/imports/sections/EditionSection.java
===================================================================
--- tmp/org.txm.rcp/src/main/java/org/txm/rcp/editors/imports/sections/EditionSection.java	(revision 1134)
+++ tmp/org.txm.rcp/src/main/java/org/txm/rcp/editors/imports/sections/EditionSection.java	(revision 1135)
@@ -236,7 +236,7 @@
 			imageDirectoryText.setEnabled(buildFacsEditionCheckButton.getSelection());
 
 			String imageDirectory = edition_params.getImagesDirectory(); //$NON-NLS-1$
-			if (imageDirectoryText != null)
+			if (imageDirectoryText != null && imageDirectory != null)
 				imageDirectoryText.setText(imageDirectory);
 		}
 	}
Index: tmp/org.txm.partition.rcp/src/org/txm/partition/rcp/editors/PartitionDimensionsEditor.java
===================================================================
--- tmp/org.txm.partition.rcp/src/org/txm/partition/rcp/editors/PartitionDimensionsEditor.java	(revision 1134)
+++ tmp/org.txm.partition.rcp/src/org/txm/partition/rcp/editors/PartitionDimensionsEditor.java	(revision 1135)
@@ -39,6 +39,8 @@
 		this.sortByPartSize.setToolTipText(PartitionUIMessages.PreferencesPage_DIMENSIONS_SORT_BY_PARTS_SIZE);
 		
 		this.sortByPartSize.addSelectionListener(new ComputeSelectionListener(this));
+		
+		
 	}
 
 
Index: tmp/org.txm.core/src/java/org/txm/objects/Project.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Project.java	(revision 1134)
+++ tmp/org.txm.core/src/java/org/txm/objects/Project.java	(revision 1135)
@@ -63,6 +63,7 @@
 import org.txm.core.results.Parameter;
 import org.txm.core.results.TXMParameters;
 import org.txm.core.results.TXMResult;
+import org.txm.importer.xtz.ImportKeys;
 import org.txm.stat.utils.ConsoleProgressBar;
 import org.txm.utils.logger.Log;
 import org.txm.utils.zip.Zip;
@@ -808,12 +809,6 @@
 			rcpProject.move(destination, true, null);
 		}
 
-		// clear all children
-		while (getChildren().size() > 0) {
-			TXMResult child = getChildren().get(0);
-			child.delete();
-		}
-		
 		ImportEngines engines = Toolbox.getImportEngines();
 		System.out.println("RUNNING IMPORT MODULE WITH NAME="+getImportModuleName());
 		//File scriptfile = new File(Toolbox.getTxmHomePath(), "scripts/groovy/user/org/txm/scripts/importer/"+importName+"/"+importName+"Loader.groovy"); //$NON-NLS-1$
@@ -995,6 +990,11 @@
 		return params.get(name, defaultvalue);
 	}
 	
+	public String getTokenizerWordElement() {
+		IEclipsePreferences params = this.getPreferencesScope().getNode("Tokenizer");
+		return params.get("wordelement", "w");
+	}
+	
 	public boolean getDoTokenizerStep() {
 		IEclipsePreferences params = this.getPreferencesScope().getNode("Tokenizer");
 		return params.getBoolean("doTokenizeStep", true);
@@ -1052,7 +1052,7 @@
 		return "project/" + this.rcpProject.getName() + "/";
 	}
 
-	public Collection<? extends CorpusBuild> getCorpora() {
+	public List<? extends CorpusBuild> getCorpora() {
 		ArrayList<CorpusBuild> l = new ArrayList<>();
 		for (TXMResult r : getChildren()) {
 			if (r instanceof CorpusBuild) {
@@ -1061,4 +1061,12 @@
 		}
 		return l;
 	}
+
+	public boolean getDoUpdate() {
+		return this.getPreferencesScope().getNode("import").getBoolean(ImportKeys.UPDATECORPUS, false);
+	}
+	
+	public boolean getDoMultiThread() {
+		return this.getPreferencesScope().getNode("import").getBoolean(ImportKeys.MULTITHREAD, false);
+	}
 }
Index: tmp/org.txm.core/src/java/org/txm/importer/xtz/ImportModule.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/importer/xtz/ImportModule.java	(revision 1134)
+++ tmp/org.txm.core/src/java/org/txm/importer/xtz/ImportModule.java	(revision 1135)
@@ -61,7 +61,7 @@
 		return updateCorpus;
 	}
 
-	protected void init(Project p) {
+	public void init(Project p) {
 		this.project = p;
 		corpusName = project.getName();
 		//this.debug = "true".equals(project.getKeyValueParameters().get(ImportKeys.DEBUG));
@@ -69,8 +69,8 @@
 		if (Log.getLevel().intValue() < Level.WARNING.intValue()) {
 			debug = true;
 		}
-		this.multithread = project.getPreferencesScope().getNode("import").getBoolean(ImportKeys.MULTITHREAD, false);
-		this.updateCorpus = project.getPreferencesScope().getNode("import").getBoolean(ImportKeys.UPDATECORPUS, false);
+		this.multithread = project.getDoMultiThread();
+		this.updateCorpus = project.getDoUpdate();
 
 		
 		this.sourceDirectory = project.getSrcdir();
Index: tmp/org.txm.groovy.core/src/java/org/txm/groovy/core/GroovyScriptedImportEngine.java
===================================================================
--- tmp/org.txm.groovy.core/src/java/org/txm/groovy/core/GroovyScriptedImportEngine.java	(revision 1134)
+++ tmp/org.txm.groovy.core/src/java/org/txm/groovy/core/GroovyScriptedImportEngine.java	(revision 1135)
@@ -1,6 +1,8 @@
 package org.txm.groovy.core;
 
 import java.io.File;
+import java.util.Collection;
+import java.util.List;
 import java.util.logging.Level;
 
 import org.eclipse.core.runtime.IProgressMonitor;
@@ -11,7 +13,11 @@
 import org.txm.core.engines.Engine;
 import org.txm.core.engines.EngineType;
 import org.txm.core.engines.ScriptedImportEngine;
+import org.txm.core.results.TXMResult;
+import org.txm.objects.CorpusBuild;
+import org.txm.objects.Edition;
 import org.txm.objects.Project;
+import org.txm.objects.Text;
 import org.txm.searchengine.cqp.CQPSearchEngine;
 import org.txm.tokenizer.TokenizerClasses;
 import org.txm.utils.ExecTimer;
@@ -49,10 +55,36 @@
 					return Status.CANCEL_STATUS;
 				}
 			}
+			
+			if (project.getDoUpdate()) {
+				// drop CorpusBuild and Editions
+				List<? extends CorpusBuild> corpora = project.getCorpora();
+				while (corpora.size() > 0) {
+					CorpusBuild c = corpora.get(0);
+					c.delete();
+				}
+				
+				List<Text> texts = project.getTexts();
+				for (Text t : texts) {
+					List<Edition> editions = t.getEditions();
+					while (editions.size() > 0) {
+						Edition ed = editions.get(0);
+						ed.delete();
+					}
+				}
+				
+			} else {
+				// clear all children
+				while (project.getChildren().size() > 0) {
+					TXMResult child = project.getChildren().get(0);
+					child.delete();
+				}
 
+			}
+
 			// the binary directory which is going to be created
 
-			final File basedir = project.getProjectDirectory();
+//			final File basedir = project.getProjectDirectory();
 //			final File tempBinDirectory = new File(basedir.getAbsolutePath()+"_temp"); //$NON-NLS-1$
 //			final File errorBinDirectory = new File(basedir.getAbsolutePath()+"_error"); //$NON-NLS-1$
 //			if (tempBinDirectory.exists()) DeleteDir.deleteDirectory(tempBinDirectory);
Index: tmp/org.txm.groovy.core/src/groovy/org/txm/scripts/importer/xtz/XTZImporter.groovy
===================================================================
--- tmp/org.txm.groovy.core/src/groovy/org/txm/scripts/importer/xtz/XTZImporter.groovy	(revision 1134)
+++ tmp/org.txm.groovy.core/src/groovy/org/txm/scripts/importer/xtz/XTZImporter.groovy	(revision 1135)
@@ -21,7 +21,7 @@
 import org.xml.sax.XMLReader
 import org.txm.utils.xml.DomUtils
 import org.txm.metadatas.Metadatas
-import org.txm.objects.BaseParameters
+import org.txm.objects.*
 import org.txm.importer.scripts.xmltxm.Xml2Ana
 import org.txm.stat.utils.ConsoleProgressBar
 import org.txm.utils.io.*
@@ -54,11 +54,10 @@
 
 	public void process() {
 
-		BaseParameters params = module.getParameters();
+		Project project = module.getProject();
 		File binDir = module.getBinaryDirectory();
 
-		String corpusname = params.getCorpusName();
-		Element corpusElem = params.corpora.get(corpusname);
+		String corpusname = project.getName();
 
 		def srcFiles = [];
 		def files = inputDirectory.listFiles();
@@ -94,12 +93,12 @@
 		}
 
 		// prepare front XSL if any
-		xslPath = params.getXsltElement(corpusElem).getAttribute("xsl")
-		xslParams = params.getXsltParams(corpusElem);
+		xslPath = project.getFrontXSL()
+		xslParams = project.getXsltParameters()
 
-		lang = corpusElem.getAttribute("lang");
+		lang = project.getLang();
 
-		wordTag = module.getParameters().getWordElement().getTextContent()
+		wordTag = project.getTokenizerParameter(name, defaultvalue)
 		this.skipDoTokenizeStep = module.getParameters().getSkipTokenization()
 
 		//prepare metadata if any
Index: tmp/org.txm.groovy.core/src/groovy/org/txm/scripts/importer/xtz/XTZImport.groovy
===================================================================
--- tmp/org.txm.groovy.core/src/groovy/org/txm/scripts/importer/xtz/XTZImport.groovy	(revision 1134)
+++ tmp/org.txm.groovy.core/src/groovy/org/txm/scripts/importer/xtz/XTZImport.groovy	(revision 1135)
@@ -12,6 +12,7 @@
 import org.txm.objects.BaseParameters
 import org.txm.utils.io.FileCopy;
 import org.txm.*
+import org.txm.objects.*
 import org.w3c.dom.Element
 import org.txm.importer.xtz.*
 
@@ -21,12 +22,12 @@
 		super(importParametersFile);
 	}
 
-	public XTZImport(BaseParameters importParameters) {
-		super(importParameters);
+	public XTZImport(Project p) {
+		super(p);
 	}
 
 	@Override
-	public void init(BaseParameters p) {
+	public void init(Project p) {
 		super.init(p);
 		
 		importer = new XTZImporter(this)
