То, что предлагали вы, применимо, если этим занимается один человек в одном месте. Тогда да, можно писать любое количество парсеров любых форматов.
Всё становится смешнее, когда этим занимаются разные люди. В разных местах. Ещё и на разных языках.
Но ты-то вообще ничего не предлагал!
Ты предлагал сделать трансформацию, НО НЕ ПРЕДЛОЖИЛ способа, как получить хпаф для неё!
Таких умных тут много бегает - как с черным ящиком решить любую задачу. Только ты пойми, какова цена таким умникам, и хочешь ли ты быть в их числе.
Я тебе привел пример XML, который тебе надо преобразовать. Ты слился.
Вот пока не покажешь код, как можно трансформировать один в другой без ручного разбора, не зная о них предварительно вообще ничего - не надо сотрясать воздух.
Если ты не обратил внимания раньше, скажу сейчас: я на троллинг не ведусь уже лет восемь.
Ставить заведомо невыполнимые задачи и требовать написать под них код - это троллинг в чистом виде.
оказалось невыполнимой задачей!
А с ней - как следствие - и все гениальные преобразования.
То есть тему "пишем только один парсер" можно закрыть, по причине того, что до AnrDaemon наконец дошло, что 100500 форматов придется таки обрабатывать вручную. Только, разумеется, не написанием каждого нового парсера, а добавлением еще одной карты соответствий в единственный существующий парсер.
Знаешь, есть два решения твоей проблемы с XML.
1. Писать импорт из всего, что тебе дают.
2. Сказать давальщикам, в каком формате ты принимаешь документы.
В данном случае нужно склоняться ко второму варианту, потому как первый - непосильная ноша. У меня два поставщики дают прайс в yml - и в обоих есть отличия в формировании названия товара (может быть отдельное поле модель) и отметки наличия (available="true"). Вся проблема в том, что никто не хочет соблюдать какие-то общепринятые стандарты, все стараются изобрести какой-то велосипед. Хотя хуже чем CommerceML от 1СЫ трудно даже представить, такое впечатление, что его люди вообще без мозгов придумывали - особенно за названия секций в кириллице.
В данном случае нужно склоняться ко второму варианту, потому как первый - непосильная ноша. У меня два поставщики дают прайс в yml - и в обоих есть отличия в формировании названия товара (может быть отдельное поле модель) и отметки наличия (available="true"). Вся проблема в том, что никто не хочет соблюдать какие-то общепринятые стандарты, все стараются изобрести какой-то велосипед. Хотя хуже чем CommerceML от 1СЫ трудно даже представить, такое впечатление, что его люди вообще без мозгов придумывали - особенно за названия секций в кириллице.