Skip to content

XML Formatter

Beautify, minify, dan validasi XML langsung di browser — tidak ada upload. Merapikan XML yang berantakan, melaporkan error well-formedness dengan baris/kolom. Gratis, privat, tanpa pendaftaran.

Tanpa Pelacakan Berjalan di Browser Gratis
Indentasi
Output XML
Ditinjau untuk kepatuhan well-formedness XML 1.0, pemformatan lossless, dan pelaporan error yang akurat — Go Tools Engineering Team · May 29, 2026

Apa Itu XML Formatter dan Mengapa Menggunakannya?

XML (Extensible Markup Language) adalah format berbasis teks untuk data terstruktur, digunakan di mana-mana mulai dari layanan web dan file konfigurasi hingga feed RSS, API SOAP, dokumen perkantoran (DOCX, XLSX), grafis SVG, dan file layout Android. Tidak seperti JSON, XML mendukung komentar, namespace, konten campuran (teks dan elemen yang berselang-seling), dan deklarasi tipe dokumen — menjadikannya format pilihan untuk integrasi enterprise, pertukaran dokumen, dan di mana pun data terstruktur perlu berdampingan dengan markup yang mudah dibaca manusia.

XML di dunia nyata sering kali berindentasi buruk atau sepenuhnya diminifikasi — respons API tiba dalam satu baris, file konfigurasi mengumpulkan indentasi yang tidak konsisten, dan XML yang dihasilkan dari serializer tidak menambahkan spasi sama sekali. Sebuah XML formatter mengambil input yang berantakan dan mengindentasinya kembali menjadi struktur hierarkis yang bersih di mana setiap level nesting terlihat jelas secara visual. Ini penting untuk tinjauan kode, debugging, dokumentasi, dan memahami skema XML yang tidak familiar.

**Apa yang dilakukan alat ini berbeda dari editor teks biasa:**

**1. Validasi well-formedness dengan lokasi error yang tepat.** Formatter menggunakan DOMParser browser (mesin yang sama yang mem-parse HTML dan SVG) untuk mem-parse XML. Jika dokumen tidak well-formed — tag yang tidak cocok, elemen yang tidak ditutup, karakter yang tidak di-escape, atau beberapa elemen root — parser melaporkan nomor baris dan kolom tepat tempat ia gagal. Ini jauh lebih cepat daripada membaca XML mentah mencari tempat tag yang tidak sengaja dibiarkan terbuka.

**2. Pemformatan lossless.** Formatter mempertahankan komentar, instruksi pemrosesan, bagian CDATA, deklarasi namespace, urutan atribut, dan semua konten teks dengan tepat. Hanya menyesuaikan spasi di antara tag elemen. Anda dapat dengan aman memformat XML apa pun yang Anda pedulikan — tidak ada yang bermakna akan berubah.

**3. Minifikasi untuk penggunaan produksi.** Minifier menghapus semua spasi antar-elemen yang tidak signifikan, menghasilkan representasi XML valid terkecil. Ini adalah langkah pra-pemrosesan yang tepat sebelum menyimpan XML di kolom database, memasukkannya sebagai string ke dalam JSON, atau mengirimkannya melalui saluran yang dihitung byte-nya.

**4. Privasi 100% berbasis browser.** XML kesehatan (HL7, FHIR), data keuangan, payload SOAP dengan kredensial, dan file konfigurasi internal semuanya adalah payload XML umum yang berisi data sensitif. Alat ini tidak pernah mengupload apa pun — semua pemrosesan berjalan di JavaScript engine browser Anda. Lihat alat pendamping kami jika Anda perlu mengonversi, bukan memformat: Konverter XML ke JSON untuk mengonversi XML ke JSON, dan Konverter JSON ke XML untuk arah sebaliknya.

<!-- Minified XML input -->
<?xml version="1.0" encoding="UTF-8"?><catalog><product id="p01"><name>Wireless Headphones</name><price currency="USD">79.99</price></product></catalog>

<!-- After formatting with 2-space indent -->
<?xml version="1.0" encoding="UTF-8"?>
<catalog>
  <product id="p01">
    <name>Wireless Headphones</name>
    <price currency="USD">79.99</price>
  </product>
</catalog>

Fitur Utama

Beautify dengan Indent 2 atau 4 Spasi

Mengindentasi ulang XML menjadi hierarki yang bersih dan mudah dibaca. Pilih indentasi 2 spasi (paling umum untuk layanan web, RSS, dan file konfigurasi) atau 4 spasi (umum dalam skema XML enterprise) sebelum pemformatan.

Minify — Hapus Spasi Tidak Signifikan

Menghapus semua spasi di antara tag elemen tanpa menyentuh konten teks, menghasilkan XML valid terkecil. Ideal untuk penyimpanan, transmisi, atau penyematan sebagai string dalam JSON atau format lainnya.

Validasi Well-Formedness dengan Error Baris/Kolom

Menggunakan DOMParser bawaan browser untuk memvalidasi struktur XML. Melaporkan nomor baris dan kolom tepat dari error well-formedness pertama — tag yang tidak cocok, elemen yang tidak ditutup, karakter yang tidak di-escape — untuk debugging cepat.

Lossless: Mempertahankan Komentar, Namespace, dan Atribut

Komentar, instruksi pemrosesan, bagian CDATA, deklarasi namespace, dan urutan atribut semuanya dipertahankan persis. Hanya spasi yang tidak signifikan di antara tag yang dimodifikasi — konten Anda tidak pernah diubah.

100% Berbasis Browser — Tanpa Upload, Tanpa Server

Semua pemrosesan berjalan secara lokal di browser Anda. Payload XML yang berisi kredensial, data kesehatan, catatan keuangan, atau konfigurasi internal tidak pernah ditransmisikan ke server mana pun dan tidak pernah dicatat.

Bekerja dengan SOAP, RSS, SVG, XHTML, dan Android XML

Menangani aplikasi XML well-formed apa pun: SOAP envelope dengan header WS-Security, feed RSS/Atom, file SVG, dokumen XHTML, layout XML Android, Maven POM, dan file build Maven/Ant.

Contoh

XML Berantakan / Minified

<?xml version="1.0" encoding="UTF-8"?><catalog><product id="p01" category="electronics"><name>Wireless Headphones</name><price currency="USD">79.99</price><stock>142</stock><tags><tag>audio</tag><tag>bluetooth</tag></tags></product><product id="p02" category="books"><name>Learning XML</name><price currency="USD">29.99</price><stock>55</stock></product></catalog>

Katalog produk XML satu baris yang padat. Klik Format untuk mengindentasinya menjadi pohon yang mudah dibaca dengan indentasi 2 spasi. Hierarki elemen, atribut, dan konten teks semuanya dipertahankan sepenuhnya — pemformatan murni bersifat kosmetik.

Cuplikan RSS Feed

<rss version="2.0"><channel><title>Go Tools Blog</title><link>https://go-tools.org/blog</link><description>Developer tools, tips and tutorials</description><item><title>Understanding XML Namespaces</title><link>https://go-tools.org/blog/xml-namespaces-guide</link><pubDate>Thu, 29 May 2026 00:00:00 GMT</pubDate><description>A deep dive into XML namespace declarations, prefixes, and scope rules with practical examples.</description></item><item><title>XML vs JSON: When to Use Each</title><link>https://go-tools.org/blog/xml-vs-json</link><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate></item></channel></rss>

Feed RSS 2.0 dua item yang dikompresi menjadi satu baris. Setelah diformat, metadata channel dan setiap elemen item tampak terindentasi dengan jelas, memudahkan pemeriksaan struktur feed, penambahan item baru, atau perbandingan dengan persyaratan validator feed.

SOAP Envelope

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soap:Header><wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><wsse:UsernameToken><wsse:Username>api-client</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-ext-1.0.xsd#PasswordText">s3cr3t</wsse:Password></wsse:UsernameToken></wsse:Security></soap:Header><soap:Body><GetOrderRequest xmlns="http://example.com/orders"><OrderId>ORD-20260529-001</OrderId><IncludeLineItems>true</IncludeLineItems></GetOrderRequest></soap:Body></soap:Envelope>

SOAP 1.1 envelope dengan header WS-Security dan body GetOrder, menggunakan tiga prefiks namespace (soap:, wsse:, dan default). Pemformatan membuat pemisahan header/body dan deklarasi namespace langsung terlihat jelas — penting untuk men-debug integrasi SOAP dan membaca payload yang dihasilkan WSDL.

Cara Menggunakan

  1. 1

    Tempel XML Anda

    Masukkan atau tempel XML ke kolom input di atas. Anda juga dapat klik 'Muat contoh' untuk mencoba sampel (XML katalog produk yang diminifikasi yang diformat dengan baik).

  2. 2

    Pilih Aksi

    Klik Format untuk merapikan dengan indentasi, Minify untuk menghapus spasi, atau Validate untuk memeriksa well-formedness. Pilih 2 atau 4 spasi untuk ukuran indent sebelum pemformatan.

  3. 3

    Salin Output

    XML yang diproses muncul di panel output. Klik Copy untuk mengambilnya ke clipboard. Jika Validate menemukan error, spanduk error menampilkan nomor baris dan kolom yang tepat.

Kesalahan XML Umum

Tag yang Tidak Cocok

Nama tag XML peka huruf besar/kecil dan harus cocok persis. dan adalah tag yang berbeda — XML menganggap ini sebagai elemen yang tidak ditutup dan yang tersesat. Ini adalah penyebab paling sering dari error well-formedness saat mengedit XML secara manual.

✗ Salah
<products>
  <Item>
    <name>Widget</name>
  </item>
</products>
✓ Benar
<products>
  <item>
    <name>Widget</name>
  </item>
</products>

Ampersand atau Tanda Kurang-Dari yang Tidak Di-escape

Karakter & dan < adalah karakter khusus dalam XML dan harus di-escape di luar bagian CDATA. & tanpa escape menyebabkan error parser bahkan dalam nilai atribut. Gunakan & untuk & dan < untuk <. Tanda lebih-dari > sebaiknya di-escape sebagai > dalam konten teks, meskipun parser lebih toleran terhadapnya.

✗ Salah
<query>price > 10 & stock > 0</query>
✓ Benar
<query>price &gt; 10 &amp; stock &gt; 0</query>

Atribut Tanpa Kutip atau Dikutip Tidak Benar

Semua nilai atribut XML harus diapit dalam tanda kutip tunggal atau ganda. Nilai atribut tanpa kutip valid di HTML5 tetapi merupakan error well-formedness dalam XML. Juga, nilai yang mengandung tanda kutip ganda harus menggunakan tanda kutip tunggal sebagai pembatas (atau escape kutipan sebagai ").

✗ Salah
<product id=p01 label="It's a "widget"">
✓ Benar
<product id="p01" label="It's a &quot;widget&quot;">

Beberapa Elemen Root

Dokumen XML harus memiliki tepat satu elemen root yang berisi semua elemen lainnya. Kesalahan umum saat menyatukan fragmen XML adalah berakhir dengan dua atau lebih elemen tingkat atas berdampingan, yang bukan XML valid (meskipun umum dalam HTML). Bungkus semua elemen saudara dalam satu kontainer root.

✗ Salah
<user><name>Alice</name></user>
<user><name>Bob</name></user>
✓ Benar
<users>
  <user><name>Alice</name></user>
  <user><name>Bob</name></user>
</users>

Ketidaksesuaian Encoding pada Deklarasi XML

Jika file XML Anda disimpan dalam UTF-16 atau encoding non-UTF-8 lainnya tetapi deklarasi menyatakan encoding="UTF-8" (atau tidak ada, yang default ke UTF-8), beberapa parser akan menolaknya atau menghasilkan karakter yang rusak. Saat menempel ke alat berbasis browser, browser menangani encoding secara otomatis. Untuk file di disk, pastikan atribut encoding cocok dengan encoding file aktual.

✗ Salah
<?xml version="1.0" encoding="UTF-8"?>
<!-- File is actually saved as UTF-16 -->
✓ Benar
<?xml version="1.0" encoding="UTF-16"?>
<!-- File saved as UTF-16, declaration matches -->

Bagian CDATA Tidak Ditutup dengan Benar

Bagian CDATA dimulai dengan . Jika urutan penutup ]]> hilang atau salah ketik, parser memperlakukan semua yang mengikuti sebagai bagian dari bagian CDATA sampai menemukan ]]> lain atau mencapai akhir dokumen. Ini biasanya bermanifestasi sebagai error 'unexpected end of document'.

✗ Salah
<script><![CDATA[
  if (a < b && b > c) { return true; }
<!-- ]]> is missing -->
✓ Benar
<script><![CDATA[
  if (a < b && b > c) { return true; }
]]></script>

Kasus Penggunaan Umum

Men-debug Payload SOAP / Web Service
Respons SOAP dari API enterprise dan layanan web lama tiba sebagai string XML satu baris. Tempel payload mentah ke formatter untuk langsung melihat struktur envelope, header, dan body — memudahkan menemukan field yang Anda butuhkan atau menemukan ketidaksesuaian namespace. Lihat juga: Konverter XML ke JSON jika Anda perlu memproses payload lebih lanjut dalam JavaScript.
Memvalidasi File Konfigurasi dan Deskriptor Deployment
File Maven POM, konteks aplikasi Spring XML, server.xml Tomcat, file Android Manifest, dan banyak file konfigurasi Java/enterprise lainnya adalah XML. Jalankan melalui Validate sebelum melakukan commit untuk mendeteksi tag yang tidak cocok atau masalah encoding yang sebaliknya hanya akan muncul saat waktu build atau deploy.
Memformat Output Feed RSS dan Atom
Feed RSS 2.0 dan Atom 1.0 adalah XML. Saat mengembangkan generator feed atau men-debug masalah kompatibilitas feed reader, format XML feed mentah untuk memeriksa metadata channel, struktur item, dan deklarasi namespace yang diperlukan secara berdampingan.
Membaca dan Mengedit File SVG
File SVG yang diekspor dari Figma, Illustrator, atau Sketch adalah XML valid tetapi sering diminifikasi atau berisi indentasi berlebihan dari eksporter. Format SVG untuk mendapatkan pohon elemen yang bersih dan mudah dinavigasi sebelum membuat pengeditan manual pada path, grup, atau atribut gaya.
Mempersiapkan XML untuk Penyimpanan atau Transmisi
Saat menyimpan XML di kolom database, mengirimkannya sebagai field string JSON dalam permintaan API, atau memasukkannya ke dalam antrean pesan, gunakan Minify terlebih dahulu untuk menghapus spasi yang tidak diperlukan. Ini mengurangi ukuran payload dan menghindari masalah dengan parser JSON yang mungkin tersandung pada karakter kontrol yang tidak di-escape dalam string XML berindentasi besar.
Mengonversi XML ke JSON
Jika Anda perlu mengonversi XML yang telah diformat ke JSON untuk digunakan dalam aplikasi JavaScript atau REST API, gunakan Konverter XML ke JSON kami. Untuk arah sebaliknya — membangun XML dari struktur JSON — gunakan Konverter JSON ke XML.

Detail Teknis

Browser DOMParser untuk Parsing XML
Parsing XML menggunakan DOMParser bawaan browser dengan tipe MIME 'text/xml'. Ini adalah mesin yang sama yang menggerakkan rendering SVG dan XHTML di browser — sepenuhnya sesuai XML 1.0 dan melaporkan error well-formedness dengan informasi baris dan kolom. Ketika dokumen tidak well-formed, DOMParser mengembalikan dokumen parsererror yang berisi pesan error dan posisi, yang diekstrak dan ditampilkan oleh alat ini.
Serialisasi Pohon DOM untuk Pemformatan
Pemformatan bekerja dengan mem-parse XML menjadi pohon DOM dan kemudian menelusuri pohon secara rekursif untuk menghasilkan output berindentasi. Pendekatan ini mempertahankan struktur semantis dokumen: nesting elemen, konten teks, atribut, bagian CDATA, instruksi pemrosesan, dan komentar semuanya diserialisasi kembali persis seperti yang di-parse. Hanya node teks yang hanya-spasi antar-elemen yang dibuang — node teks yang mengandung karakter non-spasi selalu dipertahankan.
Minifikasi melalui Penghapusan Node Teks Hanya-Spasi
Minifikasi menelusuri pohon DOM yang sama dan menghapus node teks yang kontennya sepenuhnya spasi (spasi, tab, baris baru). Node teks dengan konten campuran atau non-spasi — data aktual di antara tag — tidak pernah dihapus. Atribut dan nilainya diserialisasi tanpa spasi tambahan. Hasilnya adalah representasi XML well-formed paling ringkas dari dokumen asli.
100% Berbasis Browser — Tanpa Upload, Tanpa Server
Semua pemrosesan berjalan di runtime JavaScript browser Anda. Tidak ada data yang ditransmisikan ke server mana pun kapan pun. Ini sangat penting untuk payload XML yang sering mengandung konten sensitif: token SOAP WS-Security, data pasien HL7, konfigurasi layanan internal, dan format pesan keuangan (FIX, SWIFT ISO 20022). Alat ini aman untuk digunakan dengan XML apa pun yang tidak ingin Anda tempel ke layanan publik.

Praktik Terbaik

Validasi Sebelum Memformat, Format Sebelum Melakukan Commit
Validasi XML Anda terlebih dahulu untuk memastikannya well-formed sebelum memformat ulang — formatter akan menghasilkan output yang tidak benar secara diam-diam jika input bukan XML valid. Setelah divalidasi, format dan tinjau output berindentasi sebelum melakukan commit pada file konfigurasi, template feed, atau definisi WSDL ke version control.
Gunakan Indent 2 Spasi untuk Format Web, 4 Spasi untuk XML Enterprise
Indentasi dua spasi adalah konvensi untuk feed RSS/Atom, SVG, XHTML, Android XML, dan sebagian besar XML yang menghadap web. Indentasi empat spasi umum di lingkungan Java enterprise (Maven POM, file konteks Spring, deskriptor deployment JBoss). Sesuaikan dengan konvensi file dan toolchain Anda yang sudah ada.
Minifikasi XML Sebelum Menyematkan dalam JSON
Jika Anda perlu menyematkan string XML sebagai nilai field JSON, selalu minifikasi terlebih dahulu. XML berindentasi mengandung baris baru dan beberapa spasi yang harus di-escape JSON (\n, beberapa \u0020), secara dramatis mengembungkan ukuran payload. XML yang diminifikasi juga jauh lebih kecil kemungkinannya untuk memicu batas panjang baris di proxy perantara atau sistem logging.
Escape Karakter Khusus dalam Konten Teks, Gunakan CDATA Hemat
Untuk nilai teks pendek yang mengandung & atau <, gunakan referensi entitas (&, <) — lebih portabel daripada bagian CDATA dan bekerja dalam nilai atribut juga. Simpan bagian CDATA () untuk menyematkan blok kode besar, kueri SQL, atau fragmen HTML di mana men-escape setiap karakter khusus akan membuat konten tidak dapat dibaca.
Deklarasikan Namespace Sedini Mungkin
Deklarasikan namespace XML (xmlns:prefix="URI") pada elemen root atau elemen tingkat tertinggi yang menggunakan prefiks. Mendeklarasikan namespace jauh di dalam pohon dokumen membuat XML lebih sulit dibaca dan dapat menyebabkan masalah dengan parser XML berbasis aliran (SAX, StAX) yang memproses namespace secara inkremental. Contoh SOAP Envelope di atas menunjukkan pola yang direkomendasikan: semua deklarasi namespace pada elemen Envelope root.

Pertanyaan yang Sering Diajukan

Apakah data XML saya dikirim ke server saat menggunakan alat ini?
Tidak. Semua pemformatan, minifikasi, dan validasi terjadi sepenuhnya di dalam browser Anda menggunakan JavaScript. XML Anda tidak pernah ditransmisikan melalui jaringan, tidak pernah disimpan di server mana pun, dan tidak pernah dicatat atau dianalisis oleh siapa pun. Ini membuat alat aman untuk digunakan dengan payload XML yang berisi kredensial API, data layanan internal, catatan keuangan, dokumen kesehatan HL7/FHIR, atau konten sensitif lainnya. Anda dapat mengonfirmasi ini dengan membuka tab Network browser Anda — Anda akan melihat nol permintaan yang dipicu saat menempel atau memproses XML.
Apa yang diperiksa oleh tombol Validate?
Tombol Validate memeriksa apakah XML Anda well-formed sesuai spesifikasi XML 1.0. Well-formedness berarti: setiap tag pembuka memiliki tag penutup yang sesuai, tag bersarang dengan benar (tidak ada elemen yang tumpang tindih), dokumen memiliki tepat satu elemen root, nilai atribut dikutip, dan karakter khusus (&, <, >) di-escape dengan benar sebagai &, <, dan >. Jika XML well-formed, spanduk hijau 'XML Valid' muncul. Jika tidak, pesan error muncul dengan nomor baris dan kolom tempat masalah ditemukan, sehingga Anda dapat langsung menemukan dan memperbaiki masalah.
Apakah validasi memeriksa terhadap XML Schema (XSD) atau DTD?
Tidak. Alat ini hanya memeriksa well-formedness — tidak memvalidasi terhadap skema XSD, DTD, skema RELAX NG, atau tata bahasa lainnya. Well-formedness adalah prasyarat untuk validasi skema, tetapi keduanya merupakan level kebenaran yang berbeda. Dokumen XML bisa sepenuhnya well-formed tetapi masih melanggar skema (misalnya, elemen yang diperlukan hilang, atau kolom numerik berisi string). Untuk validasi skema penuh, Anda memerlukan alat seperti xmllint (command-line), Oxygen XML Editor, atau parser XML bahasa pemrograman Anda dengan dukungan skema diaktifkan.
Apa perbedaan antara Format (Beautify) dan Minify?
Format (Beautify) menambahkan indentasi dan baris baru yang konsisten untuk membuat XML mudah dibaca manusia. Setiap elemen bersarang diindentasi sejumlah spasi yang dipilih (2 atau 4), sehingga struktur hierarkis langsung terlihat. Ini yang Anda inginkan saat membaca, mengedit, atau membedakan XML. Minify melakukan sebaliknya: menghapus semua spasi yang bukan bagian dari konten teks elemen, menciutkan dokumen ke jumlah karakter minimum. Ini berguna sebelum menyimpan XML di database, mengirimkannya melalui jaringan di mana jumlah byte penting, atau menyematkannya sebagai string dalam format lain. Kedua operasi menghasilkan XML yang identik secara semantis — hanya spasi yang tidak signifikan yang berubah.
Apakah pemformatan mempertahankan komentar dan atribut XML?
Ya. Pemformatan sepenuhnya lossless terhadap konten XML. Komentar () dipertahankan di tempat dengan spasi sekitarnya disesuaikan untuk indentasi. Semua atribut, urutannya dalam tag, dan nilainya dipertahankan persis. Bagian CDATA, instruksi pemrosesan (), dan deklarasi namespace juga dipertahankan. Formatter hanya menyesuaikan spasi di antara tag elemen — tidak pernah memodifikasi nama elemen, nama atribut, nilai atribut, konten teks, atau komentar.
Bagaimana cara memformat XML dengan indentasi 4 spasi alih-alih 2?
Klik tombol radio '4 spasi' di kontrol Indent (di sebelah tombol Format, Minify, dan Validate), lalu klik Format. Panel output akan merender ulang XML dengan indentasi 4 spasi. Anda dapat beralih antara 2 dan 4 spasi kapan saja dan klik Format lagi — ukuran indentasi dibaca saat Anda mengklik tombol. Indentasi dua spasi adalah konvensi paling umum dalam layanan web dan format pertukaran data; indentasi empat spasi kadang lebih disukai dalam skema XML enterprise dan lingkungan yang banyak menggunakan SOAP.
Versi XML dan encoding apa yang didukung alat ini?
Formatter menggunakan DOMParser bawaan browser dengan tipe MIME text/xml, yang mendukung dokumen XML 1.0 dalam encoding karakter apa pun yang dapat ditangani browser — dalam praktiknya, UTF-8, UTF-16, dan ISO-8859-1 mencakup hampir semua XML di dunia nyata. Deklarasi XML () dipertahankan jika ada. Untuk dokumen XML 1.1 (jarang dalam praktik, terutama digunakan untuk karakter kontrol Unicode), parser yang sama berlaku tetapi beberapa fitur khusus XML 1.1 mungkin tidak sepenuhnya diterapkan.
Apa yang menyebabkan error 'well-formedness' dan bagaimana cara memperbaikinya?
Error well-formedness yang paling umum adalah: (1) Tag yang tidak cocok — tag pembuka seperti dengan tag penutup seperti (perhatikan bentuk jamak). Perbaikan: cocokkan nama tag persis, termasuk huruf besar/kecil. (2) Tag yang tidak ditutup — tag yang tidak pernah memiliki tag penutup atau garis miring penutup sendiri. Perbaikan: tambahkan tag penutup atau ubah menjadi . (3) Karakter khusus yang tidak di-escape — menggunakan & langsung dalam konten teks alih-alih &, atau < alih-alih <. Perbaikan: ganti & tanpa escape dengan & dan < tanpa escape dengan < di luar bagian CDATA. (4) Beberapa elemen root — XML memerlukan tepat satu elemen root yang membungkus semua yang lain. Perbaikan: bungkus semua konten dalam satu tag root. Pesan error dari alat ini menyertakan nomor baris dan kolom dari masalah pertama yang ditemukan.
Bisakah saya menggunakan alat ini untuk memformat file XHTML atau SVG?
Ya. XHTML dan SVG keduanya merupakan aplikasi XML yang valid, sehingga alat ini memformat, meminifikasi, dan memvalidasinya dengan benar. Untuk XHTML, alat ini akan mendeteksi tag yang tidak cocok atau tidak ditutup yang akan diabaikan secara diam-diam oleh parser HTML5 tetapi merupakan error dalam XHTML ketat. Untuk SVG, alat ini sangat berguna untuk memformat file padat-path kompleks yang dihasilkan oleh alat seperti Figma atau Illustrator, memudahkan pemeriksaan atau pengeditan struktur elemen secara manual.
Bagaimana alat ini menangani namespace XML?
Namespace XML (deklarasi xmlns, prefiks namespace seperti soap:, xsi:, dan sebagainya) sepenuhnya dipertahankan oleh formatter. Deklarasi namespace tetap pada elemen tempat aslinya dideklarasikan dan tidak dipindahkan atau dideduplikasi. Nama elemen dan atribut dengan prefiks namespace diperlakukan sebagai string buram oleh formatter — prefiks dan nama lokal dipertahankan persis seperti yang ditulis. Contoh SOAP Envelope di atas menampilkan dokumen dengan tiga prefiks namespace.
Apakah ada batas ukuran file untuk input XML?
Tidak ada batas ukuran keras yang diterapkan oleh alat, tetapi parser berbasis DOM browser akan mengonsumsi memori proporsional dengan ukuran dokumen. Untuk sebagian besar file XML di dunia nyata (file konfigurasi, respons API, feed RSS, payload SOAP) yang jauh di bawah 1MB, kinerjanya instan. Untuk file XML yang sangat besar — ekspor data atau file log berukuran multi-megabyte — pertimbangkan menggunakan alat command-line: xmllint --format input.xml di Linux/macOS (bagian dari libxml2), atau python3 -c "import xml.dom.minidom; print(xml.dom.minidom.parse('input.xml').toprettyxml(indent=' '))" sebagai opsi lintas platform.
Bagaimana cara mengonversi XML ke JSON atau JSON ke XML?
Alat ini berfokus pada pemformatan dan validasi struktur XML. Untuk mengonversi antara XML dan JSON, gunakan alat pendamping: Konverter XML ke JSON mengonversi dokumen XML ke representasi JSON-nya, dan Konverter JSON ke XML mengonversi objek JSON ke XML. Kedua alat juga 100% berbasis browser tanpa upload data.