Cara memakai
- Tempel XML ke XML. Teks diperiksa lebih dulu, dan masalah ditampilkan dengan baris dan kolomnya.
- Biarkan Baca angka, true, dan false sebagai nilai tercentang untuk mendapatkan 12.5 sebagai angka, atau hilangkan centangnya untuk menyimpan semua teks sebagai teks.
- Pilih Indentasi, atau Tanpa pindah baris (diperkecil) untuk JSON yang paling pendek.
- Salin JSON, atau unduh sebagai converted.json.
Pemetaan, aturan demi aturan
Elemen akar menjadi satu-satunya anggota objek JSON, sehingga akar bernama catalog memberi anggota catalog. Atribut menjadi anggota yang namanya diawali @, seperti @id. Teks sebuah elemen menjadi nilainya bila elemen itu tidak punya hal lain; bila juga punya elemen anak, teks itu menjadi anggota #text, dipangkas dari spasi putih di sekitarnya.
Elemen anak menjadi anggota dengan namanya. Bila nama yang sama muncul lebih dari sekali, anggotanya menjadi larik sesuai urutan dokumen. Elemen tanpa atribut dan tanpa anak bernilai null bila ditulis sebagai elemen penutup sendiri (garis miring di ujung tagnya), dan string kosong bila ditulis dengan tag pembuka dan tag penutup.
- Bagian CDATA dihitung sebagai teks, persis seperti yang ditulis, sehingga karakter < di dalamnya tetap <.
- Komentar dan instruksi pemrosesan dibuang, karena JSON tidak punya tempat untuknya.
- Referensi seperti & dan A dibaca, sehingga teks memuat karakter yang diwakilinya.
Nilai bertipe dan perubahannya
XML tidak punya angka atau boolean sendiri: 12.5 dalam XML hanyalah teks. Dengan opsi pengetikan aktif, teks yang akan dikembalikan persis sama oleh angka JSON, true, atau false dibaca sebagai nilai itu. Teks seperti 12.50 atau 007 tetap teks, karena angka akan menuliskannya secara berbeda.
Daftar dengan satu butir kembali sebagai butir itu sendiri, bukan sebagai larik, karena XML tidak bisa membedakan keduanya. Ingat hal ini bila JSON akan dibaca program yang mengharapkan larik.
Contoh: katalog bawaan
XML bawaan adalah katalog dengan dua buku. Buku pertama punya atribut id, dan elemen title, price, serta inStock-nya menjadi kunci. Buku kedua tidak punya elemen inStock, dan elemen price-nya yang kosong menjadi null.
JSON-nya punya satu anggota, catalog, dan kunci book-nya adalah larik dari dua objek. Hitungannya menunjukkan 8 elemen: katalog, dua buku, dan anak-anaknya.
Pertanyaan yang sering diajukan
Mengapa angka saya keluar sebagai teks?
Teks yang tidak akan ditulis kembali persis oleh angka JSON tetap teks: 12.50 mempertahankan nolnya, dan 007 mempertahankan angka nol di depannya. Matikan opsi pengetikan untuk menyimpan setiap nilai sebagai teks.
Mengapa satu elemen menjadi objek dan bukan larik?
Larik hanya dibuat bila nama yang sama muncul dua kali atau lebih di antara anak-anak satu elemen. Satu elemen keluar sebagai nilainya, yang memang hasil yang biasa untuk XML.
Apa yang terjadi pada komentar dan instruksi pemrosesan?
Keduanya dibuang. JSON tidak punya tempat untuk komentar, jadi konverter hanya membaca datanya. Simpan XML bila komentarnya penting bagi Anda.
Mengapa konverter melaporkan baris dan kolom?
XML harus well-formed sebelum bisa dibaca. Baris dan kolom menunjukkan tempat pertama dokumen melanggar aturan XML, seperti tag penutup yang tidak cocok.
Apakah XML saya dikirim ke server?
Tidak. Konversi berjalan di peramban Anda. Tidak ada yang Anda tempel yang dikirim ke server kami atau disimpan di sana.
Sumber
- W3C (dalam bahasa Inggris): Extensible Markup Language (XML) 1.0, Fifth Edition
- RFC 8259 (dalam bahasa Inggris): The JavaScript Object Notation (JSON) Data Interchange Format
Angka dan teks terakhir diperiksa pada Selasa, 10 November 2026.