A ProtocolClass defines a set of incoming and outgoing messages that can be exchanged between two ports. The exact semantics of a message is defined by the execution model.
ProtocolClasses provide a reusable interface specification for ports
ProtocolClasses can optionally specify valid message exchange sequences