Search in sources :

Example 1 with DefaultParse

use of opennlp.tools.coref.mention.DefaultParse in project lucida by claritylab.

the class OpenNLP method link.

/**
	 * Identifies coreferences in an array of full parses of sentences.
	 * 
	 * @param parses array of full parses of sentences
	 */
public static void link(Parse[] parses) {
    int sentenceNumber = 0;
    List<Mention> document = new ArrayList<Mention>();
    for (Parse parse : parses) {
        DefaultParse dp = new DefaultParse(parse, sentenceNumber);
        Mention[] extents = linker.getMentionFinder().getMentions(dp);
        //construct new parses for mentions which do not have constituents
        for (int i = 0; i < extents.length; i++) if (extents[i].getParse() == null) {
            Parse snp = new Parse(parse.getText(), extents[i].getSpan(), "NML", 1.0);
            parse.insert(snp);
            extents[i].setParse(new DefaultParse(snp, sentenceNumber));
        }
        document.addAll(Arrays.asList(extents));
        sentenceNumber++;
    }
    if (document.size() > 0) {
    //			Mention[] ms = document.toArray(new Mention[document.size()]);
    //			DiscourseEntity[] entities = linker.getEntities(ms);
    //			TODO return results in an appropriate data structure
    }
}
Also used : Parse(opennlp.tools.parser.Parse) DefaultParse(opennlp.tools.coref.mention.DefaultParse) Mention(opennlp.tools.coref.mention.Mention) ArrayList(java.util.ArrayList) DefaultParse(opennlp.tools.coref.mention.DefaultParse)

Aggregations

ArrayList (java.util.ArrayList)1 DefaultParse (opennlp.tools.coref.mention.DefaultParse)1 Mention (opennlp.tools.coref.mention.Mention)1 Parse (opennlp.tools.parser.Parse)1