Я очень уверен, что код и структура данных для моего сайта - мои собственные.
Где, когда и как вы конвертируете данные от каждого провайдера в свою собственную логику / структуру данных,вопрос выбора.Вы можете хранить его в специальных таблицах поставщика и иметь интерфейс или службу, которая динамически преобразует его в то, что вам нужно, или вы можете иметь импортер, который выполняет преобразование один раз и сохраняет преобразованную информацию в вашей собственной структуре.
В любом случае, я бы кодировал логику преобразования / импорта для каждого провайдера в своем собственном классе, и каждый из них происходил от общего предка или каждый из них реализовывал общий интерфейс.Таким образом вы гарантируете, что ваша собственная логика и структуры данных защищены от хитросплетений различных поставщиков новостей.
Шаблоны фабрики и / или компоновщика также пригодятся в этом сценарии.Они помогут отделить вашу собственную общую логику импорта / преобразования от выбора класса для создания экземпляра и всего, что необходимо для правильной настройки этого параметра для конкретной ленты новостей.