For decades, the notion of roles has been discussed and applied in various fields of computer science in a number of different ways, but apparently no consensus at an integrative definition has been reached yet. Therefore, roles qualify for a comprehensive analysis with the aim of covering and generalizing recurrent understandings and uses of roles. Regarding ontology development, this would further allow to relate or integrate this notion into top-level ontologies. For these purposes, this paper extends and refines an earlier analysis of roles which is primarily based on the notions of role, player, and context and their interrelations (Loebe 2003). In particular, the classification of roles therein is refined in the light of recent papers and discussions on recurrent role issues. We argue that roles can be understood in two distinct ways which are mixed in the literature. Firstly, abstract roles provide a means of viewing something in a context, whereas social roles are complex social objects for which a relation to players (frequently referring to material objects) is of primary interest.