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 2013/12/17 21:18:57 UTC
svn commit: r1551681 -
/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/
Author: pkluegl
Date: Tue Dec 17 20:18:57 2013
New Revision: 1551681
URL: http://svn.apache.org/r1551681
Log:
UIMA-3506
- do not check if the match should be continued if no place/annotation to continue from is known at all
Modified:
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxGreedy.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxReluctant.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/NormalQuantifier.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusGreedy.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusReluctant.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionGreedy.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionReluctant.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarGreedy.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarReluctant.java
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxGreedy.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxGreedy.java?rev=1551681&r1=1551680&r2=1551681&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxGreedy.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxGreedy.java Tue Dec 17 20:18:57 2013
@@ -85,6 +85,10 @@ public class MinMaxGreedy implements Rul
public boolean continueMatch(boolean after, AnnotationFS annotation, RuleElement ruleElement,
RuleMatch extendedMatch, ComposedRuleElementMatch containerMatch, RutaStream stream,
InferenceCrowd crowd) {
+ if(annotation == null) {
+ // do not try to continue a match that totally failed
+ return false;
+ }
int minValue = min.getIntegerValue(ruleElement.getParent(), annotation, stream);
int maxValue = max.getIntegerValue(ruleElement.getParent(), annotation, stream);
List<RuleElementMatch> list = containerMatch.getInnerMatches().get(ruleElement);
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxReluctant.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxReluctant.java?rev=1551681&r1=1551680&r2=1551681&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxReluctant.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxReluctant.java Tue Dec 17 20:18:57 2013
@@ -82,6 +82,10 @@ public class MinMaxReluctant implements
public boolean continueMatch(boolean after, AnnotationFS annotation, RuleElement ruleElement,
RuleMatch ruleMatch, ComposedRuleElementMatch containerMatch, RutaStream stream,
InferenceCrowd crowd) {
+ if(annotation == null) {
+ // do not try to continue a match that totally failed
+ return false;
+ }
int minValue = min.getIntegerValue(ruleElement.getParent(), annotation, stream);
int maxValue = max.getIntegerValue(ruleElement.getParent(), annotation, stream);
List<RuleElementMatch> list = containerMatch.getInnerMatches().get(ruleElement);
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/NormalQuantifier.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/NormalQuantifier.java?rev=1551681&r1=1551680&r2=1551681&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/NormalQuantifier.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/NormalQuantifier.java Tue Dec 17 20:18:57 2013
@@ -55,6 +55,10 @@ public class NormalQuantifier implements
public boolean continueMatch(boolean after, AnnotationFS annotation, RuleElement ruleElement,
RuleMatch extendedMatch, ComposedRuleElementMatch containerMatch, RutaStream stream,
InferenceCrowd crowd) {
+ if(annotation == null) {
+ // do not try to continue a match that totally failed
+ return false;
+ }
List<RuleElementMatch> list = containerMatch.getInnerMatches().get(ruleElement);
return list == null || list.isEmpty();
}
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusGreedy.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusGreedy.java?rev=1551681&r1=1551680&r2=1551681&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusGreedy.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusGreedy.java Tue Dec 17 20:18:57 2013
@@ -64,6 +64,10 @@ public class PlusGreedy implements RuleE
public boolean continueMatch(boolean after, AnnotationFS annotation, RuleElement ruleElement,
RuleMatch extendedMatch, ComposedRuleElementMatch containerMatch, RutaStream stream,
InferenceCrowd crowd) {
+ if(annotation == null) {
+ // do not try to continue a match that totally failed
+ return false;
+ }
List<List<RuleElementMatch>> matchInfo = extendedMatch.getMatchInfo(ruleElement);
List<RuleElementMatch> matches;
if (after) {
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusReluctant.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusReluctant.java?rev=1551681&r1=1551680&r2=1551681&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusReluctant.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusReluctant.java Tue Dec 17 20:18:57 2013
@@ -58,6 +58,10 @@ public class PlusReluctant implements Ru
public boolean continueMatch(boolean after, AnnotationFS annotation, RuleElement ruleElement,
RuleMatch ruleMatch, ComposedRuleElementMatch containerMatch, RutaStream stream,
InferenceCrowd crowd) {
+ if(annotation == null) {
+ // do not try to continue a match that totally failed
+ return false;
+ }
List<RuleElementMatch> ownList = containerMatch.getInnerMatches().get(ruleElement);
if (ownList == null || ownList.isEmpty()) {
return true;
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionGreedy.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionGreedy.java?rev=1551681&r1=1551680&r2=1551681&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionGreedy.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionGreedy.java Tue Dec 17 20:18:57 2013
@@ -57,6 +57,10 @@ public class QuestionGreedy implements R
public boolean continueMatch(boolean after, AnnotationFS annotation, RuleElement ruleElement,
RuleMatch extendedMatch, ComposedRuleElementMatch containerMatch, RutaStream stream,
InferenceCrowd crowd) {
+ if(annotation == null) {
+ // do not try to continue a match that totally failed
+ return false;
+ }
List<RuleElementMatch> list = containerMatch.getInnerMatches().get(ruleElement);
return list == null || list.isEmpty();
}
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionReluctant.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionReluctant.java?rev=1551681&r1=1551680&r2=1551681&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionReluctant.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionReluctant.java Tue Dec 17 20:18:57 2013
@@ -52,6 +52,10 @@ public class QuestionReluctant implement
public boolean continueMatch(boolean after, AnnotationFS annotation, RuleElement ruleElement,
RuleMatch ruleMatch, ComposedRuleElementMatch containerMatch, RutaStream stream,
InferenceCrowd crowd) {
+ if(annotation == null) {
+ // do not try to continue a match that totally failed
+ return false;
+ }
List<RuleElementMatch> ownList = containerMatch.getInnerMatches().get(ruleElement);
if (ownList != null && !ownList.isEmpty()) {
return false;
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarGreedy.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarGreedy.java?rev=1551681&r1=1551680&r2=1551681&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarGreedy.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarGreedy.java Tue Dec 17 20:18:57 2013
@@ -60,6 +60,10 @@ public class StarGreedy implements RuleE
public boolean continueMatch(boolean after, AnnotationFS annotation, RuleElement ruleElement,
RuleMatch extendedMatch, ComposedRuleElementMatch containerMatch, RutaStream stream,
InferenceCrowd crowd) {
+ if(annotation == null) {
+ // do not try to continue a match that totally failed
+ return false;
+ }
return true;
}
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarReluctant.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarReluctant.java?rev=1551681&r1=1551680&r2=1551681&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarReluctant.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarReluctant.java Tue Dec 17 20:18:57 2013
@@ -40,6 +40,10 @@ public class StarReluctant implements Ru
public boolean continueMatch(boolean after, AnnotationFS annotation, RuleElement ruleElement,
RuleMatch ruleMatch, ComposedRuleElementMatch containerMatch, RutaStream stream,
InferenceCrowd crowd) {
+ if(annotation == null) {
+ // do not try to continue a match that totally failed
+ return false;
+ }
RuleElement nextElement = ruleElement.getContainer().getNextElement(after, ruleElement);
if (nextElement == null) {
return false;