public function delete($restriction)
{
$parentVpId = $restriction[$this->parentReferenceName];
$parent = $this->parentStorage->loadEntity($parentVpId, null);
$fieldToDelete = $this->getJoinedKeyByVpId($parent, $restriction['vp_id']);
$oldEntity = $this->extractEntityFromParentByVpId($parent, $restriction['vp_id']);
$oldParentEntity = $parent;
$parent[$fieldToDelete] = false;
// mark for deletion
$newParentEntity = $parent;
$this->parentStorage->save($parent);
return $this->createChangeInfoWithParentEntity($oldEntity, $oldEntity, $oldParentEntity, $newParentEntity, 'delete');
}