'Return the name corresponding to an object.
Not all objects necessarily need to be nameable, and not all that do have
a "name" property.  Override as needed.'

def Name(self):

    if (('name' in self._properties) or (('name' in self._schema) and self._schema['name'][3])):
        return self._properties['name']
    raise NotImplementedError((self.__class__.__name__ + '    must    implement    Name'))
