  The first generation of blockchain focused on digital currencies and secure
storage, management and transfer of tokenized values. Thereafter, the focus has
been shifting from currencies to a broader application space. In this paper, we
systematically explore marketplace types and properties, and consider the
mechanisms required to support those properties through blockchain. We propose
a generic and configurable framework for blockchain-based marketplaces, and
describe how popular marketplace types, price discovery policies, and other
configuration parameters are implemented within the framework by presenting
concrete event-based algorithms. Finally, we consider three use cases with
widely diverging properties and show how the proposed framework supports them.
