This is an automated email from the ASF dual-hosted git repository.
mawiesne pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/opennlp.git
The following commit(s) were added to refs/heads/main by this push:
new 2690b88d OPENNLP-1694: Enhance JavaDoc in util.featuregen package
(#739)
2690b88d is described below
commit 2690b88df892319e46b79935eb880dc4567afe36
Author: Martin Wiesner <[email protected]>
AuthorDate: Thu Jan 16 10:44:41 2025 +0100
OPENNLP-1694: Enhance JavaDoc in util.featuregen package (#739)
---
.../AdditionalContextFeatureGenerator.java | 1 -
.../featuregen/AggregatedFeatureGenerator.java | 24 +++++++++++++---------
.../AggregatedFeatureGeneratorFactory.java | 3 +++
.../featuregen/BigramNameFeatureGenerator.java | 5 +++++
.../BigramNameFeatureGeneratorFactory.java | 6 ++++++
.../featuregen/BrownBigramFeatureGenerator.java | 9 ++++++--
.../tools/util/featuregen/BrownCluster.java | 9 ++++----
.../BrownClusterBigramFeatureGeneratorFactory.java | 5 ++++-
...wnClusterTokenClassFeatureGeneratorFactory.java | 5 ++++-
.../BrownClusterTokenFeatureGeneratorFactory.java | 5 ++++-
.../BrownTokenClassFeatureGenerator.java | 7 ++++++-
.../tools/util/featuregen/BrownTokenClasses.java | 6 +++---
.../featuregen/BrownTokenFeatureGenerator.java | 13 +++++++++++-
.../util/featuregen/CachedFeatureGenerator.java | 2 ++
.../featuregen/CachedFeatureGeneratorFactory.java | 3 +++
.../featuregen/CharacterNgramFeatureGenerator.java | 8 +++++---
.../CharacterNgramFeatureGeneratorFactory.java | 3 +++
.../DefinitionFeatureGeneratorFactory.java | 7 ++++---
.../featuregen/DictionaryFeatureGenerator.java | 21 ++++++++++++++-----
.../DictionaryFeatureGeneratorFactory.java | 3 +++
.../featuregen/DocumentBeginFeatureGenerator.java | 5 +++++
.../DocumentBeginFeatureGeneratorFactory.java | 6 ++++++
.../FeatureGeneratorResourceProvider.java | 8 +++++---
.../tools/util/featuregen/GeneratorFactory.java | 7 ++++---
.../tools/util/featuregen/InSpanGenerator.java | 11 ++++++++--
.../featuregen/OutcomePriorFeatureGenerator.java | 2 ++
.../featuregen/POSTaggerNameFeatureGenerator.java | 16 +++++++++------
.../POSTaggerNameFeatureGeneratorFactory.java | 3 +++
.../util/featuregen/PosTaggerFeatureGenerator.java | 5 +++++
.../PosTaggerFeatureGeneratorFactory.java | 6 ++++++
.../util/featuregen/PrefixFeatureGenerator.java | 21 +++++++++++++++++--
.../featuregen/PrefixFeatureGeneratorFactory.java | 3 +++
.../featuregen/PreviousMapFeatureGenerator.java | 4 +++-
.../PreviousMapFeatureGeneratorFactory.java | 4 +++-
.../featuregen/PreviousTwoMapFeatureGenerator.java | 2 ++
.../util/featuregen/SentenceFeatureGenerator.java | 2 ++
.../SentenceFeatureGeneratorFactory.java | 3 +++
.../util/featuregen/SuffixFeatureGenerator.java | 21 +++++++++++++++++--
.../featuregen/SuffixFeatureGeneratorFactory.java | 3 +++
.../featuregen/TokenClassFeatureGenerator.java | 14 ++++++++++++-
.../TokenClassFeatureGeneratorFactory.java | 3 +++
.../util/featuregen/TokenFeatureGenerator.java | 6 ++++--
.../featuregen/TokenFeatureGeneratorFactory.java | 6 ++++++
.../featuregen/TokenPatternFeatureGenerator.java | 3 +++
.../TokenPatternFeatureGeneratorFactory.java | 3 +++
.../featuregen/TrigramNameFeatureGenerator.java | 1 +
.../TrigramNameFeatureGeneratorFactory.java | 6 ++++++
.../featuregen/WindowFeatureGeneratorFactory.java | 3 +++
.../featuregen/WordClusterFeatureGenerator.java | 1 +
.../WordClusterFeatureGeneratorFactory.java | 4 +++-
50 files changed, 266 insertions(+), 61 deletions(-)
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AdditionalContextFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AdditionalContextFeatureGenerator.java
index c35a1c1a..9c7d4f36 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AdditionalContextFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AdditionalContextFeatureGenerator.java
@@ -34,7 +34,6 @@ public class AdditionalContextFeatureGenerator implements
AdaptiveFeatureGenerat
public void createFeatures(List<String> features, String[] tokens, int
index, String[] preds) {
if (additionalContext != null && additionalContext.length != 0) {
-
String[] context = additionalContext[index];
for (String s : context) {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGenerator.java
index 78af4325..68557bff 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGenerator.java
@@ -25,16 +25,17 @@ import java.util.Objects;
/**
* The {@link AggregatedFeatureGenerator} aggregates a set of
- * {@link AdaptiveFeatureGenerator}s and calls them to generate the features.
+ * {@link AdaptiveFeatureGenerator feature generators} and calls them
+ * to generate the features.
*/
public class AggregatedFeatureGenerator implements AdaptiveFeatureGenerator {
private Collection<AdaptiveFeatureGenerator> generators;
/**
- * Initializes the current instance.
+ * Initializes an {@link AggregatedFeatureGenerator} via specified {@code
generators}.
*
- * @param generators array of generators, null values are not permitted
+ * @param generators A collection of generators, {@code null} values are not
permitted.
*/
public AggregatedFeatureGenerator(AdaptiveFeatureGenerator... generators) {
@@ -49,17 +50,21 @@ public class AggregatedFeatureGenerator implements
AdaptiveFeatureGenerator {
this.generators = Collections.unmodifiableCollection(this.generators);
}
+ /**
+ * Initializes an {@link AggregatedFeatureGenerator} via specified {@code
generators}.
+ *
+ * @param generators A collection of generators, {@code null} values are not
permitted.
+ */
public AggregatedFeatureGenerator(Collection<AdaptiveFeatureGenerator>
generators) {
this(generators.toArray(new AdaptiveFeatureGenerator[0]));
}
/**
* Calls the {@link AdaptiveFeatureGenerator#clearAdaptiveData()} method
- * on all aggregated {@link AdaptiveFeatureGenerator}s.
+ * on all aggregated {@link AdaptiveFeatureGenerator feature generators}.
*/
@Override
public void clearAdaptiveData() {
-
for (AdaptiveFeatureGenerator generator : generators) {
generator.clearAdaptiveData();
}
@@ -67,7 +72,7 @@ public class AggregatedFeatureGenerator implements
AdaptiveFeatureGenerator {
/**
* Calls the {@link AdaptiveFeatureGenerator#createFeatures(List, String[],
int, String[])}
- * method on all aggregated {@link AdaptiveFeatureGenerator}s.
+ * method on all aggregated {@link AdaptiveFeatureGenerator feature
generators}.
*/
@Override
public void createFeatures(List<String> features, String[] tokens, int index,
@@ -80,10 +85,9 @@ public class AggregatedFeatureGenerator implements
AdaptiveFeatureGenerator {
/**
* Calls the {@link AdaptiveFeatureGenerator#updateAdaptiveData(String[],
String[])}
- * method on all aggregated {@link AdaptiveFeatureGenerator}s.
+ * method on all aggregated {@link AdaptiveFeatureGenerator feature
generators}.
*/
public void updateAdaptiveData(String[] tokens, String[] outcomes) {
-
for (AdaptiveFeatureGenerator generator : generators) {
generator.updateAdaptiveData(tokens, outcomes);
}
@@ -91,9 +95,9 @@ public class AggregatedFeatureGenerator implements
AdaptiveFeatureGenerator {
/**
* Retrieves a {@link Collections} of all aggregated
- * {@link AdaptiveFeatureGenerator}s.
+ * {@link AdaptiveFeatureGenerator feature generators}.
*
- * @return all aggregated generators
+ * @return All aggregated generators in use.
*/
public Collection<AdaptiveFeatureGenerator> getGenerators() {
return generators;
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGeneratorFactory.java
index a3f3595c..5dffa228 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGeneratorFactory.java
@@ -24,6 +24,9 @@ import java.util.Map;
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} that produces {@link AggregatedFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
* @see AggregatedFeatureGenerator
*/
public class AggregatedFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGenerator.java
index a9972dc7..40545f58 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGenerator.java
@@ -19,6 +19,11 @@ package opennlp.tools.util.featuregen;
import java.util.List;
+/**
+ * Adds bigram features based on tokens and token classes.
+ *
+ * @see AdaptiveFeatureGenerator
+ */
public class BigramNameFeatureGenerator implements AdaptiveFeatureGenerator {
@Override
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGeneratorFactory.java
index 8b60d8ae..2064da5e 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGeneratorFactory.java
@@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
+/**
+ * A {@link GeneratorFactory} that produces {@link BigramNameFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
+ * @see BigramNameFeatureGenerator
+ */
public class BigramNameFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownBigramFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownBigramFeatureGenerator.java
index b16606ce..3f35e069 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownBigramFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownBigramFeatureGenerator.java
@@ -21,6 +21,9 @@ import java.util.List;
/**
* Generates Brown cluster features for token bigrams.
+ *
+ * @see AdaptiveFeatureGenerator
+ * @see BrownCluster
*/
public class BrownBigramFeatureGenerator implements AdaptiveFeatureGenerator {
@@ -31,8 +34,10 @@ public class BrownBigramFeatureGenerator implements
AdaptiveFeatureGenerator {
private final BrownCluster brownCluster;
/**
- * Creates a new Brown Cluster bigram feature generator.
- * @param brownCluster A {@link BrownCluster}.
+ * Initializes a {@link BrownBigramFeatureGenerator} generator via a
specified
+ * {@link BrownCluster}.
+ *
+ * @param brownCluster The token {@link BrownCluster dictionary} to use.
*/
public BrownBigramFeatureGenerator(BrownCluster brownCluster) {
this.brownCluster = brownCluster;
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownCluster.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownCluster.java
index 88759662..221816b4 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownCluster.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownCluster.java
@@ -34,8 +34,7 @@ import opennlp.tools.util.model.ArtifactSerializer;
import opennlp.tools.util.model.SerializableArtifact;
/**
- *
- * Class to load a Brown cluster document: word\tword_class\tprob
+ * Class to load a Brown cluster document in the format: {@code
word\tword_class\tprob}.
* <p>
* Originally available at: <a
href="http://metaoptimize.com/projects/wordreprs/">
* http://metaoptimize.com/projects/wordreprs/</a>.
@@ -69,8 +68,8 @@ public class BrownCluster implements SerializableArtifact {
/**
* Instatiates a {@link BrownCluster} and its related token to cluster map
* via an {@link InputStream}.
- * <p>
- * <b>Note:</b>
+ *
+ * @implNote
* Only tokens with frequency bigger than {@code 5} will be added.
*
* @param in A valid, open {@link InputStream} to read from.
@@ -101,7 +100,7 @@ public class BrownCluster implements SerializableArtifact {
* Check if a token is in the Brown:paths, token map.
*
* @param string the token to look-up
- * @return the brown class if such token is in the brown cluster map
+ * @return the brown class if such token is in the brown cluster map.
*/
public String lookupToken(String string) {
return tokenToClusterMap.get(string);
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterBigramFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterBigramFeatureGeneratorFactory.java
index 7c9ee952..aa92b296 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterBigramFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterBigramFeatureGeneratorFactory.java
@@ -24,7 +24,10 @@ import opennlp.tools.util.InvalidFormatException;
import opennlp.tools.util.model.ArtifactSerializer;
/**
- * Generates Brown clustering features for token bigrams.
+ * A {@link GeneratorFactory} that produces {@link
BrownBigramFeatureGenerator} instances
+ * when {@link #create()} is called.
+ *
+ * @see BrownBigramFeatureGenerator
*/
public class BrownClusterBigramFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenClassFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenClassFeatureGeneratorFactory.java
index 47bc8390..1b6624c8 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenClassFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenClassFeatureGeneratorFactory.java
@@ -24,7 +24,10 @@ import opennlp.tools.util.InvalidFormatException;
import opennlp.tools.util.model.ArtifactSerializer;
/**
- * Generates Brown clustering features for token classes.
+ * A {@link GeneratorFactory} that produces {@link
BrownTokenClassFeatureGenerator} instances
+ * when {@link #create()} is called.
+ *
+ * @see BrownTokenClassFeatureGenerator
*/
public class BrownClusterTokenClassFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenFeatureGeneratorFactory.java
index fa3f834f..1e246a21 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenFeatureGeneratorFactory.java
@@ -24,7 +24,10 @@ import opennlp.tools.util.InvalidFormatException;
import opennlp.tools.util.model.ArtifactSerializer;
/**
- * Generates Brown clustering features for current token.
+ * A {@link GeneratorFactory} that produces {@link BrownTokenFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
+ * @see BrownTokenFeatureGenerator
*/
public class BrownClusterTokenFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClassFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClassFeatureGenerator.java
index dde9ef66..9c0a2575 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClassFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClassFeatureGenerator.java
@@ -21,9 +21,14 @@ import java.util.List;
/**
* Generates {@link BrownCluster} features for current token and token class.
+ *
+ * @see AdaptiveFeatureGenerator
+ * @see BrownCluster
*/
public class BrownTokenClassFeatureGenerator implements
AdaptiveFeatureGenerator {
+ private static final String PREFIX = "c,browncluster=";
+
private final BrownCluster brownLexicon;
/**
@@ -44,7 +49,7 @@ public class BrownTokenClassFeatureGenerator implements
AdaptiveFeatureGenerator
List<String> wordClasses = BrownTokenClasses.getWordClasses(tokens[index],
brownLexicon);
for (String wordClass : wordClasses) {
- features.add("c," + "browncluster" + "=" + wordShape + "," + wordClass);
+ features.add(PREFIX + wordShape + "," + wordClass);
}
}
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClasses.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClasses.java
index 65277dd2..5629dbe4 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClasses.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClasses.java
@@ -35,9 +35,9 @@ public class BrownTokenClasses {
* It provides a list containing the pathLengths for a token if found
* in the Map:token,BrownClass.
*
- * @param token the token to be looked up in the brown clustering map
- * @param brownLexicon the Brown clustering map
- * @return the list of the paths for a token
+ * @param token The token to be looked up in the brown clustering map
+ * @param brownLexicon The {@link BrownCluster} clustering map
+ * @return A list of the paths for a token.
*/
public static List<String> getWordClasses(String token, BrownCluster
brownLexicon) {
if (brownLexicon.lookupToken(token) == null) {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenFeatureGenerator.java
index 76a2ce7c..ffc1b4d4 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenFeatureGenerator.java
@@ -21,11 +21,22 @@ import java.util.List;
/**
* Generates {@link BrownCluster} features for current token.
+ *
+ * @see AdaptiveFeatureGenerator
+ * @see BrownCluster
*/
public class BrownTokenFeatureGenerator implements AdaptiveFeatureGenerator {
+ private static final String PREFIX = "browncluster=";
+
private final BrownCluster brownLexicon;
+ /**
+ * Instantiates a {@link BrownTokenFeatureGenerator} via a specified
+ * {@link BrownCluster}.
+ *
+ * @param dict The token {@link BrownCluster dictionary} to use.
+ */
public BrownTokenFeatureGenerator(BrownCluster dict) {
this.brownLexicon = dict;
}
@@ -37,7 +48,7 @@ public class BrownTokenFeatureGenerator implements
AdaptiveFeatureGenerator {
List<String> wordClasses = BrownTokenClasses.getWordClasses(tokens[index],
brownLexicon);
for (String wordClass : wordClasses) {
- features.add("browncluster" + "=" + wordClass);
+ features.add(PREFIX + wordClass);
}
}
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGenerator.java
index e26ffbdd..d7875b2e 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGenerator.java
@@ -25,6 +25,8 @@ import opennlp.tools.util.Cache;
/**
* Caches features of the aggregated {@link AdaptiveFeatureGenerator
generators}.
+ *
+ * @see Cache
*/
public class CachedFeatureGenerator implements AdaptiveFeatureGenerator {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGeneratorFactory.java
index 70c0610e..14e3e698 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGeneratorFactory.java
@@ -21,6 +21,9 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} that produces {@link CachedFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
* @see CachedFeatureGenerator
*/
public class CachedFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGenerator.java
index 62a0b109..59b66bea 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGenerator.java
@@ -26,6 +26,8 @@ import opennlp.tools.util.StringUtil;
/**
* The {@link CharacterNgramFeatureGenerator} uses character ngrams to
* generate features about each token.
+ *
+ * @see AdaptiveFeatureGenerator
*/
public class CharacterNgramFeatureGenerator implements
AdaptiveFeatureGenerator {
@@ -35,7 +37,7 @@ public class CharacterNgramFeatureGenerator implements
AdaptiveFeatureGenerator
private final int maxLength;
/**
- * Initializes a {@link CharacterNgramFeatureGenerator}.
+ * Initializes a {@link CharacterNgramFeatureGenerator} with the specified
parameters.
*
* @param minLength The minimum length to use. Must not be negative.
* @param maxLength The maximum length to use. Must not be negative.
@@ -46,8 +48,8 @@ public class CharacterNgramFeatureGenerator implements
AdaptiveFeatureGenerator
}
/**
- * Initializes a {@link CharacterNgramFeatureGenerator} with
- * min length of {@code 2} and max length of {@code 5} for ngrams.
+ * Initializes a {@link CharacterNgramFeatureGenerator} with default values
for ngrams.
+ * The minimal length is set to {@code 2} and maximum length to a value of
{@code 5}.
*/
public CharacterNgramFeatureGenerator() {
this(2, 5);
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGeneratorFactory.java
index f449f8db..2b2d866d 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGeneratorFactory.java
@@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} that produces {@link
CharacterNgramFeatureGenerator} instances
+ * when {@link #create()} is called.
+ *
* @see CharacterNgramFeatureGenerator
*/
public class CharacterNgramFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DefinitionFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DefinitionFeatureGeneratorFactory.java
index cbe8ce4f..b7ed6599 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DefinitionFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DefinitionFeatureGeneratorFactory.java
@@ -20,13 +20,14 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
/**
- * @see DefinitionFeatureGeneratorFactory
+ * A {@link GeneratorFactory} that produces {@link
OutcomePriorFeatureGenerator} instances
+ * when {@link #create()} is called.
+ *
+ * @see OutcomePriorFeatureGenerator
*/
public class DefinitionFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {
- private static final String ELEMENT_NAME = "definition";
-
public DefinitionFeatureGeneratorFactory() {
super();
}
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGenerator.java
index 9963e230..42089f94 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGenerator.java
@@ -24,8 +24,8 @@ import opennlp.tools.dictionary.Dictionary;
import opennlp.tools.namefind.DictionaryNameFinder;
/**
- * The {@link DictionaryFeatureGenerator} uses the {@link DictionaryNameFinder}
- * to generated features for detected names based on the {@link
InSpanGenerator}.
+ * The {@link DictionaryFeatureGenerator} uses a {@link DictionaryNameFinder}
+ * to generate features for detected names based on the {@link
InSpanGenerator}.
*
* @see Dictionary
* @see DictionaryNameFinder
@@ -35,16 +35,27 @@ public class DictionaryFeatureGenerator implements
AdaptiveFeatureGenerator {
private InSpanGenerator isg;
+ /**
+ * Initializes a {@link DictionaryFeatureGenerator} with the specified
{@link Dictionary}.
+ *
+ * @param dict The {@link Dictionary} to use. Must not be {@code null}.
+ */
public DictionaryFeatureGenerator(Dictionary dict) {
- this("",dict);
+ this("", dict);
}
+ /**
+ * Initializes a {@link DictionaryFeatureGenerator} with the specified
parameters.
+ *
+ * @param prefix The prefix to set. Must not be {@code null} but may be
empty.
+ * @param dict The {@link Dictionary} to use. Must not be {@code null}.
+ */
public DictionaryFeatureGenerator(String prefix, Dictionary dict) {
- setDictionary(prefix,dict);
+ setDictionary(prefix, dict);
}
public void setDictionary(Dictionary dict) {
- setDictionary("",dict);
+ setDictionary("", dict);
}
public void setDictionary(String name, Dictionary dict) {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGeneratorFactory.java
index 4d49a076..39d0a76f 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGeneratorFactory.java
@@ -28,6 +28,9 @@ import opennlp.tools.util.model.ArtifactSerializer;
import opennlp.tools.util.model.DictionarySerializer;
/**
+ * A {@link GeneratorFactory} that produces {@link DictionaryFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
* @see DictionaryFeatureGenerator
*/
public class DictionaryFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGenerator.java
index 5531f9ed..dec1dd01 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGenerator.java
@@ -19,6 +19,11 @@ package opennlp.tools.util.featuregen;
import java.util.List;
+/**
+ * This feature generator creates document begin features.
+ *
+ * @see AdaptiveFeatureGenerator
+ */
public class DocumentBeginFeatureGenerator implements AdaptiveFeatureGenerator
{
private String[] firstSentence;
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGeneratorFactory.java
index 419d4b25..dfefc744 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGeneratorFactory.java
@@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
+/**
+ * A {@link GeneratorFactory} that produces {@link
DocumentBeginFeatureGenerator} instances
+ * when {@link #create()} is called.
+ *
+ * @see DocumentBeginFeatureGenerator
+ */
public class DocumentBeginFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/FeatureGeneratorResourceProvider.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/FeatureGeneratorResourceProvider.java
index f33c3acb..b39cc3ec 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/FeatureGeneratorResourceProvider.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/FeatureGeneratorResourceProvider.java
@@ -18,14 +18,16 @@
package opennlp.tools.util.featuregen;
+import opennlp.tools.commons.Internal;
+
/**
* The {@link FeatureGeneratorResourceProvider} provides access to the
resources
* available in the model. Inside the model resources are identified by a name.
- * <p>
- * <b>Note:</b><br>
- * This class is not be intended to be implemented by users.<br>
+ *
+ * @apiNote This interface is not intended to be implemented by users.<br>
* All implementing classes must be thread safe.
*/
+@Internal
public interface FeatureGeneratorResourceProvider {
/**
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/GeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/GeneratorFactory.java
index dcb9ccc2..f5795cca 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/GeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/GeneratorFactory.java
@@ -293,7 +293,7 @@ public class GeneratorFactory {
}
/**
- * Provides a list with all the elements in the xml feature descriptor.
+ * Provides a {@link List} with all the elements in the xml feature
descriptor.
*
* @param xmlDescriptorIn the xml feature descriptor
* @return a list containing all elements
@@ -516,8 +516,9 @@ public class GeneratorFactory {
}
/**
- * @return {@code null} if the subclass uses {@link #resourceManager} to
instantiate
- * @throws InvalidFormatException
+ * @return {@code null} if the subclass uses {@link #resourceManager} to
instantiate.
+ *
+ * @throws InvalidFormatException Thrown if the format is incorrect.
*/
public abstract AdaptiveFeatureGenerator create() throws
InvalidFormatException;
}
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/InSpanGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/InSpanGenerator.java
index 28de1863..cd9dd9ab 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/InSpanGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/InSpanGenerator.java
@@ -26,9 +26,16 @@ import opennlp.tools.util.Span;
/**
* Generates features if the tokens are recognized by the provided
* {@link TokenNameFinder}.
+ *
+ * @see AdaptiveFeatureGenerator
+ * @see TokenNameFinder
+ * @see Span
*/
public class InSpanGenerator implements AdaptiveFeatureGenerator {
+ private static final String W_DIC = ":w=dic";
+ private static final String W_DIC_IS = W_DIC + "=";
+
private final String prefix;
private final TokenNameFinder finder;
@@ -64,8 +71,8 @@ public class InSpanGenerator implements
AdaptiveFeatureGenerator {
for (Span currentName : currentNames) {
if (currentName.contains(index)) {
// found a span for the current token
- features.add(prefix + ":w=dic");
- features.add(prefix + ":w=dic=" + tokens[index]);
+ features.add(prefix + W_DIC);
+ features.add(prefix + W_DIC_IS + tokens[index]);
// TODO: consider generation start and continuation features
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/OutcomePriorFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/OutcomePriorFeatureGenerator.java
index 9e0bf74a..82723edc 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/OutcomePriorFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/OutcomePriorFeatureGenerator.java
@@ -21,6 +21,8 @@ import java.util.List;
/**
* The definition feature maps the underlying distribution of outcomes.
+ *
+ * @see AdaptiveFeatureGenerator
*/
public class OutcomePriorFeatureGenerator implements AdaptiveFeatureGenerator {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGenerator.java
index 9b67f684..57cb81f2 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGenerator.java
@@ -27,7 +27,11 @@ import opennlp.tools.postag.POSTagger;
import opennlp.tools.postag.POSTaggerME;
/**
- * Adds the token POS Tag as feature. Requires a POS Tag model.
+ * Adds the token POS tag as feature. Requires a {@link POSTagger} at runtime.
+ *
+ * @see AdaptiveFeatureGenerator
+ * @see POSTagger
+ * @see POSModel
*/
public class POSTaggerNameFeatureGenerator implements AdaptiveFeatureGenerator
{
@@ -37,24 +41,24 @@ public class POSTaggerNameFeatureGenerator implements
AdaptiveFeatureGenerator {
private String[] cachedTags;
/**
- * Initializes a new instance.
+ * Initializes a {@link POSTaggerNameFeatureGenerator} with the specified
{@link POSTagger}.
*
- * @param aPosTagger a POSTagger implementation.
+ * @param aPosTagger A POSTagger instance to be used.
*/
public POSTaggerNameFeatureGenerator(POSTagger aPosTagger) {
this.posTagger = aPosTagger;
}
/**
- * Initializes a new instance.
+ * Initializes a {@link POSTaggerNameFeatureGenerator} with the specified
{@link POSModel}.
*
- * @param aPosModel a POSTagger model.
+ * @param aPosModel A {@link POSModel} to be used for the internal {@link
POSTagger}.
*/
public POSTaggerNameFeatureGenerator(POSModel aPosModel) {
this.posTagger = new POSTaggerME(aPosModel,
POSTagFormatMapper.guessFormat(aPosModel));
}
-
+ @Override
public void createFeatures(List<String> feats, String[] toks, int index,
String[] preds) {
if (!Arrays.equals(this.cachedTokens, toks)) {
this.cachedTokens = toks;
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGeneratorFactory.java
index 3f44c8c6..6ba2961b 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGeneratorFactory.java
@@ -26,6 +26,9 @@ import opennlp.tools.util.model.ArtifactSerializer;
import opennlp.tools.util.model.POSModelSerializer;
/**
+ * A {@link GeneratorFactory} that produces {@link
POSTaggerNameFeatureGenerator} instances
+ * when {@link #create()} is called.
+ *
* @see POSTaggerNameFeatureGenerator
*/
public class POSTaggerNameFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGenerator.java
index bdfe4875..a7f677f6 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGenerator.java
@@ -19,6 +19,11 @@ package opennlp.tools.util.featuregen;
import java.util.List;
+/**
+ * A POS tagging driven feature generator. Adds words and pos tags of the
surrounding context.
+ *
+ * @see AdaptiveFeatureGenerator
+ */
public class PosTaggerFeatureGenerator implements AdaptiveFeatureGenerator {
private static final String SB = "S=begin";
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGeneratorFactory.java
index 88624db7..6320fd61 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGeneratorFactory.java
@@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
+/**
+ * A {@link GeneratorFactory} that produces {@link PosTaggerFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
+ * @see PosTaggerFeatureGenerator
+ */
public class PosTaggerFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGenerator.java
index 6466feef..35529661 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGenerator.java
@@ -19,18 +19,35 @@ package opennlp.tools.util.featuregen;
import java.util.List;
+/**
+ * A feature generator implementation that generates prefix-based features.
+ *
+ * @see AdaptiveFeatureGenerator
+ */
public class PrefixFeatureGenerator implements AdaptiveFeatureGenerator {
private static final String PREFIX = "pre=";
+ /**
+ * The default upper boundary prefix length value is {@code 4}.
+ */
static final int DEFAULT_MAX_LENGTH = 4;
private final int prefixLength;
-
+
+ /**
+ * Intializes a default {@link PrefixFeatureGenerator}.
+ * The prefixLength length is set to the value of {@link
#DEFAULT_MAX_LENGTH}.
+ */
public PrefixFeatureGenerator() {
prefixLength = DEFAULT_MAX_LENGTH;
}
-
+
+ /**
+ * Intializes a {@link PrefixFeatureGenerator} with the specified {@code
prefixLength}.
+ *
+ * @param prefixLength The upper boundary prefix length to use.
+ */
public PrefixFeatureGenerator(int prefixLength) {
this.prefixLength = prefixLength;
}
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGeneratorFactory.java
index 4f475ae9..7ed08f1b 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGeneratorFactory.java
@@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} that produces {@link PrefixFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
* @see PrefixFeatureGenerator
*/
public class PrefixFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGenerator.java
index 544c6fca..1daff822 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGenerator.java
@@ -36,10 +36,12 @@ public class PreviousMapFeatureGenerator implements
AdaptiveFeatureGenerator {
/**
* Generates previous decision features for the token based on contents of
the previous map.
+ *
+ * @param tokens The tokens of the sentence or other text unit which has
been processed.
+ * @param outcomes The outcomes associated with the specified tokens.
*/
@Override
public void updateAdaptiveData(String[] tokens, String[] outcomes) {
-
for (int i = 0; i < tokens.length; i++) {
previousMap.put(tokens[i], outcomes[i]);
}
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGeneratorFactory.java
index 6bfa846a..e81d5111 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGeneratorFactory.java
@@ -17,10 +17,12 @@
package opennlp.tools.util.featuregen;
-
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} that produces {@link
PreviousMapFeatureGenerator} instances
+ * when {@link #create()} is called.
+ *
* @see PreviousMapFeatureGenerator
*/
public class PreviousMapFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousTwoMapFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousTwoMapFeatureGenerator.java
index 0c59e2d4..90513963 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousTwoMapFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousTwoMapFeatureGenerator.java
@@ -24,6 +24,8 @@ import java.util.Map;
/**
* This {@link AdaptiveFeatureGenerator} generates features indicating the
* outcome associated with two previously occurring words.
+ *
+ * @see AdaptiveFeatureGenerator
*/
public class PreviousTwoMapFeatureGenerator implements
AdaptiveFeatureGenerator {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGenerator.java
index 1c76c138..7d10b263 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGenerator.java
@@ -21,6 +21,8 @@ import java.util.List;
/**
* This feature generator creates sentence begin and end features.
+ *
+ * @see AdaptiveFeatureGenerator
*/
public class SentenceFeatureGenerator implements AdaptiveFeatureGenerator {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGeneratorFactory.java
index d452fe7e..115a2fb9 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGeneratorFactory.java
@@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} that produces {@link SentenceFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
* @see SentenceFeatureGenerator
*/
public class SentenceFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGenerator.java
index e890cf08..25016845 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGenerator.java
@@ -19,18 +19,35 @@ package opennlp.tools.util.featuregen;
import java.util.List;
+/**
+ * A feature generator implementation that generates suffix-based features.
+ *
+ * @see AdaptiveFeatureGenerator
+ */
public class SuffixFeatureGenerator implements AdaptiveFeatureGenerator {
private static final String PREFIX = "suf=";
+ /**
+ * The default upper boundary suffix length value is {@code 4}.
+ */
static final int DEFAULT_MAX_LENGTH = 4;
private final int suffixLength;
-
+
+ /**
+ * Intializes a {@link SuffixFeatureGenerator}.
+ * The suffix length is set to the value of {@link #DEFAULT_MAX_LENGTH}.
+ */
public SuffixFeatureGenerator() {
suffixLength = DEFAULT_MAX_LENGTH;
}
-
+
+ /**
+ * Intializes a {@link SuffixFeatureGenerator} with the specified {@code
suffixLength}.
+ *
+ * @param suffixLength The upper boundary suffix length to use.
+ */
public SuffixFeatureGenerator(int suffixLength) {
this.suffixLength = suffixLength;
}
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGeneratorFactory.java
index ef730943..f888e254 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGeneratorFactory.java
@@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} that produces {@link SuffixFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
* @see SuffixFeatureGenerator
*/
public class SuffixFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGenerator.java
index 07a8d40f..4454522b 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGenerator.java
@@ -23,7 +23,9 @@ import opennlp.tools.util.StringUtil;
/**
- * Generates features for the class of the token.
+ * Generates features for the class of a token.
+ *
+ * @see AdaptiveFeatureGenerator
*/
public class TokenClassFeatureGenerator implements AdaptiveFeatureGenerator {
@@ -32,10 +34,20 @@ public class TokenClassFeatureGenerator implements
AdaptiveFeatureGenerator {
private final boolean generateWordAndClassFeature;
+ /**
+ * Initalizes a {@link TokenClassFeatureGenerator} which won't generate
+ * the {@code w&c} feature per token.
+ */
public TokenClassFeatureGenerator() {
this(false);
}
+ /**
+ * Initalizes a {@link TokenClassFeatureGenerator}.
+ *
+ * @param generateWordAndClassFeature If {@code true} the {@code w&c}
feature will be
+ * generated per token, {@code false}
otherwise.
+ */
public TokenClassFeatureGenerator(boolean generateWordAndClassFeature) {
this.generateWordAndClassFeature = generateWordAndClassFeature;
}
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGeneratorFactory.java
index 54540823..f370e0ef 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGeneratorFactory.java
@@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} that produces {@link TokenClassFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
* @see TokenClassFeatureGenerator
*/
public class TokenClassFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGenerator.java
index 53119e06..a097538f 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGenerator.java
@@ -23,7 +23,9 @@ import java.util.List;
import opennlp.tools.util.StringUtil;
/**
- * Generates a feature which contains the token itself.
+ * Generates a feature which contains a token itself.
+ *
+ * @see AdaptiveFeatureGenerator
*/
public class TokenFeatureGenerator implements AdaptiveFeatureGenerator {
@@ -33,7 +35,7 @@ public class TokenFeatureGenerator implements
AdaptiveFeatureGenerator {
/**
* Initializes a {@link TokenFeatureGenerator}.
*
- * @param lowercase Whether to use lower-casing or not.
+ * @param lowercase Whether or not to use lower-casing.
*/
public TokenFeatureGenerator(boolean lowercase) {
this.lowercase = lowercase;
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGeneratorFactory.java
index 51ca9ad8..1853a1f9 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGeneratorFactory.java
@@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
+/**
+ * A {@link GeneratorFactory} that produces {@link TokenFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
+ * @see TokenFeatureGenerator
+ */
public class TokenFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGenerator.java
index 512230a5..8596244d 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGenerator.java
@@ -28,6 +28,9 @@ import opennlp.tools.util.StringUtil;
/**
* Partitions tokens into sub-tokens based on character classes and generates
* class features for each of the sub-tokens and combinations of those
sub-tokens.
+ *
+ * @see AdaptiveFeatureGenerator
+ * @see Tokenizer
*/
public class TokenPatternFeatureGenerator implements AdaptiveFeatureGenerator {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGeneratorFactory.java
index 05d64441..1954aa5e 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGeneratorFactory.java
@@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} instantiates {@link
TokenPatternFeatureGenerator} instances
+ * when {@link #create()} is called.
+ *
* @see TokenPatternFeatureGenerator
*/
public class TokenPatternFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGenerator.java
index 76258e07..5f5aeb05 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGenerator.java
@@ -22,6 +22,7 @@ import java.util.List;
/**
* Adds trigram features based on tokens and token classes.
*
+ * @see AdaptiveFeatureGenerator
*/
public class TrigramNameFeatureGenerator implements AdaptiveFeatureGenerator {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGeneratorFactory.java
index 80f1abee..85137d28 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGeneratorFactory.java
@@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
+/**
+ * A {@link GeneratorFactory} that produces {@link
TrigramNameFeatureGenerator} instances
+ * when {@link #create()} is called.
+ *
+ * @see TrigramNameFeatureGenerator
+ */
public class TrigramNameFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WindowFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WindowFeatureGeneratorFactory.java
index 8f413b87..fecdb46e 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WindowFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WindowFeatureGeneratorFactory.java
@@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen;
import opennlp.tools.util.InvalidFormatException;
/**
+ * A {@link GeneratorFactory} that produces {@link WindowFeatureGenerator}
instances
+ * when {@link #create()} is called.
+ *
* @see WindowFeatureGenerator
*/
public class WindowFeatureGeneratorFactory
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGenerator.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGenerator.java
index b98cd9bb..6f380307 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGenerator.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGenerator.java
@@ -25,6 +25,7 @@ import opennlp.tools.util.StringUtil;
* An {@link AdaptiveFeatureGenerator} implementation of a word cluster
feature generator.
* It is based on a pre-defined {@link WordClusterDictionary}.
*
+ * @see AdaptiveFeatureGenerator
* @see WordClusterDictionary
*/
public class WordClusterFeatureGenerator implements AdaptiveFeatureGenerator {
diff --git
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGeneratorFactory.java
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGeneratorFactory.java
index 7ea19edd..5922d4e5 100644
---
a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGeneratorFactory.java
+++
b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGeneratorFactory.java
@@ -24,9 +24,11 @@ import opennlp.tools.util.InvalidFormatException;
import opennlp.tools.util.model.ArtifactSerializer;
/**
- * Defines a word cluster generator factory; it reads an element containing
+ * Defines a word cluster {@link GeneratorFactory}; it reads an element
containing
* 'w2vwordcluster' as a tag name. These clusters are typically produced by
* word2vec or clark pos induction systems.
+ *
+ * @see WordClusterFeatureGenerator
*/
public class WordClusterFeatureGeneratorFactory
extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {