def get_full_path(self, address=None): if address is None: address = Address(self.name) else: address = address.append_right(self.name) if self.is_root_node: #print 'full path: ', address return address.as_root() return self.parent.get_full_path(address)