An object that inherits multiple interfaces was my first idea. That would allow to test for the presence of certain runtime infos using dynamic cast. But this needs more thought.