There is lots of unnecessary duplication in our use case validation code. Thoughts and ideas for abstractions in https://gist.github.com/jakobw/5ea7c5945f7202c2bfaf67ba553d8773
ACs:
- reduce duplication in use case validation code
- prevent superfluous calls to subject agnostic use case validation
- avoid Statemen ID format leaking implementation details in use cases when comparing them with subject IDs, e.g. https://gerrit.wikimedia.org/g/mediawiki/extensions/Wikibase/+/refs/changes/50/952850/4/repo/rest-api/src/Application/UseCases/PatchPropertyStatement/PatchPropertyStatement.php#48