Index: trunk/gli/src/org/greenstone/gatherer/cdm/Format.java
===================================================================
--- trunk/gli/src/org/greenstone/gatherer/cdm/Format.java	(revision 12253)
+++ trunk/gli/src/org/greenstone/gatherer/cdm/Format.java	(revision 12273)
@@ -41,11 +41,12 @@
 
     /** The default features (not all of these are in the Greenstone Developer's Guide). */
-    static final public String DEFAULT_FEATURES[] = { "", "AllowExtendedOptions", "Document", "DocumentArrowsBottom", "DocumentArrowsTop", "DocumentButtons", "DocumentContents", "DocumentHeading", "DocumentImages", "DocumentText", "DocumentTitles", "DocumentUseHTML", "RelatedDocuments", "Search", "SearchTypes" };
+    static final public String DEFAULT_FEATURES[] = { "<html><body><i>All Features</i></body></html>", "AllowExtendedOptions", "Document", "DocumentArrowsBottom", "DocumentArrowsTop", "DocumentButtons", "DocumentContents", "DocumentHeading", "DocumentImages", "DocumentText", "DocumentTitles", "DocumentUseHTML", "RelatedDocuments", "Search", "SearchTypes" };
     /** The list of known feature parts. */
     static final public String DEFAULT_PARTS[] = { "", "DateList", "HList", "VList" };
 
+      
     /** Only "" and "Search" can have parts */
     static public boolean canHavePart(String name) {
-	return (name.equalsIgnoreCase("") || name.equalsIgnoreCase("Search") || name.equalsIgnoreCase("Document"));
+	return (name.startsWith("<html>") || name.equalsIgnoreCase("") || name.equalsIgnoreCase("Search") || name.equalsIgnoreCase("Document"));
     }
 	
@@ -58,4 +59,5 @@
 	}
     }
+
 
     /** Returns true if the parameter is a boolean type, false otherwise. */
@@ -70,4 +72,5 @@
     }
 
+   
     /** If this format is altering a Classifier then this is the classifier in question. */
     private Classifier classifier = null;
@@ -83,7 +86,9 @@
     /** Constructor only to be used during DOMProxyListModel initialization. */
     public Format() {
+	   
     }
 
     public Format(Element element) {
+
 	this.element = element;
 	// Immediately check if we are dealing with a classifier, by retrieving the feature name. If it is a classifier, then restore the live reference immediately before anything changes it.
@@ -110,4 +115,6 @@
 	    }
 	}
+
+      	 
     }
 
@@ -118,7 +125,9 @@
      */
     public Format(Object feature, String part, boolean state) {
+
 	element = CollectionDesignManager.collect_config.document.createElement(CollectionConfiguration.FORMAT_ELEMENT);
 	setName(feature, part);
 	setState(state);
+	 
     }
 
@@ -129,9 +138,13 @@
      */
     public Format(Object feature, String part, String value) {
-	element = CollectionDesignManager.collect_config.document.createElement(CollectionConfiguration.FORMAT_ELEMENT);
+
+	element = CollectionDesignManager.collect_config.document.createElement(CollectionConfiguration.FORMAT_ELEMENT);       
 	setName(feature, part);
 	setValue(value);
-    }
-
+	 
+    }
+
+     
+ 
     public boolean canHavePart() {
 	return canHavePart(getName());
@@ -190,5 +203,5 @@
     public String getFeatureName() {
 	if (feature_name == null) {
-	    String name = element.getAttribute(CollectionConfiguration.NAME_ATTRIBUTE);
+	    String name  = element.getAttribute(CollectionConfiguration.NAME_ATTRIBUTE);
 	    // Remove part
 	    String part = getPart();
@@ -202,4 +215,9 @@
 	    name = null;
 	}
+
+	if ( feature_name.equals("")){
+	     feature_name = DEFAULT_FEATURES[0];
+	 }
+
 	return feature_name;
 	    
@@ -207,5 +225,9 @@
     public String getName() {
 	if(element != null) {
-	    return element.getAttribute(CollectionConfiguration.NAME_ATTRIBUTE);
+	    String name  = element.getAttribute(CollectionConfiguration.NAME_ATTRIBUTE);
+            if (name.equals("")){
+		return DEFAULT_FEATURES[0];
+	    }
+           return element.getAttribute(CollectionConfiguration.NAME_ATTRIBUTE);
 	}
 	return "Error";
@@ -277,4 +299,5 @@
     public void setName(Object feature, String part) {
 	// Can't do anything unless an element exists.
+        
 	if(element != null) {
 	    this.part = part; // Easier for later on.
@@ -285,6 +308,11 @@
 	    }
 	    else {
-		feature_name = feature.toString();
-		element.setAttribute(CollectionConfiguration.NAME_ATTRIBUTE, feature.toString() + part);
+                if  (feature.toString().startsWith("<html>")){
+		    feature_name = "";
+		}
+		else{
+		    feature_name = feature.toString();
+		}
+		element.setAttribute(CollectionConfiguration.NAME_ATTRIBUTE, feature_name + part);
 	    }
 	    text = null;
Index: trunk/gli/src/org/greenstone/gatherer/cdm/FormatManager.java
===================================================================
--- trunk/gli/src/org/greenstone/gatherer/cdm/FormatManager.java	(revision 12253)
+++ trunk/gli/src/org/greenstone/gatherer/cdm/FormatManager.java	(revision 12273)
@@ -640,5 +640,6 @@
 		    ignore_event = true;
 		    Entry entry = (Entry) feature_combobox.getSelectedItem();
-		    // Step one: reset part
+		    
+                    // Step one: reset part
 		    if (entry.canHavePart()) {
 			part_combobox.setEnabled(true);
@@ -1117,4 +1118,8 @@
 	    if(classifier != null) {
 		return classifier;
+	    }
+
+	    if (text.startsWith("<html>")){
+		return  "";
 	    }
 	    return text;
