INNER CODE UNIT · Python
get_linearized_parse
IBM/transition-amr-parser · src/ibm_neural_aligner/main.py:375
def get_linearized_parse(amr):
node_ids = get_node_ids(amr)
d_node_idx = {k: i for i, k in enumerate(node_ids)}
# Get edges as tree.
tree_edges = get_tree_edges(amr)
# Build adjacency graph and cache edge labels.
outoging_adjacency_graph = collections.defaultdict(list)
d_edge_labels = {}
def sortkey(edge):
s, y, t, a, b = edge
return (a, b)
for e in sorted(tree_edges, key=sortkey):
s, y, t, a, b = e
outoging_adjacency_graph[s].append(t)