Перейти до вмісту

Конвертувати JSON у XML

Перетворіть JSON на валідний XML з відступами: ключі стають елементами, масиви повторюють їх, а ключі з @ стають атрибутами. Конвертація відбувається у вашому браузері.

Конвертувати в
Працює у браузері · без надсилання на серверЯк це працює

Як користуватися: JSON в XML

  1. 1

    Вставте JSON

    Обʼєкт, масив записів або відповідь API; замість цього можна перетягнути файл .json.

  2. 2

    Назвіть елементи

    Залиште кореневий елемент порожнім, щоб його назву взято з даних, і вкажіть назву елемента для пунктів простих масивів.

  3. 3

    Завантажте XML

    З відступами з пробілів або табуляції чи в один рядок, із оголошенням <?xml?> або без нього.

Ліміти та Pro

Файли JSON до 500 MB; вставлений текст будь-якого розміру, який здатен вмістити ваш браузер.

Файли JSON до 4 GB. Дивитися Pro

Про інструмент: JSON в XML

JSON у XML записує дані JSON як документ XML для систем, які досі обмінюються XML: імпорт у бухгалтерські системи та ERP, схеми електронних рахунків, сервіси SOAP, ресурси Android і багато застарілих інтеграцій.

Кожен ключ стає елементом, а кожен масив повторює свій елемент, тож {"book": [{…}, {…}]} перетворюється на два елементи <book> поруч — саме такої форми зазвичай очікують схеми XML. Масив верхнього рівня, якого в XML бути не може, загортається в кореневий елемент з одним елементом на кожен запис, а єдиний ключ верхнього рівня з масивом, наприклад {"orders": […]}, стає коренем з дочірніми елементами <order> в однині. Якщо в обʼєкті рівно один ключ верхнього рівня, він і стає коренем; в іншому разі корінь називається root або так, як ви вкажете.

Ключі, що починаються з @, стають атрибутами, а ключ "#text" стає текстом елемента. Це та сама домовленість, що й у напрямку XML у JSON, тож дані можна передавати в обидва боки. Увімкніть «Записувати прості значення як атрибути» для компактних записів на кшталт <user id="1" name="Ann"/>.

JSON дозволяє назви ключів, неприпустимі в XML, тому назви виправляються: пробіли та інші недопустимі символи стають підкресленнями, а до назви, що починається з цифри, спереду додається підкреслення ("1st place" → _1st_place). Текст екранується (&, < і > у вмісті; лапки в атрибутах), символи, заборонені в XML, видаляються, null стає порожнім елементом, а вкладені масиви отримують дочірні елементи item.

Результат у кодуванні UTF-8. Це коректно сформований XML; перевірки за схемою XSD немає, тож порядок елементів і обовʼязкові поля залежать від ваших даних.

Приватність

JSON, який ви вставляєте або перетягуєте, читається і перетворюється на XML фоновим процесом у цій вкладці браузера; він нікуди не надсилається на сервер і ніде не зберігається.

JSON в XML: поширені запитання

Як зробити атрибути замість дочірніх елементів?
Додайте перед ключем в JSON символ @: запис {"@id": 5, "name": "Ann"} у масиві дасть <item id="5"><name>Ann</name></item>. Щоб усі прості значення (текст, число, true/false) одразу стали атрибутами, увімкніть «Записувати прості значення як атрибути»; обʼєкти й масиви все одно стають дочірніми елементами, адже атрибути можуть містити лише текст.
Як буде названо кореневий елемент?
Якщо JSON — це обʼєкт з одним ключем, наприклад {"catalog": {…}}, цей ключ стає коренем. В іншому разі конвертер загортає все в <root>. Введіть будь-яку назву в полі «Кореневий елемент», щоб змінити обидва випадки; недопустимі символи замінюються, щоб документ лишався коректним.
Як масиви записуються в XML?
Масив під ключем повторює елемент цього ключа: "tag": ["a", "b"] стає <tag>a</tag><tag>b</tag>. Масиви без власного ключа — масив верхнього рівня або масив усередині масиву — отримують елементи item, назву яких можна змінити. Порожній масив стає одним порожнім елементом, щоб ключ не загубився.
Спеціальні символи екрануються?
Так. Амперсанди та кутові дужки в тексті стають &amp;, &lt; і &gt;; лапки, табуляції та розриви рядків усередині значень атрибутів записуються як символьні посилання. Керівні символи, заборонені в XML 1.0, відкидаються. Літери будь-якого алфавіту, зокрема емодзі, записуються як є, бо документ у кодуванні UTF-8.
Чи можна перевірити результат за моєю схемою XSD?
Тут ні: конвертер створює коректно сформований XML, але не знає вашої схеми. Підготуйте JSON так, як очікує схема (назви ключів, порядок ключів, @ для атрибутів), конвертуйте й перевірте файл у редакторі XML або в системі-одержувачі. Порядок ключів у результаті збігається з порядком у вашому JSON.

Інші завдання з цим інструментом