Metamodels for Role-Driven Agent-Based Modelling