Итак, с точки зрения бизнеса, есть сущность "поставщик", которая состоит из id, имени и адреса.
И в зависимости от использования вам иногда нужны все данные, иногда только некоторые.
Мои мысли:
Если вы зависите свою сущность от ее использования (имея несколько сущностей одной и той же бизнес-сущности для нескольких, немного отличающихся друг от друга применений), то новое использование приведет к созданию дополнительной сущности.
Это много дополнительной работы и дублирующегося кода.
Поэтому в целом я бы выбрал одну реализацию сущности для одной бизнес-сущности.
Но нет правила без исключений.
Если сущность содержит критические данные, и эта сущность часто встречается (пересекает границы системы), но только в нескольких местах нужны критические данные, то можно подумать о том, чтобы иметь реализацию, содержащую только некритические данные, и реализацию со всеми данными.
Таким образом, критические данные будут менее "доступны" и поэтому, надеюсь, немного безопаснее.
Но учтите, что в результате получаются не две сущности, а одна сущность (содержащая все данные) и объект value, который содержит только сокращенный набор данных сущности.
Прикрепляю к посту несколько видео по теме: