model hierarchy work