Objects execute in parallel unless engaged in communication.
Communication partners are defined by object instance identifiers, or by type. This protocol is a specification of the occurrence and sequencing of the communication between the object and its partners. Thus protocols support structured, safer and potentially verifiable information exchange between objects. Protocols also act as a composition rule over client objects, thereby offering a 'part-of' hierarchy of these cooperating objects. The Digital Library is published by the Association for Computing Machinery.