code: def unlink_reference(self, source, target):
          
          target_uid = api.get_uid(target)
          # get the storage key
          key = self.get_relationship_key(target)
          # get all backreferences from the source
          # N.B. only like this we get the persistent mapping!
          backrefs = get_backreferences(source, relationship=None)
          if key not in backrefs:
              logger.warn(
                  "Referenced object {} has no backreferences for the key {}"
                  .format(repr(source), key))
              return False
          if target_uid not in backrefs[key]:
              logger.warn("Target {} was not linked by {}"
                          .format(repr(target), repr(source)))
              return False
          backrefs[key].remove(target_uid)
          return True
docs: Unlink the target from the source