'If namespace.name is a defined value, deletes it.
:param namespace: The namespace that the property should be stored in.
:type namespace: string
:param name: The name the value was saved with.
:type name: string'

@with_backing_file
def discard(self, namespace, name):

    if self.has(namespace, name):
        del self._state[namespace][name]
        if (len(self._state[namespace]) == 0):
            del self._state[namespace]
        logging.debug('Persistent    state    %s.%s    deleted', namespace, name)
    else:
        logging.debug('Persistent    state    %s.%s    not    defined    so    nothing    is    discarded', namespace, name)
