diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/handlers/ObjectContentHandler.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/handlers/ObjectContentHandler.java
index 0708012..aae6a8c 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/handlers/ObjectContentHandler.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/handlers/ObjectContentHandler.java
@@ -58,6 +58,9 @@
 				Type[] genericInterfaces = eList.getClass().getGenericInterfaces();
 				
 				typeString = genericInterfaces.length > 0 ? genericInterfaces[0].getTypeName() : "";
+				
+				// replace generic information
+				typeString = typeString.replaceAll("<[a-zA-Z]+>", "");
 			}
 			return "Collection" + "_" + typeString + "__object_Content";
 		}
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/views/DiagramView.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/views/DiagramView.java
index aac859c..eed789b 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/views/DiagramView.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/views/DiagramView.java
@@ -29,6 +29,7 @@
 import org.eclipse.app4mc.emf.viewer.plantuml.handlers.EClassContentsAndHierarchyHandler;
 import org.eclipse.app4mc.emf.viewer.plantuml.handlers.EClassContentsFromReferenceHandler;
 import org.eclipse.app4mc.emf.viewer.plantuml.handlers.EClassHierarchyHandler;
+import org.eclipse.app4mc.emf.viewer.plantuml.handlers.EObjectRefsHandler;
 import org.eclipse.app4mc.emf.viewer.plantuml.handlers.ObjectContentHandler;
 import org.eclipse.app4mc.emf.viewer.plantuml.preferences.PreferenceConstants;
 import org.eclipse.app4mc.emf.viewer.plantuml.utils.ExecutionCategory;
@@ -196,6 +197,8 @@
 	
 	private void updateDiagram(Object eClass, EObject eObject) {
 
+		Object selected = eClass;
+		
 		/*
 		 * Regeneration of SVG Buffer for populating content specific to the selection
 		 */
@@ -209,12 +212,22 @@
 			handler = new EClassAllReferencesHandler();
 		} else if (ExecutionUtil.isExecuting(ExecutionCategory.eClassContentsFromReference)) {
 			handler = new EClassContentsFromReferenceHandler();
+		} else if (ExecutionUtil.isExecuting(ExecutionCategory.eObjectRefs)) {
+			handler = new EObjectRefsHandler();
+			if (eObject != null) {
+				// if the eObject is not null we use this for the visualization, otherwise maybe a collection was selected
+				selected = eObject;
+			}
 		} else {
 			/*- EClassContents and EObjectRefs behaviour is included in ObjectContentBuilder java class */
 			handler = new ObjectContentHandler();
+			if (eObject != null) {
+				// if the eObject is not null we use this for the visualization, otherwise maybe a collection was selected
+				selected = eObject;
+			}
 		}
 		
-		handler.execute(shell, sync, dotPath, genFolderPath, partService, eClass, eObject);
+		handler.execute(shell, sync, dotPath, genFolderPath, partService, selected, eObject);
 	}
 	
 	/**
