From 9a88c5293ab0ad48a8f72a5dc271cbe1e9fcccb4 Mon Sep 17 00:00:00 2001
From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz>
Date: Mon, 2 Jan 2017 09:45:19 +0100
Subject: [PATCH] simplify examples of grammars

---
 examples2/grammar/anormalization.test.1.xml |  65 +++---
 examples2/grammar/anormalization.test.2.xml |  88 +++-----
 examples2/grammar/anormalization.test.3.xml | 226 ++++++--------------
 examples2/grammar/contextFree.xml           |  61 +++---
 examples2/grammar/contextSensitive.xml      | 125 +++++------
 examples2/grammar/leftRegular.xml           |  79 +++----
 examples2/grammar/leftRegular2.xml          |  97 +++++----
 examples2/grammar/rightRegular.xml          |  81 +++----
 examples2/grammar/rightRegular2.xml         |  97 +++++----
 examples2/grammar/rightRegular3.xml         | 135 ++++++------
 10 files changed, 480 insertions(+), 574 deletions(-)

diff --git a/examples2/grammar/anormalization.test.1.xml b/examples2/grammar/anormalization.test.1.xml
index 9b53cf09c2..98ea657afd 100644
--- a/examples2/grammar/anormalization.test.1.xml
+++ b/examples2/grammar/anormalization.test.1.xml
@@ -1,32 +1,37 @@
+<?xml version="1.0"?>
 <EpsilonFreeCFG>
-	<nonterminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>[</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><String>text</String></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>]</Character></PrimitiveLabel></LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol><LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol></initialSymbol>
-	<rules>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><String>text</String></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>[</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>]</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
-	<generatesEpsilon><false /></generatesEpsilon>
+  <nonterminalAlphabet>
+    <Character>S</Character>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <Character>[</Character>
+    <String>text</String>
+    <Character>]</Character>
+  </terminalAlphabet>
+  <initialSymbol>
+    <Character>S</Character>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <String>text</String>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>[</Character>
+        <Character>S</Character>
+        <Character>]</Character>
+      </rhs>
+    </rule>
+  </rules>
+  <generatesEpsilon>
+    <false/>
+  </generatesEpsilon>
 </EpsilonFreeCFG>
diff --git a/examples2/grammar/anormalization.test.2.xml b/examples2/grammar/anormalization.test.2.xml
index e0a7d6a1d8..5a6a6659f2 100644
--- a/examples2/grammar/anormalization.test.2.xml
+++ b/examples2/grammar/anormalization.test.2.xml
@@ -1,65 +1,29 @@
 <?xml version="1.0"?>
 <EpsilonFreeCFG>
-	<nonterminalAlphabet>
-		<LabeledSymbol>
-			<PrimitiveLabel>
-				<String>M</String>
-			</PrimitiveLabel>
-		</LabeledSymbol>
-		<LabeledSymbol>
-			<PrimitiveLabel>
-				<String>V</String>
-			</PrimitiveLabel>
-		</LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol>
-			<PrimitiveLabel>
-				<String>i</String>
-			</PrimitiveLabel>
-		</LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol>
-		<LabeledSymbol>
-			<PrimitiveLabel>
-				<String>V</String>
-			</PrimitiveLabel>
-		</LabeledSymbol>
-	</initialSymbol>
-	<rules>
-		<rule>
-			<lhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>M</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>V</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>M</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>V</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>V</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
-	<generatesEpsilon>
-		<false/>
-	</generatesEpsilon>
+  <nonterminalAlphabet>
+    <String>M</String>
+    <String>V</String>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <String>i</String>
+  </terminalAlphabet>
+  <initialSymbol>
+    <String>V</String>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lhs>
+        <String>M</String>
+      </lhs>
+      <rhs>
+        <String>V</String>
+        <String>M</String>
+        <String>V</String>
+        <String>V</String>
+      </rhs>
+    </rule>
+  </rules>
+  <generatesEpsilon>
+    <false/>
+  </generatesEpsilon>
 </EpsilonFreeCFG>
diff --git a/examples2/grammar/anormalization.test.3.xml b/examples2/grammar/anormalization.test.3.xml
index 390d5d48c7..4f27012836 100644
--- a/examples2/grammar/anormalization.test.3.xml
+++ b/examples2/grammar/anormalization.test.3.xml
@@ -1,164 +1,68 @@
 <?xml version="1.0"?>
 <EpsilonFreeCFG>
-	<nonterminalAlphabet>
-		<LabeledSymbol>
-			<PrimitiveLabel>
-				<String>C</String>
-			</PrimitiveLabel>
-		</LabeledSymbol>
-		<LabeledSymbol>
-			<PrimitiveLabel>
-				<String>X</String>
-			</PrimitiveLabel>
-		</LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol>
-			<PrimitiveLabel>
-				<String>d</String>
-			</PrimitiveLabel>
-		</LabeledSymbol>
-		<LabeledSymbol>
-			<PrimitiveLabel>
-				<String>l</String>
-			</PrimitiveLabel>
-		</LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol>
-		<LabeledSymbol>
-			<PrimitiveLabel>
-				<String>C</String>
-			</PrimitiveLabel>
-		</LabeledSymbol>
-	</initialSymbol>
-	<rules>
-		<rule>
-			<lhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>C</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>l</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>l</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>X</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>X</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>X</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>d</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>d</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>d</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>l</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>X</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>l</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>X</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>d</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>X</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>l</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>X</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>d</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-				<LabeledSymbol>
-					<PrimitiveLabel>
-						<String>C</String>
-					</PrimitiveLabel>
-				</LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
-	<generatesEpsilon>
-		<true/>
-	</generatesEpsilon>
+  <nonterminalAlphabet>
+    <String>C</String>
+    <String>X</String>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <String>d</String>
+    <String>l</String>
+  </terminalAlphabet>
+  <initialSymbol>
+    <String>C</String>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lhs>
+        <String>C</String>
+      </lhs>
+      <rhs>
+        <String>l</String>
+        <String>l</String>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <String>X</String>
+      </lhs>
+      <rhs>
+        <String>X</String>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <String>X</String>
+      </lhs>
+      <rhs>
+        <String>d</String>
+        <String>d</String>
+        <String>d</String>
+        <String>l</String>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <String>X</String>
+      </lhs>
+      <rhs>
+        <String>l</String>
+        <String>X</String>
+        <String>d</String>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <String>X</String>
+      </lhs>
+      <rhs>
+        <String>l</String>
+        <String>X</String>
+        <String>d</String>
+        <String>C</String>
+      </rhs>
+    </rule>
+  </rules>
+  <generatesEpsilon>
+    <true/>
+  </generatesEpsilon>
 </EpsilonFreeCFG>
diff --git a/examples2/grammar/contextFree.xml b/examples2/grammar/contextFree.xml
index 977a140f7e..7da881d6b9 100644
--- a/examples2/grammar/contextFree.xml
+++ b/examples2/grammar/contextFree.xml
@@ -1,31 +1,34 @@
+<?xml version="1.0"?>
 <CFG>
-	<nonterminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>[</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>text</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>]</Character></PrimitiveLabel></LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol><LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol></initialSymbol>
-	<rules>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>text</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>[</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>]</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
+  <nonterminalAlphabet>
+    <Character>S</Character>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <Character>[</Character>
+    <Character>text</Character>
+    <Character>]</Character>
+  </terminalAlphabet>
+  <initialSymbol>
+    <Character>S</Character>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>text</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>[</Character>
+        <Character>S</Character>
+        <Character>]</Character>
+      </rhs>
+    </rule>
+  </rules>
 </CFG>
diff --git a/examples2/grammar/contextSensitive.xml b/examples2/grammar/contextSensitive.xml
index c56f59132f..f2da5bbbbc 100644
--- a/examples2/grammar/contextSensitive.xml
+++ b/examples2/grammar/contextSensitive.xml
@@ -1,64 +1,69 @@
+<?xml version="1.0"?>
 <CSG>
-	<nonterminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>k</Character></PrimitiveLabel></LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol><LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol></initialSymbol>
-	<rules>
-		<rule>
-			<lContext>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
+  <nonterminalAlphabet>
+    <Character>S</Character>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <Character>a</Character>
+    <Character>b</Character>
+    <Character>c</Character>
+    <Character>d</Character>
+    <Character>k</Character>
+  </terminalAlphabet>
+  <initialSymbol>
+    <Character>S</Character>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lContext>
+        <Character>a</Character>
+        <Character>b</Character>
+      </lContext>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rContext>
+        <Character>c</Character>
+        <Character>d</Character>
+      </rContext>
+      <rhs>
+        <Character>k</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lContext>
 			</lContext>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rContext>
-				<LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rContext>
+        <Character>c</Character>
+        <Character>d</Character>
+      </rContext>
+      <rhs>
+        <Character>a</Character>
+        <Character>b</Character>
+        <Character>k</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lContext>
+        <Character>a</Character>
+        <Character>b</Character>
+      </lContext>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rContext>
 			</rContext>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>k</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lContext>
-			</lContext>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rContext>
-				<LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol>
-			</rContext>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>k</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lContext>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-			</lContext>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rContext>
-			</rContext>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>k</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>c</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>d</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
-	<generatesEpsilon><false /></generatesEpsilon>
+      <rhs>
+        <Character>k</Character>
+        <Character>c</Character>
+        <Character>d</Character>
+      </rhs>
+    </rule>
+  </rules>
+  <generatesEpsilon>
+    <false/>
+  </generatesEpsilon>
 </CSG>
diff --git a/examples2/grammar/leftRegular.xml b/examples2/grammar/leftRegular.xml
index 8b29416174..deaabad564 100644
--- a/examples2/grammar/leftRegular.xml
+++ b/examples2/grammar/leftRegular.xml
@@ -1,39 +1,44 @@
+<?xml version="1.0"?>
 <LeftRG>
-	<nonterminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol><LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol></initialSymbol>
-	<rules>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
-	<generatesEpsilon><true /></generatesEpsilon>
+  <nonterminalAlphabet>
+    <Character>S</Character>
+    <Character>A</Character>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <Character>a</Character>
+    <Character>b</Character>
+  </terminalAlphabet>
+  <initialSymbol>
+    <Character>S</Character>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>A</Character>
+        <Character>a</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>A</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>b</Character>
+      </rhs>
+    </rule>
+  </rules>
+  <generatesEpsilon>
+    <true/>
+  </generatesEpsilon>
 </LeftRG>
diff --git a/examples2/grammar/leftRegular2.xml b/examples2/grammar/leftRegular2.xml
index 4ab06adb48..9b1b0d33fd 100644
--- a/examples2/grammar/leftRegular2.xml
+++ b/examples2/grammar/leftRegular2.xml
@@ -1,48 +1,53 @@
+<?xml version="1.0"?>
 <LeftRG>
-	<nonterminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol><LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol></initialSymbol>
-	<rules>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
-	<generatesEpsilon><false /></generatesEpsilon>
+  <nonterminalAlphabet>
+    <Character>S</Character>
+    <Character>A</Character>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <Character>a</Character>
+    <Character>b</Character>
+  </terminalAlphabet>
+  <initialSymbol>
+    <Character>S</Character>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>A</Character>
+        <Character>a</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>A</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>A</Character>
+      </lhs>
+      <rhs>
+        <Character>S</Character>
+        <Character>b</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>b</Character>
+      </rhs>
+    </rule>
+  </rules>
+  <generatesEpsilon>
+    <false/>
+  </generatesEpsilon>
 </LeftRG>
diff --git a/examples2/grammar/rightRegular.xml b/examples2/grammar/rightRegular.xml
index a57665734a..e7eacdc3f9 100644
--- a/examples2/grammar/rightRegular.xml
+++ b/examples2/grammar/rightRegular.xml
@@ -1,40 +1,45 @@
+<?xml version="1.0"?>
 <RightRG>
-	<nonterminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol><LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol></initialSymbol>
-	<rules>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
-	<generatesEpsilon><true /></generatesEpsilon>
+  <nonterminalAlphabet>
+    <Character>S</Character>
+    <Character>A</Character>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <Character>a</Character>
+    <Character>b</Character>
+  </terminalAlphabet>
+  <initialSymbol>
+    <Character>S</Character>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>b</Character>
+        <Character>A</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>A</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+        <Character>A</Character>
+      </rhs>
+    </rule>
+  </rules>
+  <generatesEpsilon>
+    <true/>
+  </generatesEpsilon>
 </RightRG>
diff --git a/examples2/grammar/rightRegular2.xml b/examples2/grammar/rightRegular2.xml
index 1fa9073b07..2a2a4dba8a 100644
--- a/examples2/grammar/rightRegular2.xml
+++ b/examples2/grammar/rightRegular2.xml
@@ -1,48 +1,53 @@
+<?xml version="1.0"?>
 <RightRG>
-	<nonterminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol><LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol></initialSymbol>
-	<rules>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
-	<generatesEpsilon><false /></generatesEpsilon>
+  <nonterminalAlphabet>
+    <Character>S</Character>
+    <Character>A</Character>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <Character>a</Character>
+    <Character>b</Character>
+  </terminalAlphabet>
+  <initialSymbol>
+    <Character>S</Character>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>b</Character>
+        <Character>A</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>A</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+        <Character>S</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>A</Character>
+      </lhs>
+      <rhs>
+        <Character>b</Character>
+      </rhs>
+    </rule>
+  </rules>
+  <generatesEpsilon>
+    <false/>
+  </generatesEpsilon>
 </RightRG>
diff --git a/examples2/grammar/rightRegular3.xml b/examples2/grammar/rightRegular3.xml
index 660439b7f2..b028685f74 100644
--- a/examples2/grammar/rightRegular3.xml
+++ b/examples2/grammar/rightRegular3.xml
@@ -1,67 +1,72 @@
+<?xml version="1.0"?>
 <RightRG>
-	<nonterminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol>
-	</nonterminalAlphabet>
-	<terminalAlphabet>
-		<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-		<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-	</terminalAlphabet>
-	<initialSymbol><LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol></initialSymbol>
-	<rules>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>S</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>b</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-				<LabeledSymbol><PrimitiveLabel><Character>B</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-		<rule>
-			<lhs>
-				<LabeledSymbol><PrimitiveLabel><Character>A</Character></PrimitiveLabel></LabeledSymbol>
-			</lhs>
-			<rhs>
-				<LabeledSymbol><PrimitiveLabel><Character>a</Character></PrimitiveLabel></LabeledSymbol>
-			</rhs>
-		</rule>
-	</rules>
-	<generatesEpsilon><false /></generatesEpsilon>
+  <nonterminalAlphabet>
+    <Character>S</Character>
+    <Character>A</Character>
+    <Character>B</Character>
+  </nonterminalAlphabet>
+  <terminalAlphabet>
+    <Character>a</Character>
+    <Character>b</Character>
+  </terminalAlphabet>
+  <initialSymbol>
+    <Character>S</Character>
+  </initialSymbol>
+  <rules>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+        <Character>A</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>S</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+        <Character>B</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>B</Character>
+      </lhs>
+      <rhs>
+        <Character>b</Character>
+        <Character>B</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>B</Character>
+      </lhs>
+      <rhs>
+        <Character>b</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>A</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+        <Character>B</Character>
+      </rhs>
+    </rule>
+    <rule>
+      <lhs>
+        <Character>A</Character>
+      </lhs>
+      <rhs>
+        <Character>a</Character>
+      </rhs>
+    </rule>
+  </rules>
+  <generatesEpsilon>
+    <false/>
+  </generatesEpsilon>
 </RightRG>
-- 
GitLab