Enju - A fast, accurate, and deep parser for English

Examples

Unlike conventional parsers, the Enju parser can output predicate argument structures in addition to parse trees.

By running Enju without any command-line arguments, the parser outputs only predicate-argument relations. They look similar to labeled dependency structures, and are easy to use. Actual examples of predicate argument structures are shown below. Each line in the output represents a predicate-argument relation between two words. For instance, the second line in the first example indicates that there is an "ARG1 (logical subject)" relation between the predicate "run" and the argument "he". Note that the same semantic relations holding among the three words, "he", "run", and "company", are obtained from sentences written in different syntactic structures.

Sentence 1: He runs the company.

ROOT ROOT ROOT ROOT -1 ROOT ROOT runs run VBZ VB 1
runs run VBZ VB 1 verb_arg12 ARG1 He he PRP PRP 0
runs run VBZ VB 1 verb_arg12 ARG2 company company NN NN 3
the the DT DT 2 det_arg1 ARG1 company company NN NN 3

Sentence 2: The company that he runs is small.

ROOT ROOT ROOT ROOT -1 ROOT ROOT is be VBZ VB 5
is be VBZ VB 5 verb_arg12 ARG1 company company NN NN 1
is be VBZ VB 5 verb_arg12 ARG2 small small JJ JJ 6
small small JJ JJ 6 adj_arg1 ARG1 company company NN NN 1
The the DT DT 0 det_arg1 ARG1 company company NN NN 1
that that IN IN 2 relative_arg1 ARG1 company company NN NN 1
runs run VBZ VB 4 verb_arg12 ARG1 he he PRP PRP 3
runs run VBZ VB 4 verb_arg12 ARG2 company company NN NN 1