only require edit permissions if a change is required during datasource presave

Unless I'm missing something, I don't think there's anything that should require edit permissions on the child in a datasource unless there's a reciprocal or publish-with-parent setting.
Use the post type object's property for this instead of "edit_post":

```php
$post_type_obj = get_post_type_object( get_post_type( $value ) );
if ( empty( $post_type_obj->cap->edit_post ) || ! current_user_can( $post_type_obj->cap->edit_post, $value ) ) {
    ...
```