But it's not clear (without reading the code) that the returned value depends on the selected types, not on the available ones. Having no types selected also results in an empty string which is hardly any representation of the object.