Describing an Entity Reference relationship
If you want to stick with Entity Reference, you'll need to have a field for each type of relationship. ER relationships don't have the capacity for meta data.

If you can change, check out the Relation module.


  Relation is an API module and storage model for both simple and the most complex relations between entities. The module can handle both directional and symmetrical relations very well.
  
  Relations are entities and can therefore have fields. This makes Relation the most flexible and powerful relation model out there. (Still, using Relation with anything but the default SQL storage will not work in most cases.)


(emphasis mine). You could, for example, attach a field to the relation entity type, that linked to a vocabulary containing the event role.