support inheritance api models defined by interfaces