В определении класса SemanticGraph, который используется для анализа зависимостей.
Вот определение переменной "корни" как совокупности вершин:
private final Collection<IndexedWord> roots;
У меня вопрос: почему коллекция? В каких случаях нам понадобится более одной вершины в качестве корня?
https://github.com/stanfordnlp/CoreNLP/blob/master/src/edu/stanford/nlp/semgraph/SemanticGraph.java