diff --git a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/AnnotationParameters.java b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/AnnotationParameters.java
index b97bd690b41b88f2be7f53e158aad68be24252db..915148448b690b991d7bf6daf6320c4abd156739 100644
--- a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/AnnotationParameters.java
+++ b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/AnnotationParameters.java
@@ -54,13 +54,21 @@ public class AnnotationParameters {
   }
 
   public boolean hasOutputField(BioEntityField field) {
+    for (AnnotatorOutputParameter annotatorParameter : getOutputParameters()) {
+      if (annotatorParameter.getField() != null && annotatorParameter.getField().equals(field)) {
+        return true;
+      }
+    }
+    return false;
+  }
+
+  public List<AnnotatorOutputParameter> getOutputParameters() {
+    List<AnnotatorOutputParameter> result = new ArrayList<>();
     for (AnnotatorParameter annotatorParameter : annotatorParameters) {
       if (annotatorParameter instanceof AnnotatorOutputParameter) {
-        if (((AnnotatorOutputParameter) annotatorParameter).getField().equals(field)) {
-          return true;
-        }
+        result.add((AnnotatorOutputParameter) annotatorParameter);
       }
     }
-    return false;
+    return result;
   }
 }
diff --git a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/ElementAnnotator.java b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/ElementAnnotator.java
index ce4b4cde91af941bc39f0f9d7c4a49a355508896..4861253b15667b781811999f5b53a4a2ce086167 100644
--- a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/ElementAnnotator.java
+++ b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/ElementAnnotator.java
@@ -109,6 +109,9 @@ public abstract class ElementAnnotator extends CachableInterface {
       if (inputParameters.size() == 0) {
         inputParameters = getAvailableInputParameters();
       }
+      if (parameters.getOutputParameters().size()==0) {
+        parameters.addAnnotatorParameters(this.getAvailableOuputProperties());
+      }
       List<Set<Object>> inputs = getInputsParameters(bioEntity, inputParameters);
       for (Set<Object> inputSet : inputs) {
         boolean annotated = false;
@@ -273,14 +276,16 @@ public abstract class ElementAnnotator extends CachableInterface {
    * @param prefix
    *          prefix used in warnings
    */
-  protected void setSymbol(BioEntity element, String symbol, String prefix) {
-    if (element.getSymbol() == null || element.getSymbol().equals("") || element.getSymbol().equals(symbol)) {
-      element.setSymbol(symbol);
-    } else {
-      logger.warn(prefix + "Symbols doesn't match: \"" + symbol + "\", \"" + element.getSymbol() + "\"");
-    }
-    if (element.getName() == null || element.getName().equals("")) {
-      element.setName(symbol);
+  protected void setSymbol(BioEntity element, String symbol, String prefix, AnnotationParameters parameters) {
+    if (parameters.hasOutputField(BioEntityField.SYMBOL)) {
+      if (element.getSymbol() == null || element.getSymbol().equals("") || element.getSymbol().equals(symbol)) {
+        element.setSymbol(symbol);
+      } else {
+        logger.warn(prefix + "Symbols doesn't match: \"" + symbol + "\", \"" + element.getSymbol() + "\"");
+      }
+      if (element.getName() == null || element.getName().equals("")) {
+        element.setName(symbol);
+      }
     }
   }
 
diff --git a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/EnsemblAnnotator.java b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/EnsemblAnnotator.java
index 4d32f04c70bda29d7e3c47ebb5a84b5cf0187638..a75e4bdbec1c9c34ba8ab0871fc8b8ebe3ed0dce 100644
--- a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/EnsemblAnnotator.java
+++ b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/EnsemblAnnotator.java
@@ -143,7 +143,7 @@ public class EnsemblAnnotator extends ElementAnnotator implements IExternalServi
     if (identifier.getDataType().equals(MiriamType.ENSEMBL)) {
       ElementUtils eu = new ElementUtils();
       String prefix = eu.getElementTag(element);
-      return annotateElement(element, identifier, prefix);
+      return annotateElement(element, identifier, prefix, parameters);
     } else {
       throw new NotImplementedException();
     }
@@ -161,7 +161,7 @@ public class EnsemblAnnotator extends ElementAnnotator implements IExternalServi
    * @throws AnnotatorException
    *           thrown when there is a problem with annotating element
    */
-  private boolean annotateElement(BioEntity annotatedObject, MiriamData entrezMiriamData, String prefix)
+  private boolean annotateElement(BioEntity annotatedObject, MiriamData entrezMiriamData, String prefix, AnnotationParameters parameters)
       throws AnnotatorException {
     String query = REST_SERVICE_URL + entrezMiriamData.getResource() + URL_SUFFIX;
     try {
@@ -188,7 +188,7 @@ public class EnsemblAnnotator extends ElementAnnotator implements IExternalServi
               }
               String symbol = super.getNodeAttr("display_id", node);
               if (symbol != null) {
-                setSymbol(annotatedObject, symbol, prefix);
+                setSymbol(annotatedObject, symbol, prefix, parameters);
               }
               String fullName = super.getNodeAttr("description", node);
               if (fullName != null) {
diff --git a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/EntrezAnnotator.java b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/EntrezAnnotator.java
index 91d3f9a88b9cf6940acd1de5f38efa808b61caff..13aee3027c5d7e68e575bc844c5f8c996dfe3df1 100644
--- a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/EntrezAnnotator.java
+++ b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/EntrezAnnotator.java
@@ -147,7 +147,7 @@ public class EntrezAnnotator extends ElementAnnotator implements IExternalServic
     if (identifier.getDataType().equals(MiriamType.ENTREZ)) {
       ElementUtils eu = new ElementUtils();
       String prefix = eu.getElementTag(element);
-      return annotateElement(element, identifier, prefix);
+      return annotateElement(element, identifier, prefix, parameters);
     } else {
       throw new NotImplementedException();
     }
@@ -165,11 +165,11 @@ public class EntrezAnnotator extends ElementAnnotator implements IExternalServic
    * @throws AnnotatorException
    *           thrown when there is a problem with annotating element
    */
-  private boolean annotateElement(BioEntity element, MiriamData entrezMiriamData, String prefix)
+  private boolean annotateElement(BioEntity element, MiriamData entrezMiriamData, String prefix, AnnotationParameters parameters)
       throws AnnotatorException {
     EntrezData data = getEntrezForMiriamData(entrezMiriamData, prefix);
     if (data != null) {
-      setSymbol(element, data.getSymbol(), prefix);
+      setSymbol(element, data.getSymbol(), prefix, parameters);
 
       setFullName((Element) element, data.getFullName(), prefix);
 
diff --git a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/HgncAnnotator.java b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/HgncAnnotator.java
index a412585c7e38fdd7aac503125aa8319f6031e467..16f15fe7c0529c7c41f14f2e505372a87fc166e1 100644
--- a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/HgncAnnotator.java
+++ b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/HgncAnnotator.java
@@ -150,7 +150,7 @@ public class HgncAnnotator extends ElementAnnotator implements IExternalService
                   // hgnc_symbol in the element
                   element.addMiriamData(createMiriamData(MiriamType.HGNC_SYMBOL, getNodeValue(node)));
                 }
-                setSymbol(element, getNodeValue(node), prefix);
+                setSymbol(element, getNodeValue(node), prefix, parameters);
               } else if (type.equals("name")) {
                 setFullName((Element) element, getNodeValue(node), prefix);
               }
diff --git a/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/ElementAnnotatorTest.java b/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/ElementAnnotatorTest.java
index df2ede52f998539cf66a99a6a536abbb514956b7..f958df441ac04667f39880a7ed97d465ba1ea7aa 100644
--- a/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/ElementAnnotatorTest.java
+++ b/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/ElementAnnotatorTest.java
@@ -64,7 +64,7 @@ public class ElementAnnotatorTest extends AnnotationTestFunctions {
   public void testSetNotMatchingSymbol() {
     GenericProtein species = new GenericProtein("id");
     species.setSymbol("X");
-    annotator.setSymbol(species, "Y", null);
+    annotator.setSymbol(species, "Y", null, allOutputFieldsAndAnnotations);
 
     assertEquals(1, getWarnings().size());
   }