Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Talk:Communication Between Components

From MoodleDocs

The diagram in https://docs.moodle.org/dev/Communication_Between_Components#General_rules_for_inter-component_communications seems to imply that subplugins can't communicate with each other regardless of whether they declare a dependency, which I don't think is the case. I wonder if it would be worth clarifying this by adding a third subplugin which does declare a dependency?

Yes sub-plugins can communicate but only if they have an explicit dependency (version.php). I went to update the diagram - but it would have made it too cluttered and less clear so I'll just add a note about it underneath.

Thanks, Damyon. That's made it a lot clearer.