tops = mrp_dict['tops'] if len(tops) > 0: top = tops[0] else: top = None node_ids = get_id2lex(mrp_dict) edges = get_mrp_edges(mrp_dict) node_ids, edges = update_id_labels(edges, node_ids) lowered = lower_edge(edges) decompressed = decompress_c(lowered, node_ids) revised_top, with_h = add_h(decompressed, node_ids, top) mrp_post_processed['tops'] = [revised_top] mrp_post_processed['id'] = id mrp_post_processed['framework'] = framework mrp_post_processed['flavor'] = flavor mrp_post_processed['time'] = time mrp_post_processed['version'] = version mrp_post_processed['input'] = input node_ids, with_h = update_id_labels(with_h, node_ids) mrp_nodes = get_terminal_nodes(mrp_dict) for node in node_ids.keys(): if node_ids[node] == 'Non-Terminal': mrp_nodes.append({'id': node}) mrp_post_processed['nodes'] = mrp_nodes mrp_post_processed['edges'] = get_edges(with_h) #print(mrp_post_processed['edges']) outfile.write(json.dumps(mrp_post_processed)) outfile.write('\n')
for line in infile: mrp_post_processed = {} mrp_dict = json.loads(line) input = mrp_dict['input'] id = mrp_dict['id'] #print(id) framework = mrp_dict['framework'] flavor = mrp_dict['flavor'] time = mrp_dict['time'] version = mrp_dict['version'] node_ids = get_id2lex(mrp_dict) edges = get_mrp_edges(mrp_dict) decompressed = decompress_c(edges, node_ids) decompressed = add_h(decompressed) mrp_post_processed['id'] = id mrp_post_processed['framework'] = framework mrp_post_processed['flavor'] = flavor mrp_post_processed['time'] = time mrp_post_processed['version'] = version mrp_post_processed['tops'] = get_tops(decompressed) label_dict, node_ids = update_id_labels(decompressed, node_ids) mrp_nodes = get_terminal_nodes(mrp_dict) for node in node_ids.keys(): if node_ids[node] == 'Non-Terminal': mrp_nodes.append({'id': node}) mrp_post_processed['nodes'] = mrp_nodes mrp_post_processed['edges'] = get_edges(decompressed) mrp_post_processed['input'] = input outfile.write(json.dumps(mrp_post_processed)) outfile.write('\n')