Інструмент для даних і тексту

JSON у XML

Конвертуйте JSON в еквівалентний XML із розумною обробкою атрибутів і масивів.

JSON у XML Працює на вашому пристрої
  • Працює у вашому браузері — нічого з введеного не завантажується на сервер
  • Без реєстрації та квот, безкоштовно користуйтеся скільки завгодно

Як це працює

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

Масиви стають повторюваними елементами

У XML немає типу списку. Стандартна конвенція — повторювати елемент по одному разу на кожен пункт, тож масив із трьох книг стає трьома елементами <book> поруч. Саме цього очікує майже кожен споживач XML, і саме це тут створюється.

Атрибути

XML розрізняє атрибути й дочірні елементи; у JSON немає еквівалента. Широко вживана конвенція — додавати до ключа префікс @, щоб позначити, що він має стати атрибутом, і тут її дотримано — її можна вимкнути, якщо ваші ключі справді починаються з @.

Імена приводяться до допустимих

Імена елементів XML не можуть містити пробілів чи більшості розділових знаків і не можуть починатися з цифри. У ключах, що порушують ці правила, недопустимі символи замінюються підкресленнями, а за потреби на початку додається підкреслення. Без цього результат не розбирався б.

Null

Null стає порожнім елементом із позначкою xsi:nil, що є звичайним способом сказати «навмисно порожньо», а не «відсутньо». Якщо ваш споживач не розуміє xsi:nil, порожній елемент зазвичай читається так само.

Круговий шлях не є точним

JSON розрізняє число 42 і рядок «42», а XML — ні: усе в XML є текстом, якщо схема не каже інакше. Зворотна конвертація не гарантує відновлення початкових типів.

Запитання й відповіді

JSON у XML — запитання

Як обробляються масиви?

Як повторювані елементи — це стандартна конвенція XML, оскільки в XML немає типу списку.

Чи можна створювати атрибути?

Так. Додайте до ключа префікс @, і він стане атрибутом; це можна вимкнути.

Що відбувається з ключами, що містять пробіли?

Недопустимі символи стають підкресленнями, бо імена в XML не можуть їх містити. Без цього результат не розбирався б.

Чи можна конвертувати назад у JSON?

Так, інструментом «XML у JSON», але типи не зберігаються — XML не розрізняє число та рядок.

Чи завантажуються мої дані на сервер?

Ні. Конвертація відбувається у вашому браузері.