You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by jo...@apache.org on 2011/09/22 14:49:53 UTC
svn commit: r1174099 [8/8] - in
/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker:
./ action/ condition/ constraint/ engine/ parser/ resource/ rule/
rule/quantifier/ type/ verbalize/ visitor/
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/DebugScriptApply.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/DebugScriptApply.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/DebugScriptApply.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/DebugScriptApply.java Thu Sep 22 12:49:48 2011
@@ -10,8 +10,8 @@ import org.apache.uima.jcas.cas.TOP_Type
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class DebugScriptApply extends ProfiledAnnotation {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/DebugScriptApply_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/DebugScriptApply_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/DebugScriptApply_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/DebugScriptApply_Type.java Thu Sep 22 12:49:48 2011
@@ -13,7 +13,7 @@ import org.apache.uima.jcas.JCas;
import org.apache.uima.jcas.JCasRegistry;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class DebugScriptApply_Type extends ProfiledAnnotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/EvalAnnotation.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/EvalAnnotation.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/EvalAnnotation.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/EvalAnnotation.java Thu Sep 22 12:49:48 2011
@@ -10,8 +10,8 @@ import org.apache.uima.jcas.tcas.Annotat
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class EvalAnnotation extends Annotation {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/EvalAnnotation_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/EvalAnnotation_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/EvalAnnotation_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/EvalAnnotation_Type.java Thu Sep 22 12:49:48 2011
@@ -14,7 +14,7 @@ import org.apache.uima.jcas.JCasRegistry
import org.apache.uima.jcas.tcas.Annotation_Type;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class EvalAnnotation_Type extends Annotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalseNegative.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalseNegative.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalseNegative.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalseNegative.java Thu Sep 22 12:49:48 2011
@@ -10,8 +10,8 @@ import org.apache.uima.jcas.cas.TOP_Type
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class FalseNegative extends EvalAnnotation {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalseNegative_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalseNegative_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalseNegative_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalseNegative_Type.java Thu Sep 22 12:49:48 2011
@@ -11,7 +11,7 @@ import org.apache.uima.jcas.JCas;
import org.apache.uima.jcas.JCasRegistry;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class FalseNegative_Type extends EvalAnnotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalsePositive.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalsePositive.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalsePositive.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalsePositive.java Thu Sep 22 12:49:48 2011
@@ -10,8 +10,8 @@ import org.apache.uima.jcas.cas.TOP_Type
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class FalsePositive extends EvalAnnotation {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalsePositive_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalsePositive_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalsePositive_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/FalsePositive_Type.java Thu Sep 22 12:49:48 2011
@@ -11,7 +11,7 @@ import org.apache.uima.jcas.JCas;
import org.apache.uima.jcas.JCasRegistry;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class FalsePositive_Type extends EvalAnnotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/ProfiledAnnotation.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/ProfiledAnnotation.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/ProfiledAnnotation.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/ProfiledAnnotation.java Thu Sep 22 12:49:48 2011
@@ -10,8 +10,8 @@ import org.apache.uima.jcas.tcas.Annotat
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class ProfiledAnnotation extends Annotation {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/ProfiledAnnotation_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/ProfiledAnnotation_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/ProfiledAnnotation_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/ProfiledAnnotation_Type.java Thu Sep 22 12:49:48 2011
@@ -14,7 +14,7 @@ import org.apache.uima.jcas.JCasRegistry
import org.apache.uima.jcas.tcas.Annotation_Type;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class ProfiledAnnotation_Type extends Annotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/Statistics.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/Statistics.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/Statistics.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/Statistics.java Thu Sep 22 12:49:48 2011
@@ -13,8 +13,8 @@ import org.apache.uima.jcas.cas.TOP_Type
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class Statistics extends TOP {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/Statistics_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/Statistics_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/Statistics_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/Statistics_Type.java Thu Sep 22 12:49:48 2011
@@ -14,7 +14,7 @@ import org.apache.uima.jcas.JCasRegistry
import org.apache.uima.jcas.cas.TOP_Type;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class Statistics_Type extends TOP_Type {
/** @generated */
@@ -64,7 +64,7 @@ public class Statistics_Type extends TOP
if (lowLevelTypeChecks)
return ll_cas.ll_getStringArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_name), i, true);
jcas.checkArrayBounds(ll_cas.ll_getRefValue(addr, casFeatCode_name), i);
- return ll_cas.ll_getStringArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_name), i);
+ return ll_cas.ll_getStringArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_name), i);
}
/** @generated */
@@ -101,7 +101,7 @@ public class Statistics_Type extends TOP
if (lowLevelTypeChecks)
return ll_cas.ll_getDoubleArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_total), i, true);
jcas.checkArrayBounds(ll_cas.ll_getRefValue(addr, casFeatCode_total), i);
- return ll_cas.ll_getDoubleArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_total), i);
+ return ll_cas.ll_getDoubleArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_total), i);
}
/** @generated */
@@ -138,7 +138,7 @@ public class Statistics_Type extends TOP
if (lowLevelTypeChecks)
return ll_cas.ll_getIntArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_amount), i, true);
jcas.checkArrayBounds(ll_cas.ll_getRefValue(addr, casFeatCode_amount), i);
- return ll_cas.ll_getIntArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_amount), i);
+ return ll_cas.ll_getIntArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_amount), i);
}
/** @generated */
@@ -175,7 +175,7 @@ public class Statistics_Type extends TOP
if (lowLevelTypeChecks)
return ll_cas.ll_getDoubleArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_part), i, true);
jcas.checkArrayBounds(ll_cas.ll_getRefValue(addr, casFeatCode_part), i);
- return ll_cas.ll_getDoubleArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_part), i);
+ return ll_cas.ll_getDoubleArrayValue(ll_cas.ll_getRefValue(addr, casFeatCode_part), i);
}
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerAnnotation.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerAnnotation.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerAnnotation.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerAnnotation.java Thu Sep 22 12:49:48 2011
@@ -10,8 +10,8 @@ import org.apache.uima.jcas.tcas.Annotat
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class TextMarkerAnnotation extends Annotation {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerAnnotation_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerAnnotation_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerAnnotation_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerAnnotation_Type.java Thu Sep 22 12:49:48 2011
@@ -14,7 +14,7 @@ import org.apache.uima.jcas.JCasRegistry
import org.apache.uima.jcas.tcas.Annotation_Type;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class TextMarkerAnnotation_Type extends Annotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerBasic.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerBasic.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerBasic.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerBasic.java Thu Sep 22 12:49:48 2011
@@ -1,29 +1,35 @@
/* First created by JCasGen Wed Apr 16 17:01:16 CEST 2008 */
package org.apache.uima.textmarker.type;
-import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
+import org.apache.uima.cas.Type;
import org.apache.uima.cas.text.AnnotationFS;
import org.apache.uima.jcas.JCas;
import org.apache.uima.jcas.JCasRegistry;
import org.apache.uima.jcas.cas.TOP_Type;
import org.apache.uima.jcas.tcas.Annotation;
-/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
- * @generated */
+/**
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011 XML source:
+ * D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
+ *
+ * @generated
+ */
public class TextMarkerBasic extends Annotation {
- private Set<String> partOf = new HashSet<String>(20);
+ private Set<Type> partOf = new HashSet<Type>(20);
- private Map<String, AnnotationFS> typeMap = new HashMap<String, AnnotationFS>(7);
+ private final Map<Type, Set<AnnotationFS>> beginMap = new HashMap<Type, Set<AnnotationFS>>(10);
- private Map<String, AnnotationFS> instanceMap = new HashMap<String, AnnotationFS>(10);
+ private final Map<Type, Set<AnnotationFS>> endMap = new HashMap<Type, Set<AnnotationFS>>(10);
+
+ // private Map<String, AnnotationFS> typeMap = new HashMap<String, AnnotationFS>(7);
+
+ // private Map<String, AnnotationFS> instanceMap = new HashMap<String, AnnotationFS>(10);
public Map<String, String> tags = new HashMap<String, String>(20);
@@ -35,42 +41,100 @@ public class TextMarkerBasic extends Ann
return tags;
}
- public void setAnnotation(String name, AnnotationFS annotation, boolean instance) {
- if (instance) {
- typeMap.put(name, annotation);
- instanceMap.put(name, annotation);
- } else if (!instanceMap.containsKey(name)) {
- typeMap.put(name, annotation);
- }
+ // public void setAnnotation(String name, AnnotationFS annotation, boolean instance) {
+ // if (instance) {
+ // typeMap.put(name, annotation);
+ // instanceMap.put(name, annotation);
+ // } else if (!instanceMap.containsKey(name)) {
+ // typeMap.put(name, annotation);
+ // }
+ // }
+ //
+ // public void removeAnnotation(String name, boolean instance) {
+ // if (instance && instanceMap.containsKey(name)) {
+ // typeMap.remove(name);
+ // instanceMap.remove(name);
+ // } else if (!instance && !instanceMap.containsKey(name)) {
+ // typeMap.remove(name);
+ // }
+ // }
+
+ public void addPartOf(Type type) {
+ partOf.add(type);
}
- public void removeAnnotation(String name, boolean instance) {
- if (instance && instanceMap.containsKey(name)) {
- typeMap.remove(name);
- instanceMap.remove(name);
- } else if (!instance && !instanceMap.containsKey(name)) {
- typeMap.remove(name);
- }
+ public void removePartOf(Type type) {
+ partOf.remove(type);
}
- public void addPartOf(String type) {
- partOf.add(type);
+ // public boolean isAnchorOf(String name) {
+ // return typeMap.containsKey(name);
+ // }
+
+ // public AnnotationFS getType(String name) {
+ // return typeMap.get(name);
+ // }
+
+ public boolean isPartOf(Type type) {
+ return partOf.contains(type);
}
- public void removePartOf(String type) {
- partOf.remove(type);
+ // public Collection<AnnotationFS> getAnchors() {
+ // return typeMap.values();
+ // }
+
+ public Set<AnnotationFS> getBeginAnchors(Type type) {
+ return beginMap.get(type);
+ }
+
+ public Set<AnnotationFS> getEndAnchors(Type type) {
+ return endMap.get(type);
+ }
+
+ public boolean beginsWith(Type type) {
+ return beginMap.containsKey(type);
+ }
+
+ public boolean endsWith(Type type) {
+ return endMap.containsKey(type);
+ }
+
+ public void addBegin(AnnotationFS annotation, Type type) {
+ Set<AnnotationFS> list = beginMap.get(type);
+ if (list == null) {
+ list = new HashSet<AnnotationFS>();
+ beginMap.put(type, list);
+ }
+ list.add(annotation);
}
- public boolean isAnchorOf(String name) {
- return typeMap.containsKey(name);
+ public void addEnd(AnnotationFS annotation, Type type) {
+ Set<AnnotationFS> list = endMap.get(type);
+ if (list == null) {
+ list = new HashSet<AnnotationFS>();
+ endMap.put(type, list);
+ }
+ list.add(annotation);
}
- public AnnotationFS getType(String name) {
- return typeMap.get(name);
+ public void removeBegin(AnnotationFS annotation, Type type) {
+ Set<AnnotationFS> list = beginMap.get(type);
+ if (list != null) {
+ list.remove(annotation);
+ if (list.isEmpty()) {
+ beginMap.remove(annotation.getType());
+ }
+ }
}
- public boolean isPartOf(String name) {
- return partOf.contains(name);
+ public void removeEnd(AnnotationFS annotation, Type type) {
+ Set<AnnotationFS> list = endMap.get(type);
+ if (list != null) {
+ list.remove(annotation);
+ if (list.isEmpty()) {
+ endMap.remove(annotation.getType());
+ }
+ }
}
/**
@@ -87,15 +151,18 @@ public class TextMarkerBasic extends Ann
/** @generated */
@Override
- public int getTypeIndexID() {return typeIndexID;}
-
+ public int getTypeIndexID() {
+ return typeIndexID;
+ }
+
/**
* Never called. Disable default constructor
*
* @generated
*/
- protected TextMarkerBasic() {}
-
+ protected TextMarkerBasic() {
+ }
+
/**
* Internal - constructor used by generator
*
@@ -105,12 +172,12 @@ public class TextMarkerBasic extends Ann
super(addr, type);
readObject();
}
-
+
/** @generated */
public TextMarkerBasic(JCas jcas) {
super(jcas);
- readObject();
- }
+ readObject();
+ }
/** @generated */
public TextMarkerBasic(JCas jcas, int begin, int end) {
@@ -118,10 +185,13 @@ public class TextMarkerBasic extends Ann
setBegin(begin);
setEnd(end);
readObject();
- }
+ }
- /** <!-- begin-user-doc --> Write your own initialization here <!-- end-user-doc -->
- @generated modifiable */
+ /**
+ * <!-- begin-user-doc --> Write your own initialization here <!-- end-user-doc -->
+ *
+ * @generated modifiable
+ */
private void readObject() {
}
@@ -134,20 +204,34 @@ public class TextMarkerBasic extends Ann
* @generated
*/
public String getReplacement() {
- if (TextMarkerBasic_Type.featOkTst && ((TextMarkerBasic_Type)jcasType).casFeat_replacement == null)
- jcasType.jcas.throwFeatMissing("replacement", "org.apache.uima.textmarker.type.TextMarkerBasic");
- return jcasType.ll_cas.ll_getStringValue(addr, ((TextMarkerBasic_Type)jcasType).casFeatCode_replacement);}
-
+ if (TextMarkerBasic_Type.featOkTst
+ && ((TextMarkerBasic_Type) jcasType).casFeat_replacement == null)
+ jcasType.jcas.throwFeatMissing("replacement",
+ "org.apache.uima.textmarker.type.TextMarkerBasic");
+ return jcasType.ll_cas.ll_getStringValue(addr,
+ ((TextMarkerBasic_Type) jcasType).casFeatCode_replacement);
+ }
+
/**
* setter for Replacement - sets
*
* @generated
*/
public void setReplacement(String v) {
- if (TextMarkerBasic_Type.featOkTst && ((TextMarkerBasic_Type)jcasType).casFeat_replacement == null)
- jcasType.jcas.throwFeatMissing("replacement", "org.apache.uima.textmarker.type.TextMarkerBasic");
- jcasType.ll_cas.ll_setStringValue(addr, ((TextMarkerBasic_Type)jcasType).casFeatCode_replacement, v);}
- public Collection<AnnotationFS> getAnchors() {
- return typeMap.values();
+ if (TextMarkerBasic_Type.featOkTst
+ && ((TextMarkerBasic_Type) jcasType).casFeat_replacement == null)
+ jcasType.jcas.throwFeatMissing("replacement",
+ "org.apache.uima.textmarker.type.TextMarkerBasic");
+ jcasType.ll_cas.ll_setStringValue(addr,
+ ((TextMarkerBasic_Type) jcasType).casFeatCode_replacement, v);
}
+
+ public Map<Type, Set<AnnotationFS>> getEndMap() {
+ return endMap;
+ }
+
+ public Map<Type, Set<AnnotationFS>> getBeginMap() {
+ return beginMap;
+ }
+
}
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerBasic_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerBasic_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerBasic_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerBasic_Type.java Thu Sep 22 12:49:48 2011
@@ -14,7 +14,7 @@ import org.apache.uima.jcas.JCasRegistry
import org.apache.uima.jcas.tcas.Annotation_Type;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class TextMarkerBasic_Type extends Annotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerColoring.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerColoring.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerColoring.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerColoring.java Thu Sep 22 12:49:48 2011
@@ -10,8 +10,8 @@ import org.apache.uima.jcas.tcas.Annotat
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class TextMarkerColoring extends Annotation {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerColoring_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerColoring_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerColoring_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerColoring_Type.java Thu Sep 22 12:49:48 2011
@@ -14,7 +14,7 @@ import org.apache.uima.jcas.JCasRegistry
import org.apache.uima.jcas.tcas.Annotation_Type;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class TextMarkerColoring_Type extends Annotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerFrame.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerFrame.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerFrame.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerFrame.java Thu Sep 22 12:49:48 2011
@@ -10,8 +10,8 @@ import org.apache.uima.jcas.tcas.Annotat
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class TextMarkerFrame extends Annotation {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerFrame_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerFrame_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerFrame_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TextMarkerFrame_Type.java Thu Sep 22 12:49:48 2011
@@ -12,7 +12,7 @@ import org.apache.uima.jcas.JCasRegistry
import org.apache.uima.jcas.tcas.Annotation_Type;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class TextMarkerFrame_Type extends Annotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TruePositive.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TruePositive.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TruePositive.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TruePositive.java Thu Sep 22 12:49:48 2011
@@ -10,8 +10,8 @@ import org.apache.uima.jcas.cas.TOP_Type
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
- * XML source: D:/work/workspace-uima2/uimaj-ep-textmarker-engine/desc/BasicTypeSystem.xml
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
+ * XML source: D:/work/workspace-uima3/uimaj-ep-textmarker-engine/desc/InternalTypeSystem.xml
* @generated */
public class TruePositive extends EvalAnnotation {
/** @generated
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TruePositive_Type.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TruePositive_Type.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TruePositive_Type.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/type/TruePositive_Type.java Thu Sep 22 12:49:48 2011
@@ -11,7 +11,7 @@ import org.apache.uima.jcas.JCas;
import org.apache.uima.jcas.JCasRegistry;
/**
- * Updated by JCasGen Tue Aug 09 16:26:13 CEST 2011
+ * Updated by JCasGen Tue Sep 20 15:37:41 CEST 2011
* @generated */
public class TruePositive_Type extends EvalAnnotation_Type {
/** @generated */
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/ScriptVerbalizer.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/ScriptVerbalizer.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/ScriptVerbalizer.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/ScriptVerbalizer.java Thu Sep 22 12:49:48 2011
@@ -15,7 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
-*/
+ */
package org.apache.uima.textmarker.verbalize;
@@ -43,7 +43,6 @@ import org.apache.uima.textmarker.rule.q
import org.apache.uima.textmarker.rule.quantifier.StarGreedy;
import org.apache.uima.textmarker.rule.quantifier.StarReluctant;
-
public class ScriptVerbalizer {
private TextMarkerVerbalizer verbalizer;
@@ -81,7 +80,7 @@ public class ScriptVerbalizer {
}
public String verbalizeRule(TextMarkerRule rule) {
- List<RuleElement> elements = rule.getElements();
+ List<RuleElement> elements = rule.getRuleElements();
StringBuilder result = new StringBuilder();
for (RuleElement each : elements) {
result.append(verbalizeRuleElement(each));
@@ -128,8 +127,8 @@ public class ScriptVerbalizer {
} else if (re instanceof ComposedRuleElement) {
ComposedRuleElement cre = (ComposedRuleElement) re;
StringBuilder result = new StringBuilder("(");
- for (RuleElement each : cre.getElements()) {
- if (cre.getElements().indexOf(each) != 0) {
+ for (RuleElement each : cre.getRuleElements()) {
+ if (cre.getRuleElements().indexOf(each) != 0) {
result.append(" ");
}
result.append(verbalizeRuleElement(each));
Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/visitor/DebugInfoFactory.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/visitor/DebugInfoFactory.java?rev=1174099&r1=1174098&r2=1174099&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/visitor/DebugInfoFactory.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/visitor/DebugInfoFactory.java Thu Sep 22 12:49:48 2011
@@ -15,13 +15,15 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
-*/
+ */
package org.apache.uima.textmarker.visitor;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
import org.apache.uima.cas.text.AnnotationFS;
import org.apache.uima.jcas.JCas;
@@ -31,12 +33,14 @@ import org.apache.uima.textmarker.Script
import org.apache.uima.textmarker.TextMarkerBlock;
import org.apache.uima.textmarker.TextMarkerElement;
import org.apache.uima.textmarker.TextMarkerStream;
+import org.apache.uima.textmarker.rule.ComposedRuleElementMatch;
import org.apache.uima.textmarker.rule.EvaluatedCondition;
import org.apache.uima.textmarker.rule.RuleApply;
import org.apache.uima.textmarker.rule.RuleElement;
import org.apache.uima.textmarker.rule.RuleElementMatch;
import org.apache.uima.textmarker.rule.RuleMatch;
import org.apache.uima.textmarker.rule.TextMarkerMatcher;
+import org.apache.uima.textmarker.rule.TextMarkerRuleElement;
import org.apache.uima.textmarker.type.DebugBlockApply;
import org.apache.uima.textmarker.type.DebugEvaluatedCondition;
import org.apache.uima.textmarker.type.DebugFailedRuleMatch;
@@ -49,7 +53,6 @@ import org.apache.uima.textmarker.type.D
import org.apache.uima.textmarker.utils.UIMAUtils;
import org.apache.uima.textmarker.verbalize.TextMarkerVerbalizer;
-
public class DebugInfoFactory {
private TextMarkerVerbalizer verbalizer;
@@ -63,7 +66,8 @@ public class DebugInfoFactory {
boolean addToIndex, boolean withMatches, Map<TextMarkerElement, Long> timeInfo) {
JCas cas = stream.getJCas();
DebugBlockApply dba = new DebugBlockApply(cas);
- AnnotationFS matchedAnnotation = ruleMatch.getMatchedAnnotation(stream, null);
+ AnnotationFS matchedAnnotation = ruleMatch.getMatchedAnnotationsOf(
+ ruleMatch.getRule().getRoot(), stream).get(0);
dba.setElement(matchedAnnotation.getCoveredText());
dba.setBegin(matchedAnnotation.getBegin());
dba.setEnd(matchedAnnotation.getEnd());
@@ -195,13 +199,9 @@ public class DebugInfoFactory {
} else {
drm = new DebugFailedRuleMatch(cas);
}
- List<DebugRuleElementMatches> ruleMatches = new ArrayList<DebugRuleElementMatches>();
- for (RuleElement re : match.getMatchInfos().keySet()) {
- List<RuleElementMatch> rems = match.getMatchInfos().get(re);
- ruleMatches.add(createDebugRuleElementMatches(re, rems, stream, addToIndex));
- }
- drm.setElements(UIMAUtils.toFSArray(cas, ruleMatches));
- drm.setMatched(match.matched());
+ ComposedRuleElementMatch rootMatch = match.getRootMatch();
+ setInnerMatches(stream, addToIndex, cas, drm, rootMatch);
+ drm.setMatched(match.matchedCompletely());
if (match.matched()) {
List<DebugScriptApply> delegates = new ArrayList<DebugScriptApply>();
for (ScriptApply rem : match.getDelegateApply().values()) {
@@ -213,7 +213,8 @@ public class DebugInfoFactory {
long time = timeInfo.get(match.getRule());
drm.setTime(time);
}
- AnnotationFS matchedAnnotation = match.getMatchedAnnotation(stream, null);
+ AnnotationFS matchedAnnotation = match.getMatchedAnnotationsOf(match.getRule().getRoot(),
+ stream).get(0);
if (matchedAnnotation != null) {
drm.setBegin(matchedAnnotation.getBegin());
drm.setEnd(matchedAnnotation.getEnd());
@@ -223,15 +224,48 @@ public class DebugInfoFactory {
return drm;
}
+ private void setInnerMatches(TextMarkerStream stream, boolean addToIndex, JCas cas,
+ DebugRuleMatch drm, ComposedRuleElementMatch rootMatch) {
+ Set<Entry<RuleElement, List<RuleElementMatch>>> entrySet = rootMatch.getInnerMatches()
+ .entrySet();
+ List<DebugRuleElementMatches> ruleElementMatches = new ArrayList<DebugRuleElementMatches>();
+ for (Entry<RuleElement, List<RuleElementMatch>> entry : entrySet) {
+ RuleElement re = entry.getKey();
+ List<RuleElementMatch> rems = entry.getValue();
+ ruleElementMatches.add(createDebugRuleElementMatches(re, rems, stream, addToIndex));
+ }
+
+ drm.setElements(UIMAUtils.toFSArray(cas, ruleElementMatches));
+ }
+
+ private void setInnerMatches(TextMarkerStream stream, boolean addToIndex, JCas cas,
+ DebugRuleElementMatch drm, ComposedRuleElementMatch rootMatch) {
+ Set<Entry<RuleElement, List<RuleElementMatch>>> entrySet = rootMatch.getInnerMatches()
+ .entrySet();
+ List<DebugRuleElementMatches> ruleElementMatches = new ArrayList<DebugRuleElementMatches>();
+ for (Entry<RuleElement, List<RuleElementMatch>> entry : entrySet) {
+ RuleElement re = entry.getKey();
+ List<RuleElementMatch> rems = entry.getValue();
+ ruleElementMatches.add(createDebugRuleElementMatches(re, rems, stream, addToIndex));
+ }
+ drm.setElements(UIMAUtils.toFSArray(cas, ruleElementMatches));
+ }
+
public DebugRuleElementMatches createDebugRuleElementMatches(RuleElement re,
List<RuleElementMatch> rems, TextMarkerStream stream, boolean addToIndex) {
JCas cas = stream.getJCas();
DebugRuleElementMatches drems = new DebugRuleElementMatches(cas);
drems.setElement(verbalizer.verbalize(re));
List<DebugRuleElementMatch> remList = new ArrayList<DebugRuleElementMatch>();
-
- for (RuleElementMatch each : rems) {
- remList.add(createDebugRuleElementMatch(each, stream, addToIndex));
+ if (rems != null) {
+ for (RuleElementMatch each : rems) {
+ if (each instanceof ComposedRuleElementMatch) {
+ remList.add(createDebugComposedRuleElementMatch((ComposedRuleElementMatch) each, stream,
+ addToIndex));
+ } else {
+ remList.add(createDebugRuleElementMatch(each, stream, addToIndex));
+ }
+ }
}
drems.setMatches(UIMAUtils.toFSArray(cas, remList));
if (addToIndex)
@@ -239,6 +273,30 @@ public class DebugInfoFactory {
return drems;
}
+ public DebugRuleElementMatch createDebugComposedRuleElementMatch(ComposedRuleElementMatch rem,
+ TextMarkerStream stream, boolean addToIndex) {
+ JCas cas = stream.getJCas();
+ DebugRuleElementMatch drem = new DebugRuleElementMatch(cas);
+
+ DebugEvaluatedCondition base = new DebugEvaluatedCondition(cas);
+ base.setValue(rem.isBaseConditionMatched());
+
+ setInnerMatches(stream, addToIndex, cas, drem, rem);
+
+ String baseString = verbalizer.verbalize(rem.getRuleElement());
+ base.setElement(baseString);
+ drem.setBaseCondition(base);
+ drem.setConditions(createEvaluatedConditions(rem, stream, addToIndex));
+ List<AnnotationFS> annotations = rem.getTextsMatched();
+ if (!annotations.isEmpty()) {
+ drem.setBegin(annotations.get(0).getBegin());
+ drem.setEnd(annotations.get(annotations.size() - 1).getEnd());
+ }
+ if (addToIndex)
+ drem.addToIndexes();
+ return drem;
+ }
+
public DebugRuleElementMatch createDebugRuleElementMatch(RuleElementMatch rem,
TextMarkerStream stream, boolean addToIndex) {
JCas cas = stream.getJCas();
@@ -247,7 +305,7 @@ public class DebugInfoFactory {
DebugEvaluatedCondition base = new DebugEvaluatedCondition(cas);
base.setValue(rem.isBaseConditionMatched());
- TextMarkerMatcher matcher = rem.getRuleElement().getMatcher();
+ TextMarkerMatcher matcher = ((TextMarkerRuleElement) rem.getRuleElement()).getMatcher();
String baseString = verbalizer.verbalize(matcher.getExpression());
base.setElement(baseString);
drem.setBaseCondition(base);