you wouldn't use caveats for this; restrictions such as counts should be managed by the client application at write time: read the number of relationships and ensure you don't write more than three, placing them in the preconditions to ensure transactional updates