// TODO: implement referencing regexes
}
public static SemanticGraph makeComplicatedGraph() {
SemanticGraph graph = new SemanticGraph();
String[] words = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J"};
IndexedWord[] nodes = new IndexedWord[words.length];
for (int i = 0; i < words.length; ++i) {
IndexedWord word = new IndexedWord("test", 1, i + 1);
word.setWord(words[i]);
word.setValue(words[i]);
nodes[i] = word;
graph.addVertex(word);
}
graph.setRoot(nodes[0]);
// this graph isn't supposed to make sense
graph.addEdge(nodes[0], nodes[1],
EnglishGrammaticalRelations.MODIFIER, 1.0, false);
graph.addEdge(nodes[0], nodes[2],
EnglishGrammaticalRelations.DIRECT_OBJECT, 1.0, false);
graph.addEdge(nodes[0], nodes[3],
EnglishGrammaticalRelations.INDIRECT_OBJECT, 1.0, false);
graph.addEdge(nodes[1], nodes[4],
EnglishGrammaticalRelations.MARKER, 1.0, false);
graph.addEdge(nodes[2], nodes[4],
EnglishGrammaticalRelations.EXPLETIVE, 1.0, false);
graph.addEdge(nodes[3], nodes[4],
EnglishGrammaticalRelations.ADJECTIVAL_COMPLEMENT, 1.0, false);
graph.addEdge(nodes[4], nodes[5],
EnglishGrammaticalRelations.ADJECTIVAL_MODIFIER, 1.0, false);
graph.addEdge(nodes[4], nodes[6],
EnglishGrammaticalRelations.ADVERBIAL_MODIFIER, 1.0, false);
graph.addEdge(nodes[4], nodes[8],
EnglishGrammaticalRelations.MODIFIER, 1.0, false);
graph.addEdge(nodes[5], nodes[7],
EnglishGrammaticalRelations.POSSESSION_MODIFIER, 1.0, false);
graph.addEdge(nodes[6], nodes[7],
EnglishGrammaticalRelations.POSSESSIVE_MODIFIER, 1.0, false);
graph.addEdge(nodes[7], nodes[8],
EnglishGrammaticalRelations.AGENT, 1.0, false);
graph.addEdge(nodes[8], nodes[9],
EnglishGrammaticalRelations.DETERMINER, 1.0, false);
return graph;
}