Distributed event-based middleware (DEBM) provides a basis for the interoperation of autonomous components in large-scale systems. Transactions ensure the atomic and reliable execution of operations that involve interconnected clients. Integrating transactions and DEBM is a challenging software design problem with important applications. This paper presents the Hermes Transaction Service (HTS), a service that supports event-driven applications with transactional requirements. HTS uses transaction-context propagation via event notifications, where the contexts of publishers and subscribers are interrelated within a mixed transaction. Clients may opt to be compensatable or noncompensatable. Optional anonymity of transaction participants is supported through hash-based set memberships.