handling properties/collections of object type