object relations implementation