HEH when both type and edgeType are not null we must not use object identity since we use strings