[44359] XSDEditor: Type and Element selection dialogs lists each components twice
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateNameCommand.java b/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateNameCommand.java
index 0e3443c..60eca39 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateNameCommand.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateNameCommand.java
@@ -19,6 +19,7 @@
 import org.eclipse.wst.xsd.ui.internal.refactor.rename.RenameComponentProcessor;
 import org.eclipse.xsd.XSDComplexTypeDefinition;
 import org.eclipse.xsd.XSDNamedComponent;
+import org.eclipse.xsd.XSDSchema;
 
 public class UpdateNameCommand extends Command
 {
@@ -58,15 +59,25 @@
    */
   private void renameComponent(String newName)
   {
-    RefactoringComponent refactoringComponent = new XMLRefactoringComponent(
-        component,
-        (IDOMElement)component.getElement(), 
-        component.getName(),
-        component.getTargetNamespace());
+    // this is a 'globally' defined component (e.g. global element)    
+    if (component.eContainer() instanceof XSDSchema)
+    {  
+      RefactoringComponent refactoringComponent = new XMLRefactoringComponent(
+          component,
+          (IDOMElement)component.getElement(), 
+          component.getName(),
+          component.getTargetNamespace());
 
-    RenameComponentProcessor processor = new RenameComponentProcessor(refactoringComponent, newName, true);    
-    RenameRefactoring refactoring = new RenameRefactoring(processor);
-    PerformUnsavedRefactoringOperation operation = new PerformUnsavedRefactoringOperation(refactoring);
-    operation.run(null); 
+      RenameComponentProcessor processor = new RenameComponentProcessor(refactoringComponent, newName, true);    
+      RenameRefactoring refactoring = new RenameRefactoring(processor);
+      PerformUnsavedRefactoringOperation operation = new PerformUnsavedRefactoringOperation(refactoring);
+      operation.run(null);
+    } 
+    else
+    {
+      // this is a 'locally' defined component (e.g. local element)
+      // no need to call refactoring since this component can't be referenced      
+      component.setName(newName);
+    }  
   }
 }