added relational mapping