In this mixture of heterogeneous distributed systems, individual systems seem to cooperate quite well. This is accomplished by the establishment of open (a.k.a. public) protocols, conventions, and standards.
Openness refers to the ability to plug and play. You can, in theory, have two equivalent services that follow the same interface contract, and interchange one with the other.
Standards are wonderful because there are so many to choose from.
Some standards are created by working groups to unify disparate solutions to problems. Other standards are created, de facto, by companies with the overwhelming market share. In either case, one interface is presented for other application programming interactions.