Быстрые правила:
- JSON: формат данных между программами
- YAML (расширенный набор JSON): формат данных от человека к программе
- XML: формат разметки документа
Пояснение:
Единственная роль JSON заключается в сериализации объектно-ориентированных данных с использованием типов данных, общих для большинства языков программирования: списки , хешей и скаляры , а также для эта цель действительно не может быть побеждена или улучшена. То есть «у JSON нет номера версии [поскольку] никаких изменений в грамматике JSON не ожидается». - Дуглас Крокфорд (не могу побить это как знак того, что вы отлично справляетесь с работой)
XML когда-то продавался как формат обмена данными, но рассмотрим два наиболее распространенных варианта использования: Асинхронное взаимодействие клиент-сервер (AJAX) - JSON в значительной степени полностью заменил XML (X должен действительно быть J) и веб-служб : JSON сделал XML избыточной альтернативой.
Другой вещью, для которой широко использовался XML, были файлы данных, доступные для записи / чтения (?) Для программ, но и здесь у вас есть более лаконичный, более дружественный к программам, более дружественный для человека формат в YAML, расширенный набор JSON.
Так что для представления данных JSON превосходит XML по всем направлениям. Что тогда осталось для XML? Представление документа со смешанным содержимым, для чего оно было предназначено .