summaryrefslogtreecommitdiff
path: root/src/runtime/java
diff options
context:
space:
mode:
authorkr.angelov <kr.angelov@gmail.com>2014-07-01 17:32:25 +0000
committerkr.angelov <kr.angelov@gmail.com>2014-07-01 17:32:25 +0000
commit064cf030054c441b6d42331cff508a4cf7b4c035 (patch)
tree6e27de306ee045f6094cb206fdbbe05ae6aa2771 /src/runtime/java
parent7aa8bf415025f5ffffbcdc8d95312eb905bff746 (diff)
a few changes in the Nerc that I have forgoten to push
Diffstat (limited to 'src/runtime/java')
-rw-r--r--src/runtime/java/org/grammaticalframework/pgf/NercLiteralCallback.java22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/runtime/java/org/grammaticalframework/pgf/NercLiteralCallback.java b/src/runtime/java/org/grammaticalframework/pgf/NercLiteralCallback.java
index 8d206667d..ae8f665b0 100644
--- a/src/runtime/java/org/grammaticalframework/pgf/NercLiteralCallback.java
+++ b/src/runtime/java/org/grammaticalframework/pgf/NercLiteralCallback.java
@@ -38,23 +38,27 @@ public class NercLiteralCallback implements LiteralCallback {
if (i > 0) {
String name = sbuilder.toString();
- String lemma = null;
+ Expr expr = null;
double prob = 0;
for (MorphoAnalysis an : concr.lookupMorpho(name)) {
- if ("PN".equals(pgf.getFunctionType(an.getLemma()).getCategory()) &&
- prob < an.getProb()) {
- lemma = an.getLemma();
- prob = an.getProb();
+ String cat = pgf.getFunctionType(an.getLemma()).getCategory();
+ if (prob < an.getProb()) {
+ if ("PN".equals(cat)) {
+ expr = new Expr(an.getLemma(), new Expr[0]);
+ prob = an.getProb();
+ } else if ("Language".equals(cat)) {
+ expr = new Expr(an.getLemma(), new Expr[0]);
+ expr = new Expr("languagePN", expr);
+ } else if ("Pron".equals(cat)) { // to capture I in English
+ return null;
+ }
}
}
- Expr expr;
- if (lemma == null) {
+ if (expr == null) {
expr = new Expr(name);
expr = new Expr("MkSymb", expr);
expr = new Expr("SymbPN", expr);
- } else {
- expr = new Expr(lemma, new Expr[0]);
}
return new CallbackResult(new ExprProb(expr, 0), end_offset);