Index: trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/autorenumber/AutoRenumberRefactoringProcessor.java
===================================================================
--- trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/autorenumber/AutoRenumberRefactoringProcessor.java	(revision 17)
+++ trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/autorenumber/AutoRenumberRefactoringProcessor.java	(revision 18)
@@ -5,4 +5,5 @@
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.OperationCanceledException;
+import org.eclipse.emf.ecore.EObject;
 import org.eclipse.jface.text.BadLocationException;
 import org.eclipse.ltk.core.refactoring.Change;
@@ -19,8 +20,9 @@
 import org.eclipse.xtext.parsetree.AbstractNode;
 import org.eclipse.xtext.parsetree.CompositeNode;
+import org.eclipse.xtext.parsetree.NodeUtil;
 import org.eclipse.xtext.ui.editor.XtextEditor;
 import org.eclipse.xtext.ui.editor.model.XtextDocument;
 
-import de.ugoe.cs.swe.bnftools.ebnf.Rule;
+import de.ugoe.cs.swe.bnftools.ebnf.BnfEntry;
 
 public class AutoRenumberRefactoringProcessor extends RefactoringProcessor {
@@ -113,6 +115,13 @@
 		for (int i=0; i < rootNode.getChildren().size(); i++) {
 			AbstractNode child = rootNode.getChildren().get(i);
-			if (!(child.getElement() instanceof Rule))
+			EObject element = child.getElement();
+			if (!(element instanceof BnfEntry))
 				continue;
+			BnfEntry bnfEntry = (BnfEntry) element;
+			if (bnfEntry.getRule() == null)
+				continue;
+			
+			child = NodeUtil.getNodeAdapter(bnfEntry.getRule()).getParserNode();
+			
 			String ruleText;
 			try {
Index: trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/inlinesinglereferencedrules/InlineSingleReferencedRulesRefactoringHandler.java
===================================================================
--- trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/inlinesinglereferencedrules/InlineSingleReferencedRulesRefactoringHandler.java	(revision 17)
+++ trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/inlinesinglereferencedrules/InlineSingleReferencedRulesRefactoringHandler.java	(revision 18)
@@ -22,4 +22,5 @@
 import com.google.inject.Inject;
 
+import de.ugoe.cs.swe.bnftools.ebnf.BnfEntry;
 import de.ugoe.cs.swe.bnftools.ebnf.Rule;
 import de.ugoe.cs.swe.bnftools.ui.quickfix.processors.InlineRulesProcessor;
@@ -52,4 +53,14 @@
 		for (int i=0; i < rootNode.getParserNode().getChildren().size(); i++) {
 			AbstractNode currentNode = rootNode.getParserNode().getChildren().get(i);
+
+			EObject element = currentNode.getElement();
+			if (!(element instanceof BnfEntry))
+				continue;
+			BnfEntry bnfEntry = (BnfEntry) element;
+			if (bnfEntry.getRule() == null)
+				continue;
+			
+			currentNode = NodeUtil.getNodeAdapter(bnfEntry.getRule()).getParserNode();
+
 			if (currentNode.getElement() instanceof Rule) {
 				Rule rule = (Rule) currentNode.getElement();
Index: trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/inlinetokenrules/InlineTokenRulesRefactoringHandler.java
===================================================================
--- trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/inlinetokenrules/InlineTokenRulesRefactoringHandler.java	(revision 17)
+++ trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/inlinetokenrules/InlineTokenRulesRefactoringHandler.java	(revision 18)
@@ -23,4 +23,5 @@
 
 import de.ugoe.cs.swe.bnftools.analysis.EbnfAnalysisUtils;
+import de.ugoe.cs.swe.bnftools.ebnf.BnfEntry;
 import de.ugoe.cs.swe.bnftools.ebnf.Rule;
 import de.ugoe.cs.swe.bnftools.ui.refactoring.generic.GenericRefactoring;
@@ -51,4 +52,14 @@
 		for (int i=0; i < rootNode.getParserNode().getChildren().size(); i++) {
 			AbstractNode currentNode = rootNode.getParserNode().getChildren().get(i);
+
+			EObject element = currentNode.getElement();
+			if (!(element instanceof BnfEntry))
+				continue;
+			BnfEntry bnfEntry = (BnfEntry) element;
+			if (bnfEntry.getRule() == null)
+				continue;
+			
+			currentNode = NodeUtil.getNodeAdapter(bnfEntry.getRule()).getParserNode();
+
 			if (currentNode.getElement() instanceof Rule) {
 				Rule rule = (Rule) currentNode.getElement();
Index: trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/removeunusedrules/RemoveUnusedRulesRefactoringHandler.java
===================================================================
--- trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/removeunusedrules/RemoveUnusedRulesRefactoringHandler.java	(revision 17)
+++ trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/removeunusedrules/RemoveUnusedRulesRefactoringHandler.java	(revision 18)
@@ -22,4 +22,5 @@
 import com.google.inject.Inject;
 
+import de.ugoe.cs.swe.bnftools.ebnf.BnfEntry;
 import de.ugoe.cs.swe.bnftools.ebnf.Rule;
 import de.ugoe.cs.swe.bnftools.ui.quickfix.processors.RemoveUnusedRulesProcessor;
@@ -52,4 +53,14 @@
 		for (int i=0; i < rootNode.getParserNode().getChildren().size(); i++) {
 			AbstractNode currentNode = rootNode.getParserNode().getChildren().get(i);
+			
+			EObject element = currentNode.getElement();
+			if (!(element instanceof BnfEntry))
+				continue;
+			BnfEntry bnfEntry = (BnfEntry) element;
+			if (bnfEntry.getRule() == null)
+				continue;
+			
+			currentNode = NodeUtil.getNodeAdapter(bnfEntry.getRule()).getParserNode();
+			
 			if (currentNode.getElement() instanceof Rule) {
 				Rule rule = (Rule) currentNode.getElement();
Index: trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/replacepassthroughrules/ReplaceAllPassthroughRulesRefactoringHandler.java
===================================================================
--- trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/replacepassthroughrules/ReplaceAllPassthroughRulesRefactoringHandler.java	(revision 17)
+++ trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/replacepassthroughrules/ReplaceAllPassthroughRulesRefactoringHandler.java	(revision 18)
@@ -23,4 +23,5 @@
 
 import de.ugoe.cs.swe.bnftools.analysis.EbnfAnalysisUtils;
+import de.ugoe.cs.swe.bnftools.ebnf.BnfEntry;
 import de.ugoe.cs.swe.bnftools.ebnf.Rule;
 import de.ugoe.cs.swe.bnftools.ui.quickfix.processors.ReplacePassthroughRuleProcessor;
@@ -55,4 +56,14 @@
 		for (int i=0; i < rootNode.getParserNode().getChildren().size(); i++) {
 			AbstractNode currentNode = rootNode.getParserNode().getChildren().get(i);
+			
+			EObject element = currentNode.getElement();
+			if (!(element instanceof BnfEntry))
+				continue;
+			BnfEntry bnfEntry = (BnfEntry) element;
+			if (bnfEntry.getRule() == null)
+				continue;
+			
+			currentNode = NodeUtil.getNodeAdapter(bnfEntry.getRule()).getParserNode();
+			
 			if (currentNode.getElement() instanceof Rule) {
 				Rule rule = (Rule) currentNode.getElement();
Index: trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/uppercasetokenrules/UppercaseTokenRulesRefactoringHandler.java
===================================================================
--- trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/uppercasetokenrules/UppercaseTokenRulesRefactoringHandler.java	(revision 17)
+++ trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/refactoring/uppercasetokenrules/UppercaseTokenRulesRefactoringHandler.java	(revision 18)
@@ -23,4 +23,5 @@
 
 import de.ugoe.cs.swe.bnftools.analysis.EbnfAnalysisUtils;
+import de.ugoe.cs.swe.bnftools.ebnf.BnfEntry;
 import de.ugoe.cs.swe.bnftools.ebnf.Rule;
 import de.ugoe.cs.swe.bnftools.ui.refactoring.generic.GenericRefactoring;
@@ -51,4 +52,15 @@
 		for (int i=0; i < rootNode.getParserNode().getChildren().size(); i++) {
 			AbstractNode currentNode = rootNode.getParserNode().getChildren().get(i);
+
+			EObject element = currentNode.getElement();
+			if (!(element instanceof BnfEntry))
+				continue;
+			BnfEntry bnfEntry = (BnfEntry) element;
+			if (bnfEntry.getRule() == null)
+				continue;
+			
+			currentNode = NodeUtil.getNodeAdapter(bnfEntry.getRule()).getParserNode();
+
+			
 			if (currentNode.getElement() instanceof Rule) {
 				Rule rule = (Rule) currentNode.getElement();
