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 не розрізняє число та рядок.
Чи завантажуються мої дані на сервер?
Ні. Конвертація відбувається у вашому браузері.