Вопрос:
Требуется ли JSON для корневого элемента, как в случае xml. Насколько я знаю, это допустимая строка json.
{ «email»:[ { «type»:»home», «name»:»john.doe@gmail.com» }, { «type»:»work», «name»:»jdoe@gmail.com» } ] }
Мне нужно преобразовать json в xml наоборот. Однако, несмотря на то, что выше приведенный json, когда я конвертирую его в xml, он недопустим? Я что-то пропустил или это нормально?
Лучший ответ:
Самый внешний уровень документа JSON – это либо “объект” (фигурные скобки), либо “массив” (квадратные скобки).
Любое программное обеспечение, которое преобразует JSON в XML, должно примирить тот факт, что они представляют собой разные модели данных с разными правилами. Различные инструменты преобразования обрабатывают эти различия по-разному.
Ответ №1
В соответствии с измененной формой Бэкуса-Наура на правой боковой панели http://json.org/ корневым элементом структуры данных JSON может быть любой из этих семи типов/значений:
Object Array String Number true false null
Примеры
Таким образом, все следующие примеры являются допустимыми корневыми элементами JSON:
{ «name»: «Jpsy», «age»: 99 } [ 1, 2, «three», 4, 5 ] «abcdefg» 123.45 true false null Ответ №2
Это нормально, json и xml не имеют одинаковых правил. Вы можете перенести корневые скобки “{” и “}” в корневой элемент, чтобы не иметь проблем с преобразованием.