This paper offers two main contributions. On the one hand, it establishes a general formal framework for developing a foundational ontology of socially constructed entities, in the broadest sense of this notion; on the other hand, it further contributes to understanding the ontological nature of roles. The key choice here is to put all social entities in the domain of discourse: besides social individuals, we also consider ‘reified’ social concepts and roles, as well as their descriptions, i.e, the ‘social conventions’ or ‘contexts’ that define them. This allows us to formally characterize in a first-order theory the relationships among all these entities.