Jawaban Singkat
Tempel JSON Anda ke kotak (atau buka file .json) dan XML langsung muncul. Objek menjadi elemen bersarang, setiap item array mengulang elemen yang dinamai sesuai kuncinya, kunci yang diawali @ menjadi atribut, dan #text menjadi teks elemen. Nama yang tidak valid di XML diperbaiki otomatis dan karakter khusus di-escape, sehingga Anda bisa langsung menyalin atau mengunduh file .xml yang well-formed.
Mengapa Mengubah JSON ke XML?
API web modern memakai JSON, tetapi sebagian besar dunia bisnis masih berjalan di atas XML: layanan web SOAP, pesan bank dan pembayaran, e-faktur dan portal pemerintah, impor ERP dan akuntansi, feed produk, RSS, sitemap, dokumen Office, dan resource Android. Saat data dari API JSON, database NoSQL, atau aplikasi JavaScript harus sampai ke salah satu sistem ini, data perlu dikonversi.
Konverter JSON ke XML (JSON से XML) ini melakukannya seketika di browser Anda. Konverter mengikuti konvensi yang umum dipakai — array menjadi elemen berulang, kunci @ menjadi atribut dan #text menjadi teks elemen — dan menjamin output well-formed dengan memperbaiki nama yang tidak valid dan meng-escape karakter khusus. Tanpa unggahan, tanpa daftar, dan tanpa batas seberapa sering Anda memakainya.
Cara Memakainya
- Tempel JSON ke kotak atau tekan Buka file untuk memuat file .json. Contoh sudah dimuat untuk menunjukkan cara kerja atribut dan array.
- Perhatikan baris status: baris itu memastikan JSON valid atau menampilkan error parser yang tepat.
- Atur elemen root (dipakai saat JSON tidak punya satu kunci tingkat atas) dan nama untuk item array (dipakai untuk array tingkat atas).
- Pilih opsi: penanganan @/#text dan cetak rapi.
- Salin atau unduh XML.
Cara JSON Dipetakan ke XML
JSON dan XML memodelkan data dengan cara berbeda — JSON punya objek, array, angka, boolean, dan null; XML punya elemen, atribut, dan teks. Konverter memakai aturan berikut:
| JSON | XML |
|---|---|
{"name": "Asha"} | <name>Asha</name> |
{"marks": [91, 88]} | <marks>91</marks><marks>88</marks> |
{"@id": "b1"} di dalam objek | id="b1" atribut pada elemen tersebut |
{"#text": 250} di dalam objek | 250 sebagai teks elemen |
{"city": null} | <city/> |
true, 42 | Teks true, 42 |
{"a b": 1} | <a_b>1</a_b> |
Memilih Elemen Root
Dokumen XML harus memiliki tepat satu elemen root. JSON tidak punya aturan itu, jadi konverter memutuskan sebagai berikut:
- Objek dengan satu kunci yang nilainya objek — misalnya
{"catalog": {…}}— memakai kunci itu sebagai root:<catalog>…</catalog>. Ini hasil paling alami untuk JSON yang sebelumnya dikonversi dari XML. - Objek lain mana pun dibungkus dengan nama root yang Anda pilih (default
root). - Array tingkat atas seperti
[{…}, {…}]menjadi<root><item>…</item><item>…</item></root>, dengan kedua nama bisa diedit — misalnyastudentsdanstudent.
Atribut dan Teks: Konvensi @ dan #text
XML bisa menyimpan nilai sebagai atribut (<book id="b1">) atau elemen anak. JSON tidak punya atribut, jadi konvensi umum — yang juga dipakai banyak library dan konverter XML ke JSON kami — menandainya dengan @. Demikian pula, #text menyimpan teks milik elemen saat elemen itu juga punya atribut:
{"price": {"@currency": "INR", "#text": 250}}
→ <price currency="INR">250</price>
Karena kedua konverter memakai aturan yang sama, Anda bisa mengubah XML menjadi JSON, mengeditnya di kode, lalu mengubahnya kembali menjadi XML yang setara. Jika JSON Anda memang punya kunci yang diawali @ atau # dan Anda ingin keduanya menjadi elemen biasa, hapus centang opsi: kunci itu menjadi nama elemen bergaya _id.
Contoh Perhitungan
Berikut contoh respons bergaya API dan hasil konverter dengan pengaturan default:
{"orders": {"@count": 2, "order": [
{"@id": "101", "customer": "Asha", "items": ["Pen", "Notebook"], "total": 55},
{"@id": "102", "customer": "Rohit", "items": ["Bag"], "total": 399, "coupon": null}
]}}
<orders count="2">
<order id="101">
<customer>Asha</customer>
<items>Pen</items>
<items>Notebook</items>
<total>55</total>
</order>
<order id="102">
…
<coupon/>
</order>
</orders>
Perhatikan bagaimana satu kunci tingkat atas orders menjadi root, kunci @count dan @id menjadi atribut, array order menghasilkan satu elemen per pesanan, array items mengulang elemennya, dan null menjadi <coupon/> kosong. Jika sistem penerima mengharapkan <items><item>Pen</item>…</items>, bentuk ulang JSON menjadi "items": {"item": ["Pen", "Notebook"]} sebelum konversi — konverter akan mengikuti strukturnya persis.
Bisa Dipakai di Perangkat Apa Pun
Anda hanya butuh browser modern di Windows, macOS, Linux, Android, atau iPhone. Tidak ada yang diinstal, dan karena konverter ini JavaScript biasa tanpa library eksternal, konverter tetap berfungsi meski koneksi internet terputus setelah halaman dimuat.
Membuat Setiap Nama Valid
Kunci JSON bisa berupa string apa pun — “first name”, “2026”, “price(₹)”, bahkan string kosong. Nama elemen dan atribut XML tidak boleh mengandung spasi atau kebanyakan simbol, tidak boleh diawali angka, dan tidak boleh diawali “xml”. Konverter membersihkan nama secara otomatis: spasi dan simbol menjadi garis bawah, nama yang diawali angka atau “xml” mendapat garis bawah di depan, dan nama kosong menjadi item. Huruf Unicode seperti Hindi diizinkan dan dipertahankan. Jika Anda butuh nama persis untuk sistem tujuan, ganti nama kunci di JSON terlebih dahulu — nama XML peka huruf besar/kecil.
Escaping dan Output Well-Formed
Nilai di-escape agar dokumen selalu bisa dibaca: & menjadi &, < dan > menjadi < dan >, dan tanda kutip di dalam atribut menjadi ". Karakter kontrol yang dilarang XML 1.0 dihapus. Output diawali deklarasi XML yang menetapkan UTF-8, sehingga Hindi, emoji, dan aksara lain tetap utuh.
Kegunaan Umum
- Mengintegrasikan API dengan sistem lama: ambil respons JSON dan hasilkan XML yang diharapkan layanan SOAP, antarmuka bank, atau ERP.
- Feed dan sindikasi: buat feed produk atau konten dalam XML dari ekspor JSON.
- Konfigurasi: ubah pengaturan JSON menjadi file konfigurasi XML untuk proyek Java, .NET, atau Android.
- Pengujian dan mocking: buat fixture XML dari data uji JSON.
- Migrasi data: pindahkan record dari database NoSQL ke format impor berbasis XML.
- Belajar: lihat berdampingan bagaimana struktur JSON dipetakan ke pohon XML.
JSON vs XML
| JSON | XML | |
|---|---|---|
| Sintaks | Kurung kurawal, kurung siku, pasangan kunci–nilai | Tag pembuka dan penutup |
| Tipe data | String, angka, boolean, null, array, objek | Hanya teks (tipe berasal dari skema) |
| Atribut | Tidak | Ya |
| Komentar | Tidak | Ya |
| Ukuran | Lebih kecil | Lebih besar |
| Validasi | JSON Schema | XSD, DTD |
| Lingkungan umum | API web, aplikasi | Enterprise, dokumen, feed |
Karena XML menyimpan semuanya sebagai teks, angka dan boolean menjadi bentuk teksnya (42, true). Jika sistem penerima butuh tipe, biasanya tipe didapat dari skema XML.
Memperbaiki JSON yang Tidak Valid
Konverter memakai parser JSON ketat milik browser, sehingga kesalahan umum langsung dilaporkan dengan posisinya di pesan: tanda kutip tunggal alih-alih ganda, koma di akhir setelah item terakhir, kunci tanpa tanda kutip, komentar, atau kurung yang hilang. Tempel JSON ke Pemformat JSON kami untuk menemukan dan memperbaiki masalahnya, lalu kembali untuk mengonversi.
Bagaimana dengan Namespace dan Skema?
Beberapa format mewajibkan namespace XML (misalnya xmlns="…" pada root) atau harus divalidasi terhadap skema XSD. Anda bisa menambahkan deklarasi namespace dengan menaruh kunci atribut pada objek root, seperti "@xmlns": "http://example.com/schema", dan akan ditulis persis sebagai xmlns — satu-satunya nama berawalan “xml” yang diloloskan, karena merupakan deklarasi namespace yang sah. Nama berawalan seperti ns:item tidak didukung karena titik dua diganti, jadi untuk format dengan banyak namespace, konversi dulu lalu tambahkan awalan di editor. Untuk validasi terhadap skema, gunakan tools yang disediakan sistem tujuan Anda setelah konversi.
File Besar
File hingga 50 MB bisa dibuka. Kotak output menampilkan 200,000 karakter pertama agar halaman tetap cepat, tetapi Salin dan Unduh selalu menyertakan XML lengkap. Dokumen yang sangat bersarang atau sangat besar paling baik ditangani di browser laptop atau desktop, yang memorinya lebih besar daripada HP.
Tips untuk Hasil yang Bersih
- Bungkus data Anda dalam satu kunci bernama —
{"orders": {"order": [...]}}— untuk mengontrol nama root dan record dengan tepat. - Gunakan pasangan jamak/tunggal untuk array: kunci array menjadi elemen berulang, jadi beri nama tunggal (
order), di dalam induk jamak (orders). - Jadikan ID sebagai @atribut untuk XML yang ringkas dan mudah dicari.
- Matikan cetak rapi saat file langsung masuk ke program lain, untuk menghemat ruang; biarkan aktif saat orang perlu membaca atau meninjau XML.
Privasi
Respons API sering memuat data pribadi atau bisnis. Konverter ini berjalan sepenuhnya di browser Anda dengan JavaScript biasa — tanpa library, tanpa server, tanpa unggahan, dan tidak ada yang disimpan setelah Anda menutup tab.
Glosarium Singkat
- Elemen: pasangan tag XML seperti
<city>Patna</city>. - Atribut: pasangan name=“value” di dalam tag pembuka.
- Elemen root: satu elemen terluar yang memuat seluruh dokumen.
- Well-formed: XML yang mengikuti aturan sintaks sehingga parser mana pun bisa membacanya.
Mengapa Memakai Konverter Ini?
Menangani array, atribut, dan node teks dengan aturan yang jelas dan bisa diprediksi, selalu menghasilkan XML valid, bekerja offline setelah dimuat, dan menjaga data Anda tetap privat — gratis. Tools terkait: XML ke JSON, JSON ke CSV, dan CSV ke XML.
Konverter JSON ke XML — Fakta Penting
| Input | Teks JSON atau file .json |
|---|---|
| Hasil | XML UTF-8 |
| Array | Elemen berulang |
| Atribut | Kunci yang diawali @ |
| Node teks | Kunci #text |
| Privasi | Berjalan di browser Anda |
Pertanyaan yang Sering Diajukan
Bagaimana cara mengubah JSON ke XML?
Tempel JSON ke kotak atau buka file .json. XML dibuat saat Anda mengetik; salin atau unduh sebagai file .xml.
Bagaimana array JSON diubah?
Setiap item array menjadi elemen berulang yang dinamai sesuai kunci array. Misalnya “marks”: [91, 88] menjadi
Bagaimana cara membuat atribut XML dari JSON?
Awali kunci dengan @. {“book”: {“@id”: “b1”, “title”: “Godan”}} menjadi
Apa fungsi #text?
Kunci #text menetapkan teks milik elemen itu sendiri, sehingga {“price”: {“@currency”: “INR”, “#text”: 250}} menjadi
Apa yang menjadi elemen root?
Jika JSON adalah objek dengan satu kunci, kunci itu menjadi root. Jika tidak, semuanya dibungkus dengan nama root yang Anda pilih (default root).
Bagaimana dengan kunci yang bukan nama XML valid?
Spasi dan simbol menjadi garis bawah, dan nama yang diawali angka atau ‘xml’ mendapat garis bawah di depan, sehingga XML selalu valid.
Bagaimana null ditangani?
null menjadi elemen kosong seperti
Apakah karakter khusus di-escape?
Ya. &, <, >, dan tanda kutip diubah menjadi entitas, dan karakter kontrol yang tidak valid dihapus.
Bagaimana jika JSON saya tidak valid?
Tool menampilkan pesan error dari parser JSON sehingga Anda bisa menemukan masalahnya. Pemformat JSON kami bisa membantu memperbaikinya.
Apakah file saya diunggah?
Tidak. Konversi terjadi sepenuhnya di browser Anda.
Bisakah saya mengubah XML kembali ke JSON?
Ya — gunakan konverter XML ke JSON kami, yang memakai konvensi @attribute dan #text yang sama, sehingga data bisa bolak-balik.
Apakah gratis?
Ya, sepenuhnya gratis tanpa daftar.
JSON ke XML, Seketika!
Atribut, array, dan nama valid — gratis dan privat.
Jelajahi Tools Prompt Minds Lainnya
Konverter JSON ke XML sangat cocok dipakai bersama tools gratis kami yang lain. Setiap tool Prompt Minds berjalan sepenuhnya di browser Anda — tanpa daftar, tanpa unggahan, tanpa watermark. Jelajahi semua tools gratis.
