in modeling/coval/conll/mention.py [0:0]
def get_top_level_phrases(self, root, valid_tags):
terminal_shortest_depth = float('inf')
top_level_valid_phrases = []
min_spans = set()
if root and root.isTerminal and self.is_a_valid_terminal_node(root.tag, root.pos):
self.min_spans.add((root.tag, root.index))
elif root and root.children:
for node in root.children:
if node:
if node.isTerminal and self.is_a_valid_terminal_node(node.tag, node.pos):
self.min_spans.add((node.tag, node.index))
if not self.min_spans:
for node in root.children:
if node.children and node.tag[0:2] in valid_tags:
top_level_valid_phrases.append(node)
return top_level_valid_phrases