revise @Predicate
asymmetrical associations support