You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by pk...@apache.org on 2016/01/04 11:10:43 UTC

svn commit: r1722822 [1/2] - in /uima/ruta/branches/UIMA-4408: example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ ruta-core-ext/src/main/java/org/apache/uima/ruta/block/ ruta-core-ext/src/main/java/org/ap...

Author: pkluegl
Date: Mon Jan  4 10:10:42 2016
New Revision: 1722822

URL: http://svn.apache.org/viewvc?rev=1722822&view=rev
Log:
UIMA-4408
- fixed tests
- renamed TypeExpression to AbstractTypeExpression, use ITypeExpression instead

Added:
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/AbstractTypeExpression.java
      - copied, changed from r1712996, uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/TypeExpression.java
Removed:
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/TypeExpression.java
Modified:
    uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunction.java
    uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunctionExtension.java
    uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunction.java
    uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunctionExtension.java
    uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunction.java
    uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunctionExtension.java
    uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/OnlyFirstBlock.java
    uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/fst/Automaton.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/RutaStream.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractMarkAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractStructureAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ActionFactory.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddFilterTypeAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddRetainTypeAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AssignAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ColorAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ConfigureAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/CreateAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FillAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FilterTypeAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/GatherAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ImplicitMarkAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFastAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFirstAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkLastAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkOnceAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveDuplicateAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveFilterTypeAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveRetainTypeAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RetainTypeAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ShiftAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/SplitAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/TransferAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/TrieAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/TrimAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/TypeSensitiveAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/UnmarkAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/UnmarkAllAction.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/AfterCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/BeforeCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/ConditionFactory.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/ContainsCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/ContextCountCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/CountCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/CurrentCountCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/EndsWithCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/IsCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/LastCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/NearCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/PartOfCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/PartOfNeqCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/PositionCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/StartsWithCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/TotalCountCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/TypeSentiveCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/condition/VoteCondition.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/AnnotationTypeExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/ExpressionFactory.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/NullExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/bool/BooleanTypeExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/feature/SimpleFeatureExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/list/SimpleTypeListExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/list/TypeListVariableExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/list/UntypedListExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/SimpleTypeExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/TypeFunctionExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/TypeVariableExpression.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/extensions/RutaExternalFactory.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/rule/RegExpRule.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/verbalize/ActionVerbalizer.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/verbalize/ExpressionVerbalizer.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/verbalize/ScriptVerbalizer.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationLabelExpressionTest.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/test/java/org/apache/uima/ruta/verbalizer/ActionVerbalizerTest.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/test/java/org/apache/uima/ruta/verbalizer/ConditionVerbalizerTest.java
    uima/ruta/branches/UIMA-4408/ruta-core/src/test/java/org/apache/uima/ruta/verbalizer/ExpressionVerbalizerTest.java

Modified: uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunction.java (original)
+++ uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunction.java Mon Jan  4 10:10:42 2016
@@ -22,19 +22,19 @@ package org.apache.uima.ruta.example.ext
 import org.apache.uima.cas.Type;
 import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.bool.BooleanFunctionExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 
 public class ExampleBooleanFunction extends BooleanFunctionExpression {
 
-  private final TypeExpression expr;
+  private final ITypeExpression expr;
 
-  public ExampleBooleanFunction(TypeExpression expr) {
+  public ExampleBooleanFunction(ITypeExpression expr) {
     super();
     this.expr = expr;
   }
 
-  public TypeExpression getExpr() {
+  public ITypeExpression getExpr() {
     return expr;
   }
 

Modified: uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunctionExtension.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunctionExtension.java (original)
+++ uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleBooleanFunctionExtension.java Mon Jan  4 10:10:42 2016
@@ -23,7 +23,7 @@ import java.util.List;
 
 import org.apache.uima.ruta.RutaElement;
 import org.apache.uima.ruta.expression.RutaExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.extensions.IRutaBooleanFunctionExtension;
 import org.apache.uima.ruta.extensions.RutaParseException;
 import org.apache.uima.ruta.verbalize.RutaVerbalizer;
@@ -45,11 +45,11 @@ public class ExampleBooleanFunctionExten
 
   public ExampleBooleanFunction createBooleanFunction(String name, List<RutaExpression> args)
           throws RutaParseException {
-    if (args == null || args.size() != 1 || !(args.get(0) instanceof TypeExpression)) {
+    if (args == null || args.size() != 1 || !(args.get(0) instanceof ITypeExpression)) {
       throw new RutaParseException(
               "ExampleBooleanFunction accepts only one TypeExpression as argument!");
     }
-    return new ExampleBooleanFunction((TypeExpression) args.get(0));
+    return new ExampleBooleanFunction((ITypeExpression) args.get(0));
   }
 
   public String verbalizeName(RutaElement element) {

Modified: uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunction.java (original)
+++ uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunction.java Mon Jan  4 10:10:42 2016
@@ -19,22 +19,21 @@
 
 package org.apache.uima.ruta.example.extensions;
 
-import org.apache.uima.ruta.RutaBlock;
 import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.number.NumberFunctionExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 
 public class ExampleNumberFunction extends NumberFunctionExpression {
 
-  private final TypeExpression expr;
+  private final ITypeExpression expr;
 
-  public ExampleNumberFunction(TypeExpression expr) {
+  public ExampleNumberFunction(ITypeExpression expr) {
     super();
     this.expr = expr;
   }
 
-  public TypeExpression getExpr() {
+  public ITypeExpression getExpr() {
     return expr;
   }
 

Modified: uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunctionExtension.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunctionExtension.java (original)
+++ uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleNumberFunctionExtension.java Mon Jan  4 10:10:42 2016
@@ -24,7 +24,7 @@ import java.util.List;
 import org.apache.uima.ruta.RutaElement;
 import org.apache.uima.ruta.expression.RutaExpression;
 import org.apache.uima.ruta.expression.number.NumberFunctionExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.extensions.IRutaNumberFunctionExtension;
 import org.apache.uima.ruta.extensions.RutaParseException;
 import org.apache.uima.ruta.verbalize.RutaVerbalizer;
@@ -46,10 +46,10 @@ public class ExampleNumberFunctionExtens
 
   public NumberFunctionExpression createNumberFunction(String name, List<RutaExpression> args)
           throws RutaParseException {
-    if (args == null || args.size() != 1 || !(args.get(0) instanceof TypeExpression)) {
+    if (args == null || args.size() != 1 || !(args.get(0) instanceof ITypeExpression)) {
       throw new RutaParseException("ExampleNumberFunction accepts only one TypeExpression as argument!");
     }
-    return new ExampleNumberFunction((TypeExpression) args.get(0));
+    return new ExampleNumberFunction((ITypeExpression) args.get(0));
   }
 
   public String verbalizeName(RutaElement element) {

Modified: uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunction.java (original)
+++ uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunction.java Mon Jan  4 10:10:42 2016
@@ -21,19 +21,19 @@ package org.apache.uima.ruta.example.ext
 
 import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.string.StringFunctionExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 
 public class ExampleStringFunction extends StringFunctionExpression {
 
-  private final TypeExpression expr;
+  private final ITypeExpression expr;
 
-  public ExampleStringFunction(TypeExpression expr) {
+  public ExampleStringFunction(ITypeExpression expr) {
     super();
     this.expr = expr;
   }
 
-  public TypeExpression getExpr() {
+  public ITypeExpression getExpr() {
     return expr;
   }
 

Modified: uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunctionExtension.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunctionExtension.java (original)
+++ uima/ruta/branches/UIMA-4408/example-projects/ruta-ep-example-extensions/src/main/java/org/apache/uima/ruta/example/extensions/ExampleStringFunctionExtension.java Mon Jan  4 10:10:42 2016
@@ -23,7 +23,7 @@ import java.util.List;
 
 import org.apache.uima.ruta.RutaElement;
 import org.apache.uima.ruta.expression.RutaExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.extensions.IRutaStringFunctionExtension;
 import org.apache.uima.ruta.extensions.RutaParseException;
 import org.apache.uima.ruta.verbalize.RutaVerbalizer;
@@ -45,10 +45,10 @@ public class ExampleStringFunctionExtens
 
   public ExampleStringFunction createStringFunction(String name, List<RutaExpression> args)
           throws RutaParseException {
-    if (args == null || args.size() != 1 || !(args.get(0) instanceof TypeExpression)) {
+    if (args == null || args.size() != 1 || !(args.get(0) instanceof ITypeExpression)) {
       throw new RutaParseException("ExampleStringFunction accepts only one TypeExpression as argument!");
     }
-    return new ExampleStringFunction((TypeExpression) args.get(0));
+    return new ExampleStringFunction((ITypeExpression) args.get(0));
   }
 
   public String verbalizeName(RutaElement element) {

Modified: uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/OnlyFirstBlock.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/OnlyFirstBlock.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/OnlyFirstBlock.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/OnlyFirstBlock.java Mon Jan  4 10:10:42 2016
@@ -21,7 +21,6 @@ package org.apache.uima.ruta.block;
 
 import java.util.List;
 
-import org.apache.uima.UimaContext;
 import org.apache.uima.cas.Type;
 import org.apache.uima.cas.text.AnnotationFS;
 import org.apache.uima.ruta.BlockApply;

Modified: uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/fst/Automaton.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/fst/Automaton.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/fst/Automaton.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core-ext/src/main/java/org/apache/uima/ruta/block/fst/Automaton.java Mon Jan  4 10:10:42 2016
@@ -29,17 +29,17 @@ import org.apache.uima.ruta.RutaBlock;
 import org.apache.uima.ruta.RutaStatement;
 import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.condition.AbstractRutaCondition;
-import org.apache.uima.ruta.expression.MatchReference;
+import org.apache.uima.ruta.expression.IRutaExpression;
 import org.apache.uima.ruta.expression.feature.FeatureExpression;
+import org.apache.uima.ruta.rule.ComposedRuleElementMatch;
 import org.apache.uima.ruta.rule.EvaluatedCondition;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
+import org.apache.uima.ruta.rule.RuleElementMatch;
+import org.apache.uima.ruta.rule.RuleMatch;
 import org.apache.uima.ruta.rule.RutaMatcher;
 import org.apache.uima.ruta.rule.RutaRule;
 import org.apache.uima.ruta.rule.RutaRuleElement;
-import org.apache.uima.ruta.rule.RuleMatch;
-import org.apache.uima.ruta.rule.RuleElementMatch;
-import org.apache.uima.ruta.rule.ComposedRuleElementMatch;
 import org.apache.uima.ruta.rule.RutaTypeMatcher;
 import org.apache.uima.ruta.verbalize.RutaVerbalizer;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
@@ -239,9 +239,8 @@ public class Automaton {
     RutaMatcher matcher = ((RutaRuleElement) element).getMatcher();
     if (matcher instanceof RutaTypeMatcher) {
       RutaTypeMatcher rtm = (RutaTypeMatcher) matcher;
-      MatchReference mr = (MatchReference) rtm.getExpression();
-      FeatureExpression featureExpression = mr.getFeatureExpression(context, stream);
-      if (featureExpression != null) {
+      IRutaExpression expression = rtm.getExpression();
+      if (expression instanceof FeatureExpression) {
         base = matcher.match(annotation, stream, element.getParent());
       }
     }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g Mon Jan  4 10:10:42 2016
@@ -83,7 +83,7 @@ import org.apache.uima.ruta.expression.r
 import org.apache.uima.ruta.expression.resource.WordTableExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
 import org.apache.uima.ruta.expression.string.StringFunctionFactory;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.extensions.RutaExternalFactory;
 import org.apache.uima.ruta.extensions.RutaParseRuntimeException;
 import org.apache.uima.ruta.rule.AbstractRuleElement;
@@ -763,7 +763,7 @@ options {
 }
 @init{
 	//RegExpRule rer = null;
-	Map<TypeExpression, IRutaExpression> map = new HashMap<TypeExpression, IRutaExpression>();
+	Map<ITypeExpression, IRutaExpression> map = new HashMap<ITypeExpression, IRutaExpression>();
 }
 	: 
 
@@ -787,8 +787,8 @@ options {
 
 regexpRule returns [RegExpRule stmt = null]
 @init{
-	Map<TypeExpression, INumberExpression> map = new HashMap<TypeExpression, INumberExpression>();
-	Map<TypeExpression, Map<IStringExpression, IRutaExpression>> fa = new HashMap<TypeExpression, Map<IStringExpression, IRutaExpression>>();
+	Map<ITypeExpression, INumberExpression> map = new HashMap<ITypeExpression, INumberExpression>();
+	Map<ITypeExpression, Map<IStringExpression, IRutaExpression>> fa = new HashMap<ITypeExpression, Map<IStringExpression, IRutaExpression>>();
 	Map<IStringExpression, IRutaExpression> fmap = null;
 }
 	:
@@ -1138,7 +1138,7 @@ typeListExpression returns [TypeListExpr
 
 simpleTypeListExpression returns [TypeListExpression expr = null]
 @init{
-	List<TypeExpression> list = new ArrayList<TypeExpression>();
+	List<ITypeExpression> list = new ArrayList<ITypeExpression>();
 }	:
 	LCURLY (e = simpleTypeExpression {list.add(e);} (COMMA e = simpleTypeExpression {list.add(e);})*)?  RCURLY
 	{expr = ExpressionFactory.createTypeListExpression(list);}
@@ -1163,7 +1163,7 @@ matchReference returns [MatchReference m
 	{mr = ExpressionFactory.createMatchReference(ref);}
 	;
 
-typeExpression returns [TypeExpression type = null]
+typeExpression returns [ITypeExpression type = null]
 options {
 	backtrack = true;
 }
@@ -1174,13 +1174,13 @@ options {
 	
 
 // not checked
-typeFunction returns [TypeExpression expr = null]
+typeFunction returns [ITypeExpression expr = null]
 	:
 	(e = externalTypeFunction)=> e = externalTypeFunction {expr = e;}
 	;
 
 // not checked
-externalTypeFunction returns [TypeExpression expr = null]
+externalTypeFunction returns [ITypeExpression expr = null]
 	:
 	{isTypeFunctionExtension(input.LT(1).getText())}? 
 	id = Identifier LPAREN
@@ -1190,7 +1190,7 @@ externalTypeFunction returns [TypeExpres
 	}
 	;
 
-simpleTypeExpression returns [TypeExpression type = null]
+simpleTypeExpression returns [ITypeExpression type = null]
 	:
 	{isVariableOfType($blockDeclaration::env,input.LT(1).getText(), "TYPE")}? var = Identifier 
 	{type = ExpressionFactory.createReferenceTypeExpression(var);}
@@ -1209,7 +1209,7 @@ matchExpression returns [FeatureExpressi
 featureExpression returns [FeatureExpression feat = null]
 @init{
 List<Token> fs = new ArrayList<Token>();
-TypeExpression te = null;
+ITypeExpression te = null;
 }
 	:
 	match = dottedId2 
@@ -1268,15 +1268,15 @@ listVariable returns [Token var = null]
 	;
 
 
-//typeExpressionOr returns [TypeExpression type = null]
-//@init {List<TypeExpression> exprs = new ArrayList<TypeExpression>();}
+//typeExpressionOr returns [ITypeExpression type = null]
+//@init {List<ITypeExpression> exprs = new ArrayList<ITypeExpression>();}
 //	:
 //	LBRACK e = typeExpressionAnd{exprs.add(e);} ( COMMA e = typeExpressionAnd{exprs.add(e);} )* RBRACK
 //	{type = ExpressionFactory.createOrTypeExpression(exprs);}
 //	;
 
-//typeExpressionAnd returns [TypeExpression type = null]
-//@init {List<TypeExpression> exprs = new ArrayList<TypeExpression>();}
+//typeExpressionAnd returns [ITypeExpression type = null]
+//@init {List<ITypeExpression> exprs = new ArrayList<ITypeExpression>();}
 //	:
 //	LBRACK e = simpleTypeExpression{exprs.add(e);} ( SEMI e = simpleTypeExpression{exprs.add(e);} )* RBRACK
 //	{type = ExpressionFactory.createAndTypeExpression(exprs);}
@@ -1880,7 +1880,7 @@ actionReplace returns [AbstractRutaActio
 
 actionRetainType returns [AbstractRutaAction action = null]
 @init {
-List<TypeExpression> list = new ArrayList<TypeExpression>();
+List<ITypeExpression> list = new ArrayList<ITypeExpression>();
 }
     :   
     RETAINTYPE (LPAREN id = typeExpression {list.add(id);} (COMMA id = typeExpression {list.add(id);})* RPAREN)?
@@ -1891,7 +1891,7 @@ List<TypeExpression> list = new ArrayLis
 
 actionFilterType returns [AbstractRutaAction action = null]
 @init {
-List<TypeExpression> list = new ArrayList<TypeExpression>();
+List<ITypeExpression> list = new ArrayList<ITypeExpression>();
 }
     :   
     FILTERTYPE (LPAREN id = typeExpression {list.add(id);} (COMMA id = typeExpression {list.add(id);})* RPAREN)?
@@ -1988,7 +1988,7 @@ actionGreedyAnchoring returns [AbstractR
 
 actionTrim returns [AbstractRutaAction action = null]
 @init {
-  List<TypeExpression> types = new ArrayList<TypeExpression>();
+  List<ITypeExpression> types = new ArrayList<ITypeExpression>();
 }
     :
     name = TRIM LPAREN 
@@ -2133,7 +2133,7 @@ actionClear returns [AbstractRutaAction
 
 actionAddRetainType returns [AbstractRutaAction action = null]
 @init {
-List<TypeExpression> list = new ArrayList<TypeExpression>();
+List<ITypeExpression> list = new ArrayList<ITypeExpression>();
 }
     :
     ADDRETAINTYPE (LPAREN id = typeExpression {list.add(id);} (COMMA id = typeExpression {list.add(id);})* RPAREN)
@@ -2142,7 +2142,7 @@ List<TypeExpression> list = new ArrayLis
 
 actionRemoveRetainType returns [AbstractRutaAction action = null]
 @init {
-List<TypeExpression> list = new ArrayList<TypeExpression>();
+List<ITypeExpression> list = new ArrayList<ITypeExpression>();
 }
     :
     REMOVERETAINTYPE (LPAREN id = typeExpression {list.add(id);} (COMMA id = typeExpression {list.add(id);})* RPAREN)
@@ -2151,7 +2151,7 @@ List<TypeExpression> list = new ArrayLis
 
 actionAddFilterType returns [AbstractRutaAction action = null]
 @init {
-List<TypeExpression> list = new ArrayList<TypeExpression>();
+List<ITypeExpression> list = new ArrayList<ITypeExpression>();
 }
     :
     ADDFILTERTYPE (LPAREN id = typeExpression {list.add(id);} (COMMA id = typeExpression {list.add(id);})* RPAREN)
@@ -2160,7 +2160,7 @@ List<TypeExpression> list = new ArrayLis
 
 actionRemoveFilterType returns [AbstractRutaAction action = null]
 @init {
-List<TypeExpression> list = new ArrayList<TypeExpression>();
+List<ITypeExpression> list = new ArrayList<ITypeExpression>();
 }
     :
     REMOVEFILTERTYPE (LPAREN id = typeExpression {list.add(id);} (COMMA id = typeExpression {list.add(id);})* RPAREN)

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/RutaStream.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/RutaStream.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/RutaStream.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/RutaStream.java Mon Jan  4 10:10:42 2016
@@ -46,6 +46,7 @@ import org.apache.uima.cas.text.Annotati
 import org.apache.uima.jcas.JCas;
 import org.apache.uima.jcas.tcas.Annotation;
 import org.apache.uima.ruta.engine.RutaEngine;
+import org.apache.uima.ruta.expression.AnnotationTypeExpression;
 import org.apache.uima.ruta.expression.IRutaExpression;
 import org.apache.uima.ruta.expression.bool.IBooleanExpression;
 import org.apache.uima.ruta.expression.feature.FeatureExpression;
@@ -953,20 +954,26 @@ public class RutaStream extends FSIterat
       IBooleanExpression booleanExpr = (IBooleanExpression) value;
       boolean v = booleanExpr.getBooleanValue(context, this);
       annotation.setBooleanValue(feature, v);
-    } else if (value instanceof ITypeExpression && !feature.getRange().isPrimitive()) {
-      ITypeExpression typeExpr = (ITypeExpression) value;
-      Type t = typeExpr.getType(context, this);
-      List<AnnotationFS> inWindow = this.getAnnotationsInWindow(context.getAnnotation(), t);
-      if (feature.getRange().isArray()) {
-        annotation.setFeatureValue(feature, UIMAUtils.toFSArray(this.getJCas(), inWindow));
-      } else {
-        if (inWindow != null && !inWindow.isEmpty()) {
-          AnnotationFS a = inWindow.get(0);
-          annotation.setFeatureValue(feature, a);
+    } else if (value instanceof AnnotationTypeExpression && !feature.getRange().isPrimitive()) {
+      AnnotationTypeExpression ate = (AnnotationTypeExpression) value;
+      AnnotationFS a = ate.getAnnotation(context, this);
+      if (a != null) {
+        // TODO support annotation list expressions
+        if (feature.getRange().isArray()) {
+          List<AnnotationFS> c = new ArrayList<AnnotationFS>();
+          c.add(a);
+          annotation.setFeatureValue(feature, UIMAUtils.toFSArray(this.getJCas(), c));
         } else {
-          annotation.setFeatureValue(feature, null);
+          annotation.setFeatureValue(feature, a);
         }
+      } else {
+        Type t = ate.getType(context, this);
+        assignAnnotationByTypeInWindow(annotation, feature, context, t);
       }
+    } else if (value instanceof ITypeExpression && !feature.getRange().isPrimitive()) {
+      ITypeExpression typeExpr = (ITypeExpression) value;
+      Type t = typeExpr.getType(context, this);
+      assignAnnotationByTypeInWindow(annotation, feature, context, t);
     } else if (value instanceof GenericFeatureExpression && !feature.getRange().isPrimitive()) {
       FeatureExpression fe = ((GenericFeatureExpression) value).getFeatureExpression();
       ITypeExpression typeExpr = fe.getTypeExpr(context, this);
@@ -996,4 +1003,20 @@ public class RutaStream extends FSIterat
       }
     }
   }
+
+  private void assignAnnotationByTypeInWindow(AnnotationFS annotation, Feature feature,
+          MatchContext context, Type type) {
+
+    List<AnnotationFS> inWindow = this.getAnnotationsInWindow(context.getAnnotation(), type);
+    if (feature.getRange().isArray()) {
+      annotation.setFeatureValue(feature, UIMAUtils.toFSArray(this.getJCas(), inWindow));
+    } else {
+      if (inWindow != null && !inWindow.isEmpty()) {
+        AnnotationFS a = inWindow.get(0);
+        annotation.setFeatureValue(feature, a);
+      } else {
+        annotation.setFeatureValue(feature, null);
+      }
+    }
+  }
 }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractMarkAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractMarkAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractMarkAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractMarkAction.java Mon Jan  4 10:10:42 2016
@@ -27,13 +27,13 @@ import org.apache.uima.cas.text.Annotati
 import org.apache.uima.jcas.tcas.Annotation;
 import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.number.INumberExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 
 public abstract class AbstractMarkAction extends TypeSensitiveAction {
 
-  public AbstractMarkAction(TypeExpression type) {
+  public AbstractMarkAction(ITypeExpression type) {
     super(type);
   }
 

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractStructureAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractStructureAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractStructureAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractStructureAction.java Mon Jan  4 10:10:42 2016
@@ -41,7 +41,6 @@ import org.apache.uima.ruta.expression.f
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
 import org.apache.uima.ruta.expression.type.ITypeExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.utils.UIMAUtils;
 
@@ -58,7 +57,7 @@ public abstract class AbstractStructureA
       String value = each.getKey().getStringValue(context, stream);
       map.put(value, each.getValue());
     }
-
+    // TODO use method in RutaStream?
     TypeSystem typeSystem = stream.getCas().getTypeSystem();
     JCas jcas = stream.getJCas();
     List<?> featuresList = structure.getType().getFeatures();
@@ -69,9 +68,9 @@ public abstract class AbstractStructureA
       Object valueObject = map.get(shortFName);
       Type range = targetFeature.getRange();
       if (valueObject != null) {
-        if (valueObject instanceof TypeExpression
+        if (valueObject instanceof ITypeExpression
                 && range.getName().equals(UIMAConstants.TYPE_STRING)) {
-          TypeExpression type = (TypeExpression) valueObject;
+          ITypeExpression type = (ITypeExpression) valueObject;
           List<AnnotationFS> annotationsInWindow = stream.getAnnotationsInWindow(matchedAnnotation,
                   type.getType(context, stream));
           if (annotationsInWindow != null && !annotationsInWindow.isEmpty()) {
@@ -126,8 +125,8 @@ public abstract class AbstractStructureA
                 && range.getName().equals(UIMAConstants.TYPE_BOOLEAN)) {
           structure.setBooleanValue(targetFeature,
                   ((IBooleanExpression) valueObject).getBooleanValue(context, stream));
-        } else if (valueObject instanceof TypeExpression) {
-          TypeExpression type = (TypeExpression) valueObject;
+        } else if (valueObject instanceof ITypeExpression) {
+          ITypeExpression type = (ITypeExpression) valueObject;
           List<AnnotationFS> annotationsInWindow = stream.getAnnotationsInWindow(matchedAnnotation,
                   type.getType(context, stream));
           if (typeSystem.subsumes(jcas.getCasType(FSArray.type), range)) {

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ActionFactory.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ActionFactory.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ActionFactory.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ActionFactory.java Mon Jan  4 10:10:42 2016
@@ -35,14 +35,14 @@ import org.apache.uima.ruta.expression.n
 import org.apache.uima.ruta.expression.resource.WordListExpression;
 import org.apache.uima.ruta.expression.resource.WordTableExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 
 public class ActionFactory {
 
   private ActionFactory() {
   }
 
-  public static AbstractRutaAction createColorAction(TypeExpression typeExpr,
+  public static AbstractRutaAction createColorAction(ITypeExpression typeExpr,
           IStringExpression bgcolor, IStringExpression fgcolor, IBooleanExpression selected,
           RutaBlock parent) {
     return new ColorAction(typeExpr, bgcolor, fgcolor, selected);
@@ -52,23 +52,23 @@ public class ActionFactory {
     return new DelAction();
   }
 
-  public static AbstractRutaAction createMarkFastAction(TypeExpression type,
+  public static AbstractRutaAction createMarkFastAction(ITypeExpression type,
           WordListExpression list, IBooleanExpression ignore, INumberExpression ignoreLength,
           IBooleanExpression ignoreWS, RutaBlock parent) {
     return new MarkFastAction(type, list, ignore, ignoreLength, ignoreWS);
   }
 
-  public static AbstractRutaAction createMarkFastAction(TypeExpression type,
+  public static AbstractRutaAction createMarkFastAction(ITypeExpression type,
           StringListExpression list, IBooleanExpression ignore, INumberExpression ignoreLength,
           IBooleanExpression ignoreWS, RutaBlock env) {
     return new MarkFastAction(type, list, ignore, ignoreLength, ignoreWS);
   }
 
-  public static AbstractRutaAction createMarkLastAction(TypeExpression type, RutaBlock parent) {
+  public static AbstractRutaAction createMarkLastAction(ITypeExpression type, RutaBlock parent) {
     return new MarkLastAction(type);
   }
 
-  public static AbstractRutaAction createRetainTypeAction(List<TypeExpression> types,
+  public static AbstractRutaAction createRetainTypeAction(List<ITypeExpression> types,
           RutaBlock parent) {
     return new RetainTypeAction(types);
   }
@@ -80,13 +80,13 @@ public class ActionFactory {
     return new LogAction(expr, level);
   }
 
-  public static AbstractRutaAction createMarkAction(INumberExpression score, TypeExpression type,
+  public static AbstractRutaAction createMarkAction(INumberExpression score, ITypeExpression type,
           List<INumberExpression> list, RutaBlock parent) {
     return new MarkAction(type, score, list);
   }
 
   public static AbstractRutaAction createMarkOnceAction(INumberExpression score,
-          TypeExpression type, List<INumberExpression> list, RutaBlock env) {
+          ITypeExpression type, List<INumberExpression> list, RutaBlock env) {
     return new MarkOnceAction(type, score, list);
   }
 
@@ -94,19 +94,19 @@ public class ActionFactory {
     return new ReplaceAction(lit);
   }
 
-  public static AbstractRutaAction createCreateAction(TypeExpression typeExpr,
+  public static AbstractRutaAction createCreateAction(ITypeExpression typeExpr,
           Map<IStringExpression, IRutaExpression> map, List<INumberExpression> indexes,
           RutaBlock parent) {
     return new CreateAction(typeExpr, map, indexes);
   }
 
-  public static AbstractRutaAction createGatherAction(TypeExpression typeExpr,
+  public static AbstractRutaAction createGatherAction(ITypeExpression typeExpr,
           Map<IStringExpression, IRutaExpression> map, List<INumberExpression> indexes,
           RutaBlock parent) {
     return new GatherAction(typeExpr, map, indexes);
   }
 
-  public static AbstractRutaAction createFillAction(TypeExpression type,
+  public static AbstractRutaAction createFillAction(ITypeExpression type,
           Map<IStringExpression, IRutaExpression> map, RutaBlock parent) {
     return new FillAction(type, map);
   }
@@ -124,27 +124,27 @@ public class ActionFactory {
     return new AssignAction(nv.getText(), e);
   }
 
-  public static AbstractRutaAction createFilterTypeAction(List<TypeExpression> types,
+  public static AbstractRutaAction createFilterTypeAction(List<ITypeExpression> types,
           RutaBlock parent) {
     return new FilterTypeAction(types);
   }
 
-  public static AbstractRutaAction createAddRetainTypeAction(List<TypeExpression> types,
+  public static AbstractRutaAction createAddRetainTypeAction(List<ITypeExpression> types,
           RutaBlock env) {
     return new AddRetainTypeAction(types);
   }
 
-  public static AbstractRutaAction createRemoveRetainTypeAction(List<TypeExpression> types,
+  public static AbstractRutaAction createRemoveRetainTypeAction(List<ITypeExpression> types,
           RutaBlock env) {
     return new RemoveRetainTypeAction(types);
   }
 
-  public static AbstractRutaAction createAddFilterTypeAction(List<TypeExpression> types,
+  public static AbstractRutaAction createAddFilterTypeAction(List<ITypeExpression> types,
           RutaBlock env) {
     return new AddFilterTypeAction(types);
   }
 
-  public static AbstractRutaAction createRemoveFilterTypeAction(List<TypeExpression> types,
+  public static AbstractRutaAction createRemoveFilterTypeAction(List<ITypeExpression> types,
           RutaBlock env) {
     return new RemoveFilterTypeAction(types);
   }
@@ -154,12 +154,12 @@ public class ActionFactory {
     return new SetFeatureAction(f, v);
   }
 
-  public static AbstractRutaAction createUnmarkAction(TypeExpression f,
+  public static AbstractRutaAction createUnmarkAction(ITypeExpression f,
           List<INumberExpression> list, IBooleanExpression b, RutaBlock env) {
     return new UnmarkAction(f, list, b);
   }
 
-  public static AbstractRutaAction createUnmarkAllAction(TypeExpression f, TypeListExpression list,
+  public static AbstractRutaAction createUnmarkAllAction(ITypeExpression f, TypeListExpression list,
           RutaBlock env) {
     return new UnmarkAllAction(f, list);
   }
@@ -173,7 +173,7 @@ public class ActionFactory {
     return new VariableAction(id.getText());
   }
 
-  public static AbstractRutaAction createTransferAction(TypeExpression f, RutaBlock env) {
+  public static AbstractRutaAction createTransferAction(ITypeExpression f, RutaBlock env) {
     return new TransferAction(f);
   }
 
@@ -189,7 +189,7 @@ public class ActionFactory {
     return new ExecAction(ns, tl, view);
   }
 
-  public static AbstractRutaAction createMarkTableAction(TypeExpression structure,
+  public static AbstractRutaAction createMarkTableAction(ITypeExpression structure,
           INumberExpression index, WordTableExpression table,
           Map<IStringExpression, INumberExpression> map, IBooleanExpression ignoreCase,
           INumberExpression ignoreLength, IStringExpression ignoreChar,
@@ -242,7 +242,7 @@ public class ActionFactory {
     return new ClearAction(var == null ? null : var.getText());
   }
 
-  public static AbstractRutaAction createShiftAction(TypeExpression type,
+  public static AbstractRutaAction createShiftAction(ITypeExpression type,
           List<INumberExpression> list, RutaBlock env) {
     return new ShiftAction(type, list);
   }
@@ -252,7 +252,7 @@ public class ActionFactory {
     return new DynamicAnchoringAction(active, penalty, factor);
   }
 
-  public static AbstractRutaAction createTrimAction(List<TypeExpression> types,
+  public static AbstractRutaAction createTrimAction(List<ITypeExpression> types,
           TypeListExpression typeList, RutaBlock env) {
     return new TrimAction(types, typeList);
   }
@@ -261,11 +261,11 @@ public class ActionFactory {
     return new ImplicitFeatureAction(fae);
   }
 
-  public static AbstractRutaAction createAction(TypeExpression te) {
+  public static AbstractRutaAction createAction(ITypeExpression te) {
     return new ImplicitMarkAction(te);
   }
 
-  public static AbstractRutaAction createMarkFirstAction(TypeExpression type, RutaBlock env) {
+  public static AbstractRutaAction createMarkFirstAction(ITypeExpression type, RutaBlock env) {
     return new MarkFirstAction(type);
   }
 
@@ -274,7 +274,7 @@ public class ActionFactory {
     return new GreedyAnchoringAction(active, active2);
   }
 
-  public static AbstractRutaAction createSplitAction(TypeExpression type,
+  public static AbstractRutaAction createSplitAction(ITypeExpression type,
           IBooleanExpression complete, IBooleanExpression appendToBegin,
           IBooleanExpression appendToEnd, RutaBlock env) {
     return new SplitAction(type, complete, appendToBegin, appendToEnd);

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddAction.java Mon Jan  4 10:10:42 2016
@@ -30,7 +30,7 @@ import org.apache.uima.ruta.expression.b
 import org.apache.uima.ruta.expression.list.ListExpression;
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
@@ -74,8 +74,8 @@ public class AddAction extends AbstractR
         list.add(((INumberExpression) each).getIntegerValue(context, stream));
       } else if (vgtype.equals(Double.class) && each instanceof INumberExpression) {
         list.add(((INumberExpression) each).getDoubleValue(context, stream));
-      } else if (vgtype.equals(Type.class) && each instanceof TypeExpression) {
-        list.add(((TypeExpression) each).getType(context, stream));
+      } else if (vgtype.equals(Type.class) && each instanceof ITypeExpression) {
+        list.add(((ITypeExpression) each).getType(context, stream));
       } else if (vgtype.equals(String.class) && each instanceof IStringExpression) {
         list.add(((IStringExpression) each).getStringValue(context, stream));
       }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddFilterTypeAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddFilterTypeAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddFilterTypeAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddFilterTypeAction.java Mon Jan  4 10:10:42 2016
@@ -24,19 +24,13 @@ import java.util.List;
 
 import org.apache.uima.cas.Type;
 import org.apache.uima.ruta.RutaStream;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
 
 public class AddFilterTypeAction extends AbstractRutaAction {
 
-  public List<TypeExpression> getList() {
-    return list;
-  }
-
-  private List<TypeExpression> list;
-
-  public AddFilterTypeAction(List<TypeExpression> list) {
+  public AddFilterTypeAction(List<ITypeExpression> list) {
     super();
     this.list = list;
   }
@@ -44,10 +38,17 @@ public class AddFilterTypeAction extends
   @Override
   public void execute(MatchContext context, RutaStream stream, InferenceCrowd crowd) {
     List<Type> types = new ArrayList<Type>();
-    for (TypeExpression each : list) {
+    for (ITypeExpression each : list) {
       types.add(each.getType(context, stream));
     }
     stream.addFilterTypes(types);
   }
 
+  public List<ITypeExpression> getList() {
+    return list;
+  }
+
+  private List<ITypeExpression> list;
+
+  
 }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddRetainTypeAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddRetainTypeAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddRetainTypeAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AddRetainTypeAction.java Mon Jan  4 10:10:42 2016
@@ -24,19 +24,13 @@ import java.util.List;
 
 import org.apache.uima.cas.Type;
 import org.apache.uima.ruta.RutaStream;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
 
 public class AddRetainTypeAction extends AbstractRutaAction {
 
-  public List<TypeExpression> getList() {
-    return list;
-  }
-
-  private List<TypeExpression> list;
-
-  public AddRetainTypeAction(List<TypeExpression> list) {
+  public AddRetainTypeAction(List<ITypeExpression> list) {
     super();
     this.list = list;
   }
@@ -44,10 +38,15 @@ public class AddRetainTypeAction extends
   @Override
   public void execute(MatchContext context, RutaStream stream, InferenceCrowd crowd) {
     List<Type> types = new ArrayList<Type>();
-    for (TypeExpression each : list) {
+    for (ITypeExpression each : list) {
       types.add(each.getType(context, stream));
     }
     stream.addRetainTypes(types);
   }
 
+  public List<ITypeExpression> getList() {
+    return list;
+  }
+  
+  private List<ITypeExpression> list;
 }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AssignAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AssignAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AssignAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/AssignAction.java Mon Jan  4 10:10:42 2016
@@ -27,7 +27,7 @@ import org.apache.uima.ruta.expression.I
 import org.apache.uima.ruta.expression.bool.IBooleanExpression;
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
@@ -56,8 +56,8 @@ public class AssignAction extends Abstra
     } else if (clazz.equals(Integer.class) && expression instanceof INumberExpression) {
       int v = ((INumberExpression) expression).getIntegerValue(context, stream);
       environment.setVariableValue(var, v);
-    } else if (clazz.equals(Type.class) && expression instanceof TypeExpression) {
-      Type v = ((TypeExpression) expression).getType(context, stream);
+    } else if (clazz.equals(Type.class) && expression instanceof ITypeExpression) {
+      Type v = ((ITypeExpression) expression).getType(context, stream);
       environment.setVariableValue(var, v);
     } else if (clazz.equals(Boolean.class) && expression instanceof IBooleanExpression) {
       boolean v = ((IBooleanExpression) expression).getBooleanValue(context, stream);

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ColorAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ColorAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ColorAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ColorAction.java Mon Jan  4 10:10:42 2016
@@ -26,7 +26,7 @@ import org.apache.uima.ruta.expression.b
 import org.apache.uima.ruta.expression.bool.SimpleBooleanExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
 import org.apache.uima.ruta.expression.string.SimpleStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.type.RutaColoring;
@@ -40,9 +40,9 @@ public class ColorAction extends Abstrac
 
   private IBooleanExpression selected;
 
-  private TypeExpression type;
+  private ITypeExpression type;
 
-  public ColorAction(TypeExpression type, IStringExpression bgcolor, IStringExpression fgcolor,
+  public ColorAction(ITypeExpression type, IStringExpression bgcolor, IStringExpression fgcolor,
           IBooleanExpression selected) {
     super();
     this.type = type;
@@ -80,7 +80,7 @@ public class ColorAction extends Abstrac
     return selected;
   }
 
-  public TypeExpression getType() {
+  public ITypeExpression getType() {
     return type;
   }
 

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ConfigureAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ConfigureAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ConfigureAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ConfigureAction.java Mon Jan  4 10:10:42 2016
@@ -41,7 +41,7 @@ import org.apache.uima.ruta.expression.l
 import org.apache.uima.ruta.expression.list.TypeListExpression;
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
@@ -96,8 +96,8 @@ public class ConfigureAction extends Abs
               IStringExpression se = (IStringExpression) value;
               String string = se.getStringValue(context, stream);
               targetEngine.setConfigParameterValue(stringValue, string);
-            } else if (value instanceof TypeExpression) {
-              TypeExpression te = (TypeExpression) value;
+            } else if (value instanceof ITypeExpression) {
+              ITypeExpression te = (ITypeExpression) value;
               Type t = te.getType(context, stream);
               targetEngine.setConfigParameterValue(stringValue, t.getName());
             }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/CreateAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/CreateAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/CreateAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/CreateAction.java Mon Jan  4 10:10:42 2016
@@ -30,7 +30,7 @@ import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.IRutaExpression;
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.rule.RuleMatch;
@@ -38,13 +38,13 @@ import org.apache.uima.ruta.visitor.Infe
 
 public class CreateAction extends AbstractStructureAction {
 
-  private TypeExpression structureType;
+  private ITypeExpression structureType;
 
   private Map<IStringExpression, IRutaExpression> features;
 
   private List<INumberExpression> indexes;
 
-  public CreateAction(TypeExpression structureType,
+  public CreateAction(ITypeExpression structureType,
           Map<IStringExpression, IRutaExpression> features, List<INumberExpression> indexes) {
     super();
     this.structureType = structureType;
@@ -77,7 +77,7 @@ public class CreateAction extends Abstra
     }
   }
 
-  public TypeExpression getStructureType() {
+  public ITypeExpression getStructureType() {
     return structureType;
   }
 

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FillAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FillAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FillAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FillAction.java Mon Jan  4 10:10:42 2016
@@ -27,7 +27,7 @@ import org.apache.uima.cas.text.Annotati
 import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.IRutaExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.rule.RuleMatch;
@@ -37,9 +37,9 @@ public class FillAction extends Abstract
 
   private Map<IStringExpression, IRutaExpression> features;
 
-  private TypeExpression structureType;
+  private ITypeExpression structureType;
 
-  public FillAction(TypeExpression structureType, Map<IStringExpression, IRutaExpression> features) {
+  public FillAction(ITypeExpression structureType, Map<IStringExpression, IRutaExpression> features) {
     super();
     this.structureType = structureType;
     this.features = features;
@@ -86,7 +86,7 @@ public class FillAction extends Abstract
     return features;
   }
 
-  public TypeExpression getStructureType() {
+  public ITypeExpression getStructureType() {
     return structureType;
   }
 

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FilterTypeAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FilterTypeAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FilterTypeAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/FilterTypeAction.java Mon Jan  4 10:10:42 2016
@@ -24,19 +24,14 @@ import java.util.List;
 
 import org.apache.uima.cas.Type;
 import org.apache.uima.ruta.RutaStream;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
 
 public class FilterTypeAction extends AbstractRutaAction {
 
-  public List<TypeExpression> getList() {
-    return list;
-  }
-
-  private List<TypeExpression> list;
 
-  public FilterTypeAction(List<TypeExpression> list) {
+  public FilterTypeAction(List<ITypeExpression> list) {
     super();
     this.list = list;
   }
@@ -45,10 +40,16 @@ public class FilterTypeAction extends Ab
   public void execute(MatchContext context, RutaStream stream, InferenceCrowd crowd) {
     context.getElement();
     List<Type> types = new ArrayList<Type>();
-    for (TypeExpression each : list) {
+    for (ITypeExpression each : list) {
       types.add(each.getType(context, stream));
     }
     stream.filterTypes(types);
   }
 
+  public List<ITypeExpression> getList() {
+    return list;
+  }
+  
+  private List<ITypeExpression> list;
+
 }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/GatherAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/GatherAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/GatherAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/GatherAction.java Mon Jan  4 10:10:42 2016
@@ -42,7 +42,7 @@ import org.apache.uima.ruta.expression.I
 import org.apache.uima.ruta.expression.list.NumberListExpression;
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.rule.RuleElementMatch;
@@ -53,13 +53,13 @@ import org.apache.uima.ruta.visitor.Infe
 
 public class GatherAction extends AbstractStructureAction {
 
-  private TypeExpression structureType;
+  private ITypeExpression structureType;
 
   private Map<IStringExpression, IRutaExpression> features;
 
   private List<INumberExpression> indexes;
 
-  public GatherAction(TypeExpression structureType,
+  public GatherAction(ITypeExpression structureType,
           Map<IStringExpression, IRutaExpression> features, List<INumberExpression> indexes) {
     super();
     this.structureType = structureType;
@@ -210,7 +210,7 @@ public class GatherAction extends Abstra
   }
 
 
-  public TypeExpression getStructureType() {
+  public ITypeExpression getStructureType() {
     return structureType;
   }
 

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ImplicitMarkAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ImplicitMarkAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ImplicitMarkAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ImplicitMarkAction.java Mon Jan  4 10:10:42 2016
@@ -23,7 +23,7 @@ import java.util.List;
 
 import org.apache.uima.cas.text.AnnotationFS;
 import org.apache.uima.ruta.RutaStream;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.rule.RuleMatch;
@@ -31,7 +31,7 @@ import org.apache.uima.ruta.visitor.Infe
 
 public class ImplicitMarkAction extends AbstractMarkAction {
 
-  public ImplicitMarkAction(TypeExpression te) {
+  public ImplicitMarkAction(ITypeExpression te) {
     super(te);
   }
 

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkAction.java Mon Jan  4 10:10:42 2016
@@ -26,7 +26,7 @@ import org.apache.uima.cas.text.Annotati
 import org.apache.uima.jcas.tcas.Annotation;
 import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.number.INumberExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.rule.RuleMatch;
@@ -39,7 +39,7 @@ public class MarkAction extends Abstract
 
   protected final List<INumberExpression> list;
 
-  public MarkAction(TypeExpression type, INumberExpression scoreValue, List<INumberExpression> list) {
+  public MarkAction(ITypeExpression type, INumberExpression scoreValue, List<INumberExpression> list) {
     super(type);
     this.score = scoreValue;
     this.list = list;

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFastAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFastAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFastAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFastAction.java Mon Jan  4 10:10:42 2016
@@ -30,7 +30,7 @@ import org.apache.uima.ruta.expression.l
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.number.SimpleNumberExpression;
 import org.apache.uima.ruta.expression.resource.WordListExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.resource.RutaWordList;
 import org.apache.uima.ruta.resource.TreeWordList;
 import org.apache.uima.ruta.rule.MatchContext;
@@ -50,7 +50,7 @@ public class MarkFastAction extends Abst
 
   private IBooleanExpression ignoreWS;
 
-  public MarkFastAction(TypeExpression type, WordListExpression list, IBooleanExpression ignore,
+  public MarkFastAction(ITypeExpression type, WordListExpression list, IBooleanExpression ignore,
           INumberExpression ignoreLength, IBooleanExpression ignoreWS) {
     super(type);
     this.list = list;
@@ -60,7 +60,7 @@ public class MarkFastAction extends Abst
     this.ignoreWS = ignoreWS == null ? new SimpleBooleanExpression(true) : ignoreWS;
   }
 
-  public MarkFastAction(TypeExpression type, StringListExpression list, IBooleanExpression ignore,
+  public MarkFastAction(ITypeExpression type, StringListExpression list, IBooleanExpression ignore,
           INumberExpression ignoreLength, IBooleanExpression ignoreWS) {
     super(type);
     this.stringList = list;

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFirstAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFirstAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFirstAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkFirstAction.java Mon Jan  4 10:10:42 2016
@@ -23,7 +23,7 @@ import java.util.List;
 
 import org.apache.uima.cas.text.AnnotationFS;
 import org.apache.uima.ruta.RutaStream;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.rule.RuleMatch;
@@ -32,7 +32,7 @@ import org.apache.uima.ruta.visitor.Infe
 
 public class MarkFirstAction extends AbstractMarkAction {
 
-  public MarkFirstAction(TypeExpression type) {
+  public MarkFirstAction(ITypeExpression type) {
     super(type);
   }
 

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkLastAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkLastAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkLastAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkLastAction.java Mon Jan  4 10:10:42 2016
@@ -23,7 +23,7 @@ import java.util.List;
 
 import org.apache.uima.cas.text.AnnotationFS;
 import org.apache.uima.ruta.RutaStream;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.rule.RuleMatch;
@@ -32,7 +32,7 @@ import org.apache.uima.ruta.visitor.Infe
 
 public class MarkLastAction extends AbstractMarkAction {
 
-  public MarkLastAction(TypeExpression type) {
+  public MarkLastAction(ITypeExpression type) {
     super(type);
   }
 

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkOnceAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkOnceAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkOnceAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkOnceAction.java Mon Jan  4 10:10:42 2016
@@ -25,7 +25,7 @@ import org.apache.uima.cas.Type;
 import org.apache.uima.cas.text.AnnotationFS;
 import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.number.INumberExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.rule.RuleMatch;
@@ -34,7 +34,7 @@ import org.apache.uima.ruta.visitor.Infe
 
 public class MarkOnceAction extends MarkAction {
 
-  public MarkOnceAction(TypeExpression type, INumberExpression scoreValue,
+  public MarkOnceAction(ITypeExpression type, INumberExpression scoreValue,
           List<INumberExpression> list) {
     super(type, scoreValue, list);
   }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java Mon Jan  4 10:10:42 2016
@@ -38,7 +38,7 @@ import org.apache.uima.ruta.expression.b
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.resource.WordTableExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.resource.RutaTable;
 import org.apache.uima.ruta.resource.RutaWordList;
 import org.apache.uima.ruta.rule.MatchContext;
@@ -48,7 +48,7 @@ import org.apache.uima.ruta.visitor.Infe
 
 public class MarkTableAction extends AbstractRutaAction {
 
-  private final TypeExpression typeExpr;
+  private final ITypeExpression typeExpr;
 
   private final WordTableExpression tableExpr;
 
@@ -66,7 +66,7 @@ public class MarkTableAction extends Abs
 
   private IBooleanExpression ignoreWS = new SimpleBooleanExpression(true);
 
-  public MarkTableAction(TypeExpression typeExpr, INumberExpression indexExpr,
+  public MarkTableAction(ITypeExpression typeExpr, INumberExpression indexExpr,
           WordTableExpression tableExpr, Map<IStringExpression, INumberExpression> featureMap,
           IBooleanExpression ignoreCase, INumberExpression ignoreLength,
           IStringExpression ignoreChar, INumberExpression maxIgnoreChar) {
@@ -181,7 +181,7 @@ public class MarkTableAction extends Abs
     }
   }
 
-  public TypeExpression getTypeExpr() {
+  public ITypeExpression getTypeExpr() {
     return typeExpr;
   }
 

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveAction.java Mon Jan  4 10:10:42 2016
@@ -29,7 +29,7 @@ import org.apache.uima.ruta.expression.b
 import org.apache.uima.ruta.expression.list.ListExpression;
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
@@ -92,8 +92,8 @@ public class RemoveAction extends Abstra
       return ((INumberExpression) obj).getDoubleValue(context, stream);
     } else if (obj instanceof IBooleanExpression) {
       return ((IBooleanExpression) obj).getBooleanValue(context, stream);
-    } else if (obj instanceof TypeExpression) {
-      return ((TypeExpression) obj).getType(context, stream);
+    } else if (obj instanceof ITypeExpression) {
+      return ((ITypeExpression) obj).getType(context, stream);
     } else if (obj instanceof IStringExpression) {
       return ((IStringExpression) obj).getStringValue(context, stream);
     }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveDuplicateAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveDuplicateAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveDuplicateAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveDuplicateAction.java Mon Jan  4 10:10:42 2016
@@ -28,7 +28,7 @@ import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.bool.IBooleanExpression;
 import org.apache.uima.ruta.expression.number.INumberExpression;
 import org.apache.uima.ruta.expression.string.IStringExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
@@ -70,8 +70,8 @@ public class RemoveDuplicateAction exten
       return ((INumberExpression) obj).getDoubleValue(context, stream);
     } else if (obj instanceof IBooleanExpression) {
       return ((IBooleanExpression) obj).getBooleanValue(context, stream);
-    } else if (obj instanceof TypeExpression) {
-      return ((TypeExpression) obj).getType(context, stream);
+    } else if (obj instanceof ITypeExpression) {
+      return ((ITypeExpression) obj).getType(context, stream);
     } else if (obj instanceof IStringExpression) {
       return ((IStringExpression) obj).getStringValue(context, stream);
     }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveFilterTypeAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveFilterTypeAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveFilterTypeAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveFilterTypeAction.java Mon Jan  4 10:10:42 2016
@@ -24,19 +24,13 @@ import java.util.List;
 
 import org.apache.uima.cas.Type;
 import org.apache.uima.ruta.RutaStream;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
 
 public class RemoveFilterTypeAction extends AbstractRutaAction {
 
-  public List<TypeExpression> getList() {
-    return list;
-  }
-
-  private List<TypeExpression> list;
-
-  public RemoveFilterTypeAction(List<TypeExpression> list) {
+  public RemoveFilterTypeAction(List<ITypeExpression> list) {
     super();
     this.list = list;
   }
@@ -45,10 +39,16 @@ public class RemoveFilterTypeAction exte
   public void execute(MatchContext context, RutaStream stream, InferenceCrowd crowd) {
     context.getElement();
     List<Type> types = new ArrayList<Type>();
-    for (TypeExpression each : list) {
+    for (ITypeExpression each : list) {
       types.add(each.getType(context, stream));
     }
     stream.removeFilterTypes(types);
   }
 
+  public List<ITypeExpression> getList() {
+    return list;
+  }
+  
+  private List<ITypeExpression> list;
+
 }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveRetainTypeAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveRetainTypeAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveRetainTypeAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveRetainTypeAction.java Mon Jan  4 10:10:42 2016
@@ -24,19 +24,13 @@ import java.util.List;
 
 import org.apache.uima.cas.Type;
 import org.apache.uima.ruta.RutaStream;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
 
 public class RemoveRetainTypeAction extends AbstractRutaAction {
 
-  public List<TypeExpression> getList() {
-    return list;
-  }
-
-  private List<TypeExpression> list;
-
-  public RemoveRetainTypeAction(List<TypeExpression> list) {
+  public RemoveRetainTypeAction(List<ITypeExpression> list) {
     super();
     this.list = list;
   }
@@ -45,10 +39,16 @@ public class RemoveRetainTypeAction exte
   public void execute(MatchContext context, RutaStream stream, InferenceCrowd crowd) {
     context.getElement();
     List<Type> types = new ArrayList<Type>();
-    for (TypeExpression each : list) {
+    for (ITypeExpression each : list) {
       types.add(each.getType(context, stream));
     }
     stream.removeRetainTypes(types);
   }
 
+  public List<ITypeExpression> getList() {
+    return list;
+  }
+  
+  private List<ITypeExpression> list;
+
 }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RetainTypeAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RetainTypeAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RetainTypeAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/RetainTypeAction.java Mon Jan  4 10:10:42 2016
@@ -24,19 +24,13 @@ import java.util.List;
 
 import org.apache.uima.cas.Type;
 import org.apache.uima.ruta.RutaStream;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.visitor.InferenceCrowd;
 
 public class RetainTypeAction extends AbstractRutaAction {
 
-  public List<TypeExpression> getList() {
-    return list;
-  }
-
-  private List<TypeExpression> list;
-
-  public RetainTypeAction(List<TypeExpression> list) {
+  public RetainTypeAction(List<ITypeExpression> list) {
     super();
     this.list = list;
   }
@@ -45,10 +39,15 @@ public class RetainTypeAction extends Ab
   public void execute(MatchContext context, RutaStream stream, InferenceCrowd crowd) {
     context.getElement();
     List<Type> types = new ArrayList<Type>();
-    for (TypeExpression each : list) {
+    for (ITypeExpression each : list) {
       types.add(each.getType(context, stream));
     }
     stream.retainTypes(types);
   }
 
+  public List<ITypeExpression> getList() {
+    return list;
+  }
+  
+  private List<ITypeExpression> list;
 }

Modified: uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ShiftAction.java
URL: http://svn.apache.org/viewvc/uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ShiftAction.java?rev=1722822&r1=1722821&r2=1722822&view=diff
==============================================================================
--- uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ShiftAction.java (original)
+++ uima/ruta/branches/UIMA-4408/ruta-core/src/main/java/org/apache/uima/ruta/action/ShiftAction.java Mon Jan  4 10:10:42 2016
@@ -29,7 +29,7 @@ import org.apache.uima.cas.text.Annotati
 import org.apache.uima.jcas.tcas.Annotation;
 import org.apache.uima.ruta.RutaStream;
 import org.apache.uima.ruta.expression.number.INumberExpression;
-import org.apache.uima.ruta.expression.type.TypeExpression;
+import org.apache.uima.ruta.expression.type.ITypeExpression;
 import org.apache.uima.ruta.rule.AnnotationComparator;
 import org.apache.uima.ruta.rule.MatchContext;
 import org.apache.uima.ruta.rule.RuleElement;
@@ -39,7 +39,7 @@ import org.apache.uima.ruta.visitor.Infe
 
 public class ShiftAction extends MarkAction {
 
-  public ShiftAction(TypeExpression type, List<INumberExpression> list) {
+  public ShiftAction(ITypeExpression type, List<INumberExpression> list) {
     super(type, null, list);
   }