Eugenia uses annotations to add information to the Ecore domain model so that the GMF GraphModel and MapModel can be generated automatically. This might be worth looking into, though I feel I should really just get to grips with creating these models myself.