diff --git a/uk/ac/sanger/artemis/chado/ChadoTransactionManager.java b/uk/ac/sanger/artemis/chado/ChadoTransactionManager.java
index d168e20820d6951065170e6a08155d9f425128ad..158fd6cd90b8d38606749f6c28a41a9e46ad5642 100644
--- a/uk/ac/sanger/artemis/chado/ChadoTransactionManager.java
+++ b/uk/ac/sanger/artemis/chado/ChadoTransactionManager.java
@@ -30,6 +30,7 @@ import uk.ac.sanger.artemis.FeatureSegmentVector;
 import uk.ac.sanger.artemis.sequence.SequenceChangeListener;
 import uk.ac.sanger.artemis.sequence.SequenceChangeEvent;
 import uk.ac.sanger.artemis.components.genebuilder.GeneUtils;
+import uk.ac.sanger.artemis.components.genebuilder.cv.GoBox;
 import uk.ac.sanger.artemis.components.genebuilder.ortholog.MatchPanel;
 import uk.ac.sanger.artemis.components.genebuilder.ortholog.OrthoParalogTable;
 import uk.ac.sanger.artemis.components.genebuilder.ortholog.SimilarityTable;
@@ -2308,7 +2309,12 @@ public class ChadoTransactionManager
       if(this_qualifier_part_lowercase.startsWith("term="))
       {
         final String cvTermName = this_qualifier_part.substring(5);
-        CvTerm cvTerm = getCvTerm(cvTermName, cvName);
+        CvTerm cvTerm;
+        
+        if(qualifier_name.startsWith("GO"))
+          cvTerm = GoBox.getGOCvTerm(cvTermName);
+        else
+          cvTerm = getCvTerm(cvTermName, cvName);
         
         if(cvTerm == null && cvName.equals(PRODUCT_CV))
           cvTerm = createCvTerm(cvTermName,