protected void setJsSentence(INlpSentence s) throws CoreCriticalException {
try {
jsEngine.eval("var sentence = [];");
if ((Boolean) jsEngine.eval(String.format("sentence.positionInSentence == %d", s.getSentenceIndexInCorpus())))
return;
jsEngine.eval(String.format("sentence.positionInSentence = %d", s.getSentenceIndexInCorpus()));
for (int i = 0; i< s.getTokenCount(); i++) {
Token token = s.getToken(i);
jsEngine.eval(String.format("sentence[%d] = %s;", token.getTokenIndexInSentence(), tokenToJson(token)));
}
jsEngine.eval("sentence.spanAnnotations = []");
for (SpanAnnotation annotation : s.getSpanAnnotations()) {
jsEngine.eval(String.format("sentence.spanAnnotations.push(%s);", annotationToJson(annotation)));
for (int i = annotation.getStartTokenIndex(); i <= annotation.getEndTokenIndex(); i++) {
jsEngine.eval(String.format("sentence[%s].parentAnnotations.push(sentence.spanAnnotations[sentence.spanAnnotations.length - 1]);", i));
}
}
} catch (ScriptException e) {
throw new CoreCriticalException(e);
}
}
StateMachine.java 文件源码
java
阅读 27
收藏 0
点赞 0
评论 0
项目:UaicNlpToolkit
作者:
评论列表
文章目录