Index: v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src/de/ugoe/cs/swe/bnftools/formatting/EbnfFormatter.xtend
===================================================================
--- v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src/de/ugoe/cs/swe/bnftools/formatting/EbnfFormatter.xtend	(revision 62)
+++ v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src/de/ugoe/cs/swe/bnftools/formatting/EbnfFormatter.xtend	(revision 63)
@@ -33,4 +33,5 @@
 		c.setLinewrap.before(f.ruleRule);
 		c.setLinewrap.before(f.importRule);
+		c.setNoSpace.after(f.ruleAccess.rulenumberINTTerminalRuleCall_0_0_0)
 //		//c.setLinewrap.after(f.);
 //		for (Keyword bar : f.findKeywords("|")) {
Index: v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src/de/ugoe/cs/swe/bnftools/generator/EbnfGenerator.xtend
===================================================================
--- v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src/de/ugoe/cs/swe/bnftools/generator/EbnfGenerator.xtend	(revision 62)
+++ v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src/de/ugoe/cs/swe/bnftools/generator/EbnfGenerator.xtend	(revision 63)
@@ -26,5 +26,5 @@
  */
 class EbnfGenerator implements IGenerator {
-	//generation of the file blaaa
+	//generation of the xsl-file
 	override void doGenerate(Resource resource, IFileSystemAccess fsa) {
 		for (e : resource.allContents.toIterable.filter(EtsiBnf)) {
@@ -39,5 +39,5 @@
 	'''
 	<?xml version="1.0"?>
-	<!-- fop hello.xml -rtf hello.rtf -->
+	<!-- fop «bnf.name».xml -rtf «bnf.name».rtf -->
 	<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
 
@@ -63,5 +63,5 @@
 	'''
 	
-	def compile(Rule rule)'''<fo:block><fo:inline id="«rule.name»"	color="purple">«rule.name»</fo:inline>	::=	«rule.definitionList.compile»</block>'''
+	def compile(Rule rule)'''<fo:block><fo:inline id="«rule.name»"	color="purple">«IF rule.rulenumber!=0»«rule.rulenumber».\t«ENDIF»«rule.name»</fo:inline>	::=	«rule.definitionList.compile»</block>'''
 	
 	def compile(DefinitionList dList)'''«FOR sDef:dList.singleDefinition»«sDef.compile»«IF !sDef.equals(dList.singleDefinition.last)» | «ENDIF»«ENDFOR»'''
Index: v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src/de/ugoe/cs/swe/bnftools/validation/EbnfValidator.xtend
===================================================================
--- v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src/de/ugoe/cs/swe/bnftools/validation/EbnfValidator.xtend	(revision 62)
+++ v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src/de/ugoe/cs/swe/bnftools/validation/EbnfValidator.xtend	(revision 63)
@@ -26,12 +26,12 @@
 class EbnfValidator extends AbstractEbnfValidator {
 
-	static final String ruleReferencedOneDescription = "The rule is only referenced by one other rule";
-	static final String passthroughRuleDescription = "The rule is a passthrough rule";
-	static final String unreferencedPassthroughRuleDescription = "The rule is an unreferenced passthrough rule";
-	static final String unusedRuleDescription = "The rule is not referenced anywhere";
-	static final String equalAlternativeDescription = "The rule contains equal alternatives";
-	static final String duplicateRulesDescription = "The rule is a duplicate";
-	//	 static final String duplicateSubRulesDescription = "A part the of rule is a duplicate";
-	static final String nonUniqueNameDescription = "The rule has the same Name as the Rule in Line ";
+	public static final String ruleReferencedOneDescription = "The rule is only referenced by one other rule";
+	public static final String passthroughRuleDescription = "The rule is a passthrough rule";
+	public static final String unreferencedPassthroughRuleDescription = "The rule is an unreferenced passthrough rule";
+	public static final String unusedRuleDescription = "The rule is not referenced anywhere";
+	public static final String equalAlternativeDescription = "The rule contains equal alternatives";
+	public static final String duplicateRulesDescription = "The rule is a duplicate";
+	//public  static final String duplicateSubRulesDescription = "A part the of rule is a duplicate";
+	public static final String nonUniqueNameDescription = "The rule has the same Name as the Rule in Line ";
 
 	// ----------------------------------------------------------------------------------------------------
@@ -49,5 +49,5 @@
 
 		if (references.size() == 1 && rule.rulenumber != 1) {
-			warning(ruleReferencedOneDescription, EbnfPackage$Literals::RULE__NAME);
+			warning(ruleReferencedOneDescription, EbnfPackage$Literals::RULE__NAME,ruleReferencedOneDescription,rule.name);
 		}
 	}
@@ -122,5 +122,5 @@
 
 		if ((references.size() == 0) && (rule.getRulenumber() != 1))
-			warning(unusedRuleDescription, EbnfPackage$Literals::RULE__NAME);
+			warning(unusedRuleDescription, EbnfPackage$Literals::RULE__NAME,unusedRuleDescription,rule.name);
 	}
 
