From 0389f5bca600af92b0e5fa85dd668a64d2613417 Mon Sep 17 00:00:00 2001
From: Franck Dary <franck.dary@lis-lab.fr>
Date: Thu, 14 May 2020 10:40:27 +0200
Subject: [PATCH] generate new ts

---
 UD_any/data/getTransitionSets.py    | 46 ++++++++++++++++++++++++++---
 UD_any/taggerparser_base/machine.rm |  4 +--
 UD_any/taggerparser_incr/machine.rm |  4 +--
 UD_any/taggerparser_seq/machine.rm  |  4 +--
 4 files changed, 48 insertions(+), 10 deletions(-)

diff --git a/UD_any/data/getTransitionSets.py b/UD_any/data/getTransitionSets.py
index dd5ad30..53cf9e1 100755
--- a/UD_any/data/getTransitionSets.py
+++ b/UD_any/data/getTransitionSets.py
@@ -70,8 +70,8 @@ if __name__ == "__main__" :
       output.close()
 
     elif nameCol == "DEPREL" :
-      output = open("parser.ts", 'w', encoding='utf-8')
-      print("<parser> REDUCE", file=output)
+      output = open("parser_eager_rel_strict.ts", 'w', encoding='utf-8')
+      print("<parser> REDUCE_strict", file=output)
       labels = set()
       labelsList = []
       for line in open(colFile, "r", encoding='utf-8') :
@@ -84,8 +84,46 @@ if __name__ == "__main__" :
           labelsList.append(striped)
       labelsList.sort()
       for label in labelsList :
-        print("<parser> LEFT " + label, file=output)
-        print("<parser> RIGHT " + label, file=output)
+        print("<parser> eager_LEFT_rel " + label, file=output)
+        print("<parser> eager_RIGHT_rel " + label, file=output)
       print("<parser> SHIFT", file=output)
       output.close()
 
+      output = open("parser_eager_rel_relaxed.ts", 'w', encoding='utf-8')
+      print("<parser> REDUCE_relaxed", file=output)
+      labels = set()
+      labelsList = []
+      for line in open(colFile, "r", encoding='utf-8') :
+        striped = line.strip()
+        if len(striped) == 0 or striped == "root" or striped == "_" :
+          continue
+        label = striped
+        if label not in labels :
+          labels.add(striped)
+          labelsList.append(striped)
+      labelsList.sort()
+      for label in labelsList :
+        print("<parser> eager_LEFT_rel " + label, file=output)
+        print("<parser> eager_RIGHT_rel " + label, file=output)
+      print("<parser> SHIFT", file=output)
+      output.close()
+
+      output = open("parser_eager_strict.ts", 'w', encoding='utf-8')
+      print("<parser> REDUCE_strict", file=output)
+      print("<parser> eager_LEFT", file=output)
+      print("<parser> eager_RIGHT", file=output)
+      print("<parser> SHIFT", file=output)
+      output.close()
+
+      output = open("parser_eager.ts", 'w', encoding='utf-8')
+      print("<parser> REDUCE_relaxed", file=output)
+      print("<parser> eager_LEFT", file=output)
+      print("<parser> eager_RIGHT", file=output)
+      print("<parser> SHIFT", file=output)
+      output.close()
+
+      output = open("deprel.ts", 'w', encoding='utf-8')
+      for label in labelsList :
+        print("deprel " + label, file=output)
+      output.close()
+
diff --git a/UD_any/taggerparser_base/machine.rm b/UD_any/taggerparser_base/machine.rm
index 043b911..136bea2 100644
--- a/UD_any/taggerparser_base/machine.rm
+++ b/UD_any/taggerparser_base/machine.rm
@@ -1,7 +1,7 @@
 Name : Tagger, Parser and Segmenter baseline Machine
 Classifier : tagparser
 {
-	Transitions : {tagger,data/tagger.ts parser,data/parser.ts segmenter,data/segmenter.ts}
+	Transitions : {tagger,data/tagger.ts parser,data/parser_eager_rel_strict.ts segmenter,data/segmenter.ts}
 	LossMultiplier : {segmenter,10.0}
 	Network type : Modular
 #	AppliableTrans :  
@@ -25,7 +25,7 @@ Strategy
 	tagger tagger * 1
 	Block : End{cannotMove}
 	parser segmenter SHIFT 0
-	parser segmenter RIGHT 0
+	parser segmenter eager_RIGHT_rel 0
 	parser parser * 0
 	segmenter parser * 1
 }
diff --git a/UD_any/taggerparser_incr/machine.rm b/UD_any/taggerparser_incr/machine.rm
index 51c1b2e..f56b219 100644
--- a/UD_any/taggerparser_incr/machine.rm
+++ b/UD_any/taggerparser_incr/machine.rm
@@ -1,7 +1,7 @@
 Name : Tagger, Parser and Segmenter incremental Machine
 Classifier : taggerparser
 {
-	Transitions : {tagger,data/tagger.ts parser,data/parser.ts segmenter,data/segmenter.ts}
+	Transitions : {tagger,data/tagger.ts parser,data/parser_eager_rel_strict.ts segmenter,data/segmenter.ts}
 	LossMultiplier : {segmenter,10.0}
 	Network type : Modular
 #	AppliableTrans :  
@@ -24,7 +24,7 @@ Strategy
 	Block : End{cannotMove}
 	tagger parser * 0
 	parser segmenter SHIFT 0
-	parser segmenter RIGHT 0
+	parser segmenter eager_RIGHT_rel 0
 	parser parser * 0
 	segmenter tagger * 1
 }
diff --git a/UD_any/taggerparser_seq/machine.rm b/UD_any/taggerparser_seq/machine.rm
index e5db276..409f101 100644
--- a/UD_any/taggerparser_seq/machine.rm
+++ b/UD_any/taggerparser_seq/machine.rm
@@ -1,7 +1,7 @@
 Name : Tagger, Parser and Segmenter sequential Machine
 Classifier : tagparser
 {
-	Transitions : {tagger,data/tagger.ts parser,data/parser.ts segmenter,data/segmenter.ts}
+	Transitions : {tagger,data/tagger.ts parser,data/parser_eager_rel_strict.ts segmenter,data/segmenter.ts}
 	LossMultiplier : {segmenter,10.0}
 	Network type : Modular
 #	AppliableTrans :  
@@ -25,7 +25,7 @@ Strategy
 	tagger tagger * 1
 	Block : End{cannotMove}
 	parser segmenter SHIFT 0
-	parser segmenter RIGHT 0
+	parser segmenter eager_RIGHT_rel 0
 	parser parser * 0
 	segmenter parser * 1
 }
-- 
GitLab