@Override public DependencyRelation createRelation(JCas jCas, DependencyNode head, DependencyNode child, String relation) { DependencyRelation rel = new DependencyRelation(jCas); rel.setChild(child); rel.setHead(head); rel.setRelation(relation); return rel; }
@Override public DependencyNode getHead(JCas jCas, DependencyRelation relation) { return relation.getHead(); }
@Override public String getLabel(JCas jCas, DependencyRelation relation) { return relation.getRelation(); }
DependencyNode node = nodes.get(i); DependencyNode head = nodes.get(headIndex); DependencyRelation rel = new DependencyRelation(jCas); rel.setHead(head); rel.setChild(node); rel.setRelation(label); rel.addToIndexes(); if (!headRelations.containsKey(node)) { headRelations.put(node, new ArrayList<DependencyRelation>());
ArrayListMultimap<DependencyNode, DependencyRelation> childRelations = ArrayListMultimap.create(); for (SemanticGraphEdge stanfordEdge : dependencies.edgeIterable()) { DependencyRelation relation = new DependencyRelation(jCas); DependencyNode head = stanfordToUima.get(stanfordEdge.getGovernor()); DependencyNode child = stanfordToUima.get(stanfordEdge.getDependent()); head)); relation.setHead(head); relation.setChild(child); relation.setRelation(relationType); relation.addToIndexes(); headRelations.put(child, relation); childRelations.put(head, relation);