获得动词的Gerund

时间:2016-11-02 01:34:25

标签: java nlp nlg

我是Simple NLG的新手,我想得到我输入的动词的动名词。 这是一个示例代码,但我尝试输入gerund for tense但它不起作用

XMLLexicon lexicon = new XMLLexicon("path\\to\\default-lexicon.xml");
WordElement word = lexicon.getWord("live", LexicalCategory.VERB);
InflectedWordElement infl = new InflectedWordElement(word);
infl.setFeature(Feature.TENSE, Tense.PAST); //I want the verb to be in gerund not past
Realiser realiser = new Realiser(lexicon);
String gerund = realiser.realise(infl).getRealisation();
System.out.println(gerund);

1 个答案:

答案 0 :(得分:3)

我不知道API,但是从我可以拼凑的内容来看,它看起来像是一种类似于

的方法
XMLLexicon lexicon = ...
NLGFactory phraseFactory = new NLGFactory(lexicon);
VPPhraseSpec live = phraseFactory.createVerbPhrase("live");
SPhraseSpec clause = phraseFactory.createClause();
clause.setVerbPhrase(live);
clause.setFeature(Feature.FORM, Form.GERUND);
Realizer realizer = new Realizer(lexicon);
String gerund = realizer.realize(clause).getRealisation();

可能对你更好。

如果找不到更好的资源,请查看the unit tests有关如何使用API​​的提示。