You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by rw...@apache.org on 2014/01/20 10:24:30 UTC

svn commit: r1559652 - in /stanbol/branches/release-0.12/enhancer/generic: nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/ nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/ nlp/src/main/java/org/apache/s...

Author: rwesten
Date: Mon Jan 20 09:24:29 2014
New Revision: 1559652

URL: http://svn.apache.org/r1559652
Log:
merged latest patch for STANBOL-1132 to the 0.12 branch

Modified:
    stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/CorefFeatureSupport.java
    stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/DependencyRelationSupport.java   (contents, props changed)
    stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/CorefFeatureSupportTest.java
    stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/DependencyRelationSupportTest.java
    stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/coref/CorefFeature.java
    stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/DependencyRelation.java
    stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelation.java
    stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelationTag.java

Modified: stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/CorefFeatureSupport.java
URL: http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/CorefFeatureSupport.java?rev=1559652&r1=1559651&r2=1559652&view=diff
==============================================================================
--- stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/CorefFeatureSupport.java (original)
+++ stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/CorefFeatureSupport.java Mon Jan 20 09:24:29 2014
@@ -15,7 +15,6 @@
  * limitations under the License.
  */package org.apache.stanbol.enhancer.nlp.json.valuetype.impl;
 
-import java.util.Collections;
 import java.util.HashSet;
 import java.util.Set;
 
@@ -53,24 +52,21 @@ public class CorefFeatureSupport impleme
 		
 		jCoref.put(IS_REPRESENTATIVE_TAG, coref.isRepresentative());
 		
-        Set<Span> mentions = coref.getMentions();
+        Set<Span> mentions = coref.getMentions(); 
+        ArrayNode jMentions = mapper.createArrayNode();
         
-        if(!mentions.isEmpty()) {
-            ArrayNode jMentions = mapper.createArrayNode();
+        for(Span mention : mentions) {
+            ObjectNode jMention = mapper.createObjectNode();
             
-            for(Span mention : mentions) {
-                ObjectNode jMention = mapper.createObjectNode();
-                
-                jMention.put(MENTION_TYPE_TAG, mention.getType().toString());
-                jMention.put(MENTION_START_TAG, mention.getStart());
-                jMention.put(MENTION_END_TAG, mention.getEnd());
-                
-                jMentions.add(jMention);
-            }
+            jMention.put(MENTION_TYPE_TAG, mention.getType().toString());
+            jMention.put(MENTION_START_TAG, mention.getStart());
+            jMention.put(MENTION_END_TAG, mention.getEnd());
             
-            jCoref.put(MENTIONS_TAG, jMentions);
+            jMentions.add(jMention);
         }
         
+        jCoref.put(MENTIONS_TAG, jMentions);
+        
 		return jCoref;
 	}
 
@@ -121,7 +117,7 @@ public class CorefFeatureSupport impleme
                 }
             }
 		}    
-                
-		return new CorefFeature(jIsRepresentative.asBoolean(), Collections.unmodifiableSet(mentions));
+        
+		return new CorefFeature(jIsRepresentative.asBoolean(), mentions);
 	}	
 }
\ No newline at end of file

Modified: stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/DependencyRelationSupport.java
URL: http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/DependencyRelationSupport.java?rev=1559652&r1=1559651&r2=1559652&view=diff
==============================================================================
--- stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/DependencyRelationSupport.java (original)
+++ stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/DependencyRelationSupport.java Mon Jan 20 09:24:29 2014
@@ -41,7 +41,7 @@ public class DependencyRelationSupport i
 
     private static final String RELATION_TYPE_TAG = "tag";
     private static final String RELATION_STANBOL_TYPE_TAG = "relationType";
-    private static final String RELATION_IS_DEPENDEE_TAG = "isDependent";
+    private static final String RELATION_IS_DEPENDENT_TAG = "isDependent";
     private static final String RELATION_PARTNER_TYPE_TAG = "partnerType";
     private static final String RELATION_PARTNER_START_TAG = "partnerStart";
     private static final String RELATION_PARTNER_END_TAG = "partnerEnd";
@@ -54,7 +54,7 @@ public class DependencyRelationSupport i
         GrammaticalRelationTag gramRelTag = relation.getGrammaticalRelationTag();
         jDependencyRelation.put(RELATION_TYPE_TAG, gramRelTag.getTag());
         jDependencyRelation.put(RELATION_STANBOL_TYPE_TAG, gramRelTag.getGrammaticalRelation().ordinal());
-        jDependencyRelation.put(RELATION_IS_DEPENDEE_TAG, (relation.isDependent()));
+        jDependencyRelation.put(RELATION_IS_DEPENDENT_TAG, (relation.isDependent()));
 
         Span partner = relation.getPartner();
         if (partner != null) {
@@ -90,7 +90,7 @@ public class DependencyRelationSupport i
         GrammaticalRelationTag gramRelTag = new GrammaticalRelationTag(tag.getTextValue(),
                 grammaticalRelation);
 
-        JsonNode isDependent = jDependencyRelation.path(RELATION_IS_DEPENDEE_TAG);
+        JsonNode isDependent = jDependencyRelation.path(RELATION_IS_DEPENDENT_TAG);
 
         if (!isDependent.isBoolean()) {
             throw new IllegalStateException("Field 'isDependent' must have a true/false format");

Propchange: stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/DependencyRelationSupport.java
------------------------------------------------------------------------------
  Merged /stanbol/trunk/enhancer/generic/nlp-json/src/main/java/org/apache/stanbol/enhancer/nlp/json/valuetype/impl/DependencyRelationSupport.java:r1559644

Modified: stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/CorefFeatureSupportTest.java
URL: http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/CorefFeatureSupportTest.java?rev=1559652&r1=1559651&r2=1559652&view=diff
==============================================================================
--- stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/CorefFeatureSupportTest.java (original)
+++ stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/CorefFeatureSupportTest.java Mon Jan 20 09:24:29 2014
@@ -97,11 +97,11 @@ public class CorefFeatureSupportTest ext
         Set<Span> obamaMentions = new HashSet<Span>();
         obamaMentions.add(he);
         obama.addAnnotation(NlpAnnotations.COREF_ANNOTATION, 
-        	Value.value(new CorefFeature(true, Collections.unmodifiableSet(obamaMentions))));
+        	Value.value(new CorefFeature(true, obamaMentions)));
         
         Set<Span> heMentions = new HashSet<Span>();
         heMentions.add(obama);
         he.addAnnotation(NlpAnnotations.COREF_ANNOTATION, 
-        	Value.value(new CorefFeature(false, Collections.unmodifiableSet(heMentions))));
+        	Value.value(new CorefFeature(false, heMentions)));
 	}
 }

Modified: stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/DependencyRelationSupportTest.java
URL: http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/DependencyRelationSupportTest.java?rev=1559652&r1=1559651&r2=1559652&view=diff
==============================================================================
--- stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/DependencyRelationSupportTest.java (original)
+++ stanbol/branches/release-0.12/enhancer/generic/nlp-json/src/test/java/org/apache/stanbol/enhancer/nlp/json/valuetype/DependencyRelationSupportTest.java Mon Jan 20 09:24:29 2014
@@ -18,7 +18,6 @@ package org.apache.stanbol.enhancer.nlp.
 
 import java.io.IOException;
 
-import org.apache.commons.io.FilenameUtils;
 import org.apache.stanbol.enhancer.nlp.NlpAnnotations;
 import org.apache.stanbol.enhancer.nlp.dependency.DependencyRelation;
 import org.apache.stanbol.enhancer.nlp.dependency.GrammaticalRelation;
@@ -41,7 +40,7 @@ public class DependencyRelationSupportTe
 	    + "    \"end\" : 5," + LINE_SEPARATOR
 	    + "    \"stanbol.enhancer.nlp.dependency\" : {" + LINE_SEPARATOR
 	    + "      \"tag\" : \"nsubj\"," + LINE_SEPARATOR
-	    + "      \"relationType\" : 32," + LINE_SEPARATOR
+	    + "      \"relationType\" : 33," + LINE_SEPARATOR
 	    + "      \"isDependent\" : true," + LINE_SEPARATOR
 	    + "      \"partnerType\" : \"Token\"," + LINE_SEPARATOR
 	    + "      \"partnerStart\" : 6," + LINE_SEPARATOR
@@ -56,7 +55,7 @@ public class DependencyRelationSupportTe
 	    + "    \"end\" : 13," + LINE_SEPARATOR
 	    + "    \"stanbol.enhancer.nlp.dependency\" : [ {" + LINE_SEPARATOR
 	    + "      \"tag\" : \"root\"," + LINE_SEPARATOR
-	    + "      \"relationType\" : 56," + LINE_SEPARATOR
+	    + "      \"relationType\" : 57," + LINE_SEPARATOR
 	    + "      \"isDependent\" : true," + LINE_SEPARATOR
 	    + "      \"partnerType\" : \"ROOT\"," + LINE_SEPARATOR
 	    + "      \"partnerStart\" : 0," + LINE_SEPARATOR
@@ -64,7 +63,7 @@ public class DependencyRelationSupportTe
 	    + "      \"class\" : \"org.apache.stanbol.enhancer.nlp.dependency.DependencyRelation\"" + LINE_SEPARATOR
 	    + "    }, {" + LINE_SEPARATOR
 	    + "      \"tag\" : \"nsubj\"," + LINE_SEPARATOR
-	    + "      \"relationType\" : 32," + LINE_SEPARATOR
+	    + "      \"relationType\" : 33," + LINE_SEPARATOR
 	    + "      \"isDependent\" : false," + LINE_SEPARATOR
 	    + "      \"partnerType\" : \"Token\"," + LINE_SEPARATOR
 	    + "      \"partnerStart\" : 0," + LINE_SEPARATOR

Modified: stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/coref/CorefFeature.java
URL: http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/coref/CorefFeature.java?rev=1559652&r1=1559651&r2=1559652&view=diff
==============================================================================
--- stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/coref/CorefFeature.java (original)
+++ stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/coref/CorefFeature.java Mon Jan 20 09:24:29 2014
@@ -42,19 +42,13 @@ public class CorefFeature {
 	 */
 	private Set<Span> mentions;
 
-	public CorefFeature() {
-		this(false, Collections.unmodifiableSet(Collections
-				.<Span> emptySet()));
-	}
-
-	public CorefFeature(boolean isRepresentative) {
-		this(isRepresentative, Collections.unmodifiableSet(Collections
-				.<Span> emptySet()));
-	}
-
 	public CorefFeature(boolean isRepresentative, Set<Span> mentions) {
+		if (mentions == null || mentions.isEmpty()) {
+			throw new IllegalArgumentException("The mentions set cannot be null or empty");
+		}
+		
 		this.isRepresentative = isRepresentative;
-		this.mentions = mentions;
+		this.mentions = Collections.unmodifiableSet(mentions);
 	}
 
 	/**
@@ -78,11 +72,25 @@ public class CorefFeature {
 	}
 
 	public int hashCode() {
-		return (this.mentions != null) ? this.mentions.hashCode() : 0;
+		final int prime = 31;
+        int result = 1;
+        result = prime * result + (isRepresentative ? 1231 : 1237);
+        result = prime * result + mentions.hashCode();
+		
+        return result;
 	}
 
 	public boolean equals(Object obj) {
-		return (obj instanceof CorefFeature)
-				&& (this.mentions.equals(((CorefFeature) obj).getMentions()));
+		if (this == obj)
+			return true;
+		if (obj == null)
+			return false;
+		if (getClass() != obj.getClass())
+            return false;
+		
+        CorefFeature other = (CorefFeature) obj;
+        
+		return (isRepresentative == other.isRepresentative)
+			&& (mentions.equals(other.mentions));
 	}
 }

Modified: stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/DependencyRelation.java
URL: http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/DependencyRelation.java?rev=1559652&r1=1559651&r2=1559652&view=diff
==============================================================================
--- stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/DependencyRelation.java (original)
+++ stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/DependencyRelation.java Mon Jan 20 09:24:29 2014
@@ -47,6 +47,10 @@ public class DependencyRelation {
 	}
 
 	public DependencyRelation(GrammaticalRelationTag grammaticalRelationTag) {
+		if (grammaticalRelationTag == null) {
+			throw new IllegalArgumentException("The grammatical relation tag cannot be null");
+		}
+		
 		this.grammaticalRelationTag = grammaticalRelationTag;
 	}
 
@@ -78,17 +82,12 @@ public class DependencyRelation {
 	public Span getPartner() {
 		return this.partner;
 	}
-
-	public void setPartner(Span partner) {
-		this.partner = partner;
-	}
 
-    @Override
+	@Override
     public int hashCode() {
         final int prime = 31;
         int result = 1;
-        result = prime * result + ((grammaticalRelationTag == null) ? 0
-                        : grammaticalRelationTag.hashCode());
+        result = prime * result + grammaticalRelationTag.hashCode();
         result = prime * result + (isDependent ? 1231 : 1237);
         result = prime * result + ((partner == null) ? 0 : partner.hashCode());
         return result;
@@ -102,19 +101,16 @@ public class DependencyRelation {
             return false;
         if (getClass() != obj.getClass())
             return false;
+        
         DependencyRelation other = (DependencyRelation) obj;
-        if (grammaticalRelationTag == null) {
-            if (other.grammaticalRelationTag != null)
-                return false;
-        } else if (!grammaticalRelationTag.equals(other.grammaticalRelationTag))
-            return false;
-        if (isDependent != other.isDependent)
-            return false;
+        
         if (partner == null) {
             if (other.partner != null)
                 return false;
         } else if (!partner.equals(other.partner))
             return false;
-        return true;
+        
+        return (grammaticalRelationTag.equals(other.grammaticalRelationTag))
+        	&& (isDependent == other.isDependent);
     }
 }

Modified: stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelation.java
URL: http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelation.java?rev=1559652&r1=1559651&r2=1559652&view=diff
==============================================================================
--- stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelation.java (original)
+++ stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelation.java Mon Jan 20 09:24:29 2014
@@ -213,6 +213,17 @@ public enum GrammaticalRelation {
 	 * raise)
 	 */
 	DirectObject(Object),
+	
+	/**
+	 * The "discourse element" grammatical relation. This is used for interjections and
+	 * other discourse particles and elements (which are not clearly linked to the structure
+	 * of the sentence, except in an expressive way). We generally follow the
+	 * guidelines of what the Penn Treebanks count as an INTJ.  They
+	 * define this to include: interjections (oh, uh-huh, Welcome), fillers (um, ah),
+	 * and discourse markers (well, like, actually, but not: you know).
+	 * We also use it for emoticons.
+	 */
+	Discourse(Modifier),
 
 	/**
 	 * This relation captures an existential &quot;there&quot;. The main verb of

Modified: stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelationTag.java
URL: http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelationTag.java?rev=1559652&r1=1559651&r2=1559652&view=diff
==============================================================================
--- stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelationTag.java (original)
+++ stanbol/branches/release-0.12/enhancer/generic/nlp/src/main/java/org/apache/stanbol/enhancer/nlp/dependency/GrammaticalRelationTag.java Mon Jan 20 09:24:29 2014
@@ -39,14 +39,23 @@ public class GrammaticalRelationTag exte
 			GrammaticalRelation grammaticalRelation) {
 		this(tag);
 
-		this.setGrammaticalRelation(grammaticalRelation);
+		if (grammaticalRelation == null) {
+			throw new IllegalArgumentException("The grammatical relation cannot be null");
+		}
+		
+		this.grammaticalRelation = grammaticalRelation;
 	}
 
 	public GrammaticalRelation getGrammaticalRelation() {
 		return grammaticalRelation;
 	}
 
-	public void setGrammaticalRelation(GrammaticalRelation grammaticalRelation) {
-		this.grammaticalRelation = grammaticalRelation;
+	@Override
+	public int hashCode() {
+		final int prime = 31;
+        int result = super.hashCode();
+        result = prime * result + grammaticalRelation.hashCode();
+        
+        return result;
 	}
 }