diff --git a/uk/ac/sanger/artemis/chado/ChadoTransaction.java b/uk/ac/sanger/artemis/chado/ChadoTransaction.java
index ea8bf6ebd8bf1d94efebb2a020df7b133bb860bf..befeca70858e8a64d7abcdd4aa7736c9cde55abb 100644
--- a/uk/ac/sanger/artemis/chado/ChadoTransaction.java
+++ b/uk/ac/sanger/artemis/chado/ChadoTransaction.java
@@ -28,6 +28,7 @@ import java.util.Properties;
 import java.util.Hashtable;
 import java.util.Vector;
 import java.util.Enumeration;
+import java.util.StringTokenizer;
 
 /**
 *
@@ -141,8 +142,17 @@ public class ChadoTransaction
         if(enum_prop.hasMoreElements())
           sqlBuff.append(" , ");
       }
-      sqlBuff.append(" WHERE feature.feature_id="+chadoTable+".feature_id AND feature.uniquename='");
-      sqlBuff.append(uniquename+"'");
+      sqlBuff.append(" WHERE feature.feature_id="+chadoTable+".feature_id AND (");
+    
+      StringTokenizer tok = new StringTokenizer(uniquename,",");
+      while(tok.hasMoreTokens())
+      {
+        sqlBuff.append(" feature.uniquename='" + tok.nextToken()+"' ");
+        if(tok.hasMoreTokens())
+          sqlBuff.append("OR");
+      }
+
+      sqlBuff.append(")");
 
       if(constraint != null)
       {
diff --git a/uk/ac/sanger/artemis/chado/ChadoTransactionManager.java b/uk/ac/sanger/artemis/chado/ChadoTransactionManager.java
index c5e8a5086630688e48b5f989bfeb1f0e1ec20c7f..99319e276f61048aaf9b52bd52b2d10f9a446615 100644
--- a/uk/ac/sanger/artemis/chado/ChadoTransactionManager.java
+++ b/uk/ac/sanger/artemis/chado/ChadoTransactionManager.java
@@ -173,15 +173,15 @@ public class ChadoTransactionManager
           tsn = new ChadoTransaction(ChadoTransaction.UPDATE,
                                      feature_id, "featureprop");
 
-          final StringVector qualifier_strings =
+          final StringVector new_qualifier_strings =
                        StreamQualifier.toStringVector(null, this_qualifier);
 
           String cvterm_id = DatabaseDocument.getCvtermID(name).toString();
-          
-          for(int value_index = 0; value_index < qualifier_strings.size();
+
+          for(int value_index = 0; value_index < new_qualifier_strings.size();
               ++value_index)
           {
-            String qualifier_string = qualifier_strings.elementAt(value_index);
+            String qualifier_string = new_qualifier_strings.elementAt(value_index);
             int index = qualifier_string.indexOf("=");
             if(index > -1)
               qualifier_string = qualifier_string.substring(index+1);