Maintaining a store of all Domain Events for a single Bounded Context has several potential benefits. Consider what you could do if you were to store a discrete Event for every model command behavior that is ever executed. You could
1. Use the Event Store as a queue for publishing all Domain Events through a messaging infrastructure. This is one of the primary uses in this book. It allows integrations between Bounded Contexts, where remote subscribers react to the Events in terms of their own contextual needs. (See the previous section, “Spreading the News to Remote Bounded Contexts.”)
2. You may use the same Event Store to feed REST-based Event notifications to polling clients. (This is logically the same as point 1, but different ...