You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opennlp.apache.org by jo...@apache.org on 2011/07/22 12:55:57 UTC

svn commit: r1149563 - /incubator/opennlp/sandbox/opennlp-caseditor-plugin/src/main/java/org/apache/opennlp/caseditor/namefinder/EntityContentProvider.java

Author: joern
Date: Fri Jul 22 10:55:57 2011
New Revision: 1149563

URL: http://svn.apache.org/viewvc?rev=1149563&view=rev
Log:
OPENNLP-235 searchEntities now searches for intersecting entities, instead of entities with identical bounds.

Modified:
    incubator/opennlp/sandbox/opennlp-caseditor-plugin/src/main/java/org/apache/opennlp/caseditor/namefinder/EntityContentProvider.java

Modified: incubator/opennlp/sandbox/opennlp-caseditor-plugin/src/main/java/org/apache/opennlp/caseditor/namefinder/EntityContentProvider.java
URL: http://svn.apache.org/viewvc/incubator/opennlp/sandbox/opennlp-caseditor-plugin/src/main/java/org/apache/opennlp/caseditor/namefinder/EntityContentProvider.java?rev=1149563&r1=1149562&r2=1149563&view=diff
==============================================================================
--- incubator/opennlp/sandbox/opennlp-caseditor-plugin/src/main/java/org/apache/opennlp/caseditor/namefinder/EntityContentProvider.java (original)
+++ incubator/opennlp/sandbox/opennlp-caseditor-plugin/src/main/java/org/apache/opennlp/caseditor/namefinder/EntityContentProvider.java Fri Jul 22 10:55:57 2011
@@ -47,9 +47,10 @@ import org.eclipse.swt.widgets.Display;
 // Maybe we should create again, a "View" map of indexes to its annotations?!
 public class EntityContentProvider implements IStructuredContentProvider {
 
+  // TODO: Triggering should be more refined, and only happen if
+  // Sentences, Tokens, or entities change ..
   class NameFinderTrigger implements ICasDocumentListener {
 
-    
     @Override
     public void added(FeatureStructure fs) {
       runNameFinder();
@@ -357,14 +358,16 @@ public class EntityContentProvider imple
   public void dispose() {
   }
   
-  // TODO: Write some static util method to search for an overlapping entity in a list!
-  
   static Entity searchEntity(List<Entity> entities, int begin, int end) {
     
+    Span testSpan = new Span(begin, end);
+    
     for (Entity entity : entities) {
-      // TODO: Should test for overlapping
-      if (entity.getBeginIndex() == begin && 
-          entity.getEndIndex() == end) {
+      
+      Span entitySpan = new Span(entity.getBeginIndex(),
+          entity.getEndIndex());
+      
+      if (entitySpan.intersects(testSpan)) {
         return entity;
       }
     }