TL;DR: I have a strong preference for using Create, Update, and Delete as much as possible.
Just using these makes interoperability with my project bovine “easy”. By this, I mean that objects should behave under these operations as one expects. In order to demonstrate this (aka brag), I put together a test case for it. It demonstrates that
- Create a Valueflows Object
- Delete a Valueflows Object
works as one would expect. Side note: I needed to add ids to the objects for everything to work nicely.
As far as other interactions with objects are concerned, e.g. Like, I believe that one can probably abstract these with an interactions collection that includes all Activities whose object has a certain id. This would allow one to add custom Interactions, e.g. EmojiReaction.
If one builds this correctly, it would also include Activities from something like Valueflows.