def full_name(self):
        """ returns name all the way up the tree """
        if self._tree.parent is None:
            return self._intern.name
        return self._tree.parent.full_name() + '.' + self._intern.name
returns name all the way up the tree