예제 #1
0
def create_graph():
    parser = FileReader.SemEvalParser()
    sent_ids = parser.get_sentences_ids_by(doc_id)
    root = GraphManager.Node(doc_id)
    graph = GraphManager.Graph(root=root)

    # sent_ids = sent_ids[:2]

    for sent_id in sent_ids:
        sent_node = GraphManager.Node(sent_id)
        graph.add_node(sent_node, root)

        words = parser.get_instances_by(sentence=sent_id)
        for node_id, word in words:
            word_node = GraphManager.WordNode(identifier=node_id, word=word)
            graph.add_word_node(word_node, sent_node)

            senses = utils.get_sences(word)
            for sense in senses:
                extended_def = utils.get_extended_def(sense)
                odour = convert_extended_def_to_odour(extended_def)
                nest = GraphManager.NestNode(identifier=sense,
                                             lemma=sense.lemmas()[0].key(),
                                             odour=odour)
                graph.add_nest(nest, word_node)
    global vocabulary
    global index
    del vocabulary
    del index
    return graph
예제 #2
0
print(d[('a', 'b')])

a = GraphManager.Node()
b = GraphManager.Node()
l = [a, b]

for node in l:
    if isinstance(node, GraphManager.NestNode):
        print(node.lemma)

print(set([a, b]) == set([b, a]))

print(str(None))

parser = FileReader.SemEvalParser()

sent_ids = parser.get_sentences_ids_by('d001')
sent = parser.get_instances_by(sentence=sent_ids[0])
print(sent_ids)
print(sent)

# a, b, c, d, e = Node("a"), WordNode("b", word='mouse'), WordNode("c"), Node("d"), Node("e")
#
# edges = {a: [b, c, d],
#          b: [a],
#          c: [a],
#          d: [a]
#          }
#
# graph = Graph(graph_dict=edges)