Revision: 15228
          http://gate.svn.sourceforge.net/gate/?rev=15228&view=rev
Author:   valyt
Date:     2012-01-26 12:51:22 +0000 (Thu, 26 Jan 2012)
Log Message:
-----------
Replaced some deprecated calls with recommended alternatives.

Modified Paths:
--------------
    gate/trunk/plugins/JAPE_Plus/src/gate/jape/plus/SPTBase.java

Modified: gate/trunk/plugins/JAPE_Plus/src/gate/jape/plus/SPTBase.java
===================================================================
--- gate/trunk/plugins/JAPE_Plus/src/gate/jape/plus/SPTBase.java        
2012-01-26 12:50:35 UTC (rev 15227)
+++ gate/trunk/plugins/JAPE_Plus/src/gate/jape/plus/SPTBase.java        
2012-01-26 12:51:22 UTC (rev 15228)
@@ -18,6 +18,7 @@
 import gate.creole.*;
 import gate.creole.ontology.OClass;
 import gate.creole.ontology.OConstants;
+import gate.creole.ontology.OConstants.Closure;
 import gate.creole.ontology.OResource;
 import gate.creole.ontology.Ontology;
 import gate.jape.JapeException;
@@ -807,16 +808,62 @@
                         .equals(ANNIEConstants.LOOKUP_CLASS_FEATURE_NAME)) {
           // we need to do ontological match
           // let's first find out the classes with the names
-          OResource superClass = ontology.getOResourceByName(
+          OResource superClass = null;
+          List<OResource> classes = ontology.getOResourcesByName(
               predicate.featureValue.toString());
-          OResource subClass = ontology.getOResourceByName(
-              actualValue.toString());
+          if(classes.isEmpty()) {
+            superClass = null;
+          } else {
+            superClass = classes.get(0);
+            if(classes.size() > 1){
+              StringBuilder str = new StringBuilder("Ontology class name \"" +
+                  predicate.featureValue.toString() +
+                  "\" is ambiguous: [");
+              boolean first = true;
+              for(OResource aClass : classes) {
+                if(first) {
+                  first = false;
+                } else {
+                  str.append(", ");
+                }
+                str.append(aClass.getONodeID().getNameSpace());
+                str.append(aClass.getONodeID().getResourceName());
+              }
+              str.append("].");
+              logger.warn(str.toString());
+            }
+          }
+          OResource subClass = null;
+          classes = ontology.getOResourcesByName(actualValue.toString());
+          if(classes.isEmpty()) {
+            subClass = null;
+          } else {
+            subClass = classes.get(0);
+            if(classes.size() > 1){
+              StringBuilder str = new StringBuilder("Ontology class name \"" +
+                  predicate.featureValue.toString() +
+                  "\" is ambiguous: [");
+              boolean first = true;
+              for(OResource aClass : classes) {
+                if(first) {
+                  first = false;
+                } else {
+                  str.append(", ");
+                }
+                str.append(aClass.getONodeID().getNameSpace());
+                str.append(aClass.getONodeID().getResourceName());
+              }
+              str.append("].");
+              logger.warn(str.toString());
+            }
+          }
+          
           if(superClass == null || !(superClass instanceof OClass) || 
              subClass == null || !(subClass instanceof OClass)) {
             result = false;
           } else {
             result = subClass == superClass || ((OClass)subClass).isSubClassOf(
-                (OClass)superClass, OConstants.TRANSITIVE_CLOSURE);
+                (OClass)superClass, Closure.TRANSITIVE_CLOSURE);
           }
         } else {
           if(actualValue == null) {

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
GATE-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gate-cvs

Reply via email to