Position Statement: Towards a Definition of Roles for Software Engineering and Programming Languages Frank Loebe Research Group Ontologies in Medicine (Onto-Med) Institute of Medical Informatics, Statistics and Epidemiology (IMISE) University of Leipzig, Germany frank.loebe@imise.uni-leipzig.de, http://www.onto-med.de 1 An Analytic, Ontology-oriented View on Roles Analyzing the notion of role in the literature yields a plurality of views and definitions. In [1–3], we study a broad range of approaches in order to interrelate and harmonize them (where possible) in the context of an ontological framework, whose central component is the top-level ontology General Formal Ontology (GFO) 1 [4]. A major goal of our work is the provision of a role definition which maxi- mizes the coverage of applications of the term “role”. To the extent possible this should be independent from specific application areas, spanning from conceptual modeling to software engineering to linguistics, etc. This leads to a very general, yet weak, analytical definition for the notion of role: Definition 1 A role is an entity which is dependent on two other entities, re- ferred to as the player of the role and the context of the role. A major aspect of our approach is to distinguish role individuals and role classes. 2 Given this distinction, role individuals satisfy Definition 1 literally. For instance, a student role individual requires an individual human being as a mate- rial player, and the role arises in an individual social context, e.g. as established by a particular university. Player and role individuals are distinct entities in our approach, and players are characterizable independently of the role and its context, by means of other kinds of classes, often called natural types or object types. On the class level, the notion of player classes is thus merely of indirect relevance, because role individuals require player individuals. However, context classes are strongly intertwined with role classes, where we advocate that the two exhibit definitional interdependences. 1 http://www.onto-med.de/ontologies/gfo/ 2 We use role classes here to align with object-oriented terminology. In [1], role classes are called role categories.