FishHook
этого не понял, теговая структура именно способствует потоковой обработке
Теговая структура да, но она есть не только в xml. Я знаю два способа парсинга xml. 1 загрузить все в память (dom/etree) очевидно пока не загрузишь все пользоваться xml нельзя, если данных много они сожрут память.
2 sax. По сути это и есть потоковая обработка. Но также как и xml она слишком общая, и поэтому очень неудобная. Если в определенный момент времени у вас произошел дисконнект, потребовалось перезапустить сервер и т.п. вы не можете начать читать данные с последней контрольной точки, вы обязаны начать читать xml дерево с самого начала (корректный xml документ должен иметь корневой элемент).
FishHook
и что? терабайты никто не передает
Я имел ввиду код программы который человек пишет для того чтобы использовать данные. Дело не в экономии на тегах а в экономии времени разработчика. Для xml необходим нетривиальный код разбора данных (то что я видел у коллег которые пользуются xml это сотни иногда тысячи строк кода). А для json/yaml/pickle/hdf5 и т. п. в большинстве случаев достаточно просто считать данные двумя тремя строчками. Т.е. не то что прозрачный а вообще никакой специальный код сериазизации/десериализации не нужен.
По поводу конфигов вы своих коллег опросите. Когда спрашbвал, вам конфиг в xml или в yaml сделать не было случая чтобы человек xml выбрал. Нахрена надо ручками каждую козявку в теги заворачивать? Народ данные зачастую из программы в конфиг копипастит. с нормальными форматами нет проблем, а с xml будь добр заворачивай… Еще забава. Народ в конфиги формулы забивает. Наши коллеги закончили тем что парсер расширили чтобы без проблем знаки больше и меньше можно было забивать. Т.е вроде и xml но невалидный, ничем кроме их парсера не читается.
С последним согласен. Но это ен упрщает к сожалению борьбу с такими лицами.