Recurse up the tree getting parent data
        :param tree: The tree
        :param node: The current node
        :param current: The current list
        :return: The hierarchical dictionary

def get_parent_data(tree, node, current):
        """
        Recurse up the tree getting parent data
        :param tree: The tree
        :param node: The current node
        :param current: The current list
        :return: The hierarchical dictionary
        """
        if not current:
            current = []

        parent = tree.parent(node.identifier)
        if parent.is_root():
            return current

        current.insert(0, (parent.tag, parent.data))
        return PlateManager.get_parent_data(tree, parent, current)