У меня сложилось впечатление (из личного опыта и общения с другими), что популярность JSON в основном обусловлена его простотой. XML может делать практически все, но такая гибкость достигается ценой некоторой сложности. Для большинства разработчиков (особенно новичков) запуск и запуск веб-сервисов, а также выполнение чего-то действительно с XML занимает больше времени, чем с JSON.
Мое эмпирическое правило заключается в том, что для действительно сложных графов объектов, вещей уровня предприятия (проверка, аудит, сложное пространство имен и т. Д.) Вам, вероятно, понадобится XML. Если вы выбрасываете множество веб-сервисов, которые передают простые данные, JSON - гораздо более быстрый и простой вариант разработки. Это последнее особенно верно, если JavaScript будет активным потребителем этих веб-сервисов.
Если вы не уверены, что то, что вы делаете, достаточно сложно, чтобы гарантировать XML, я бы рекомендовал использовать JSON до тех пор, пока вы не начнете нарушать его ограничения, а затем перейти к XML. Очевидно, что здесь есть риск (любое решение, подобное этому, представляет некоторый риск), но если вам в конечном итоге не нужен XML, то вы сэкономите много времени и потенциальные головные боли для разработчиков.
Это также зависит от вашей команды разработчиков - если у вас есть парни, которые годами создавали веб-сервисы XML и могут писать SAX-парсеры во сне, XML может быть правильным ответом, независимо от того, что вы пишете ,