diff --git a/examples2/grammar/anormalization.test.1.xml b/examples2/grammar/anormalization.test.1.xml index 9b53cf09c2f659a20741f7dc82521529b3888470..98ea657afd79e751da07ca19f15ee4ca447e7f26 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 e0a7d6a1d81b4fa2bf85714d6603848699c66f08..5a6a6659f25ea881d0a5bd7c6b352061b6e6d318 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 390d5d48c7f3e8827b5585cb2300bce25dc76973..4f27012836ff26be1c7f6eedfa45e0df29f04bfc 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 977a140f7ee78077828d30074cf4c6c49fb1611a..7da881d6b94ca8f5cece0d5ccf81ad9671fa06b5 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 c56f59132f44d076fd3b4b8a91c64bb983b37300..f2da5bbbbc63989732137aa7dc6d2fb98c31f8d2 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 8b29416174ab8aff8daa44276a306b1918664ea0..deaabad564ffa50763c3d2a733454718169f35ee 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 4ab06adb487cb3d8d742886c28d887c1e5a25859..9b1b0d33fd677aba249cb8d2f10e2dedfcbe9a30 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 a57665734a1d8ab8005dcaa20513494bb342b305..e7eacdc3f98ad5a33255a790d0f62cc143003d92 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 1fa9073b07bd239154d4c25f904f48550736ecb6..2a2a4dba8a2ac6bec5524a199c0a4e9060de669f 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 660439b7f2dc38f612790e1fcd8faa3ceb4435f1..b028685f7466e2d35d202c624b0f1971708df6bd 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>