XML Formatter

จัดรูปแบบ XML ให้อ่านง่าย หรือย่อ XML ได้ในคลิกเดียว

Input XML

Output XML

XML Formatter — จัดรูปแบบ XML และทำความเข้าใจโครงสร้าง XML

XML (eXtensible Markup Language) เป็นภาษา markup ที่ W3C กำหนดมาตรฐานตั้งแต่ปี 1998 แม้ในยุค JSON ครองตลาด API แต่ XML ยังคงเป็นรากฐานของหลาย ecosystem สำคัญ เครื่องมือนี้ช่วยจัด format XML ให้อ่านง่าย (Beautify) หรือบีบอัดให้กระชับ (Minify) พร้อมตรวจสอบความถูกต้องของโครงสร้างเบื้องต้น

โครงสร้างพื้นฐานของ XML

<?xml version="1.0" encoding="UTF-8"?>
<catalog>
  <book id="001" category="fiction">
    <title lang="th">สามก๊ก</title>
    <author>เจ้าพระยาพระคลัง (หน)</author>
    <price currency="THB">320.00</price>
    <inStock>true</inStock>
  </book>
  <book id="002" category="technical">
    <title lang="en">Clean Code</title>
    <author>Robert C. Martin</author>
    <price currency="THB">750.00</price>
    <inStock>false</inStock>
  </book>
</catalog>

จากตัวอย่างนี้จะเห็นองค์ประกอบหลักของ XML ได้แก่ XML Declaration ที่บรรทัดแรก, Root Element (<catalog>), Child Elements, Attributes (id="001"), และ Text Content ภายใน tag

XML ยังใช้ที่ไหนในยุคปัจจุบัน

ตัวอย่าง SOAP Request XML จริง

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Header>
    <AuthHeader>
      <Username>apiuser</Username>
      <Token>abc123xyz</Token>
    </AuthHeader>
  </soap:Header>
  <soap:Body>
    <GetOrderStatus xmlns="http://api.example.com/orders">
      <OrderId>TH20240115001</OrderId>
    </GetOrderStatus>
  </soap:Body>
</soap:Envelope>

XML แบบนี้พบได้ทั่วไปเมื่อต้องเชื่อมต่อกับ legacy system ของธนาคาร ระบบขนส่ง หรือ ERP ของบริษัทใหญ่ การ format ให้อ่านง่ายก่อน debug ช่วยประหยัดเวลามาก

ข้อผิดพลาด XML ที่พบบ่อย

เคล็ดลับการทำงานกับ XML

คำถามที่พบบ่อย — XML Formatter

XML คืออะไร ต่างจาก HTML อย่างไร?

XML (eXtensible Markup Language) คือภาษา markup ที่ออกแบบมาสำหรับเก็บและส่งข้อมูล โดยผู้ใช้กำหนด tag เองได้ ส่วน HTML ใช้ tag ที่กำหนดไว้แล้วสำหรับแสดงผลบนเบราว์เซอร์ XML เข้มงวดกว่า HTML เช่น ทุก tag ต้องปิด, case-sensitive และ attribute ต้องมี quotes รอบค่า ปัจจุบัน XML ใช้กันมากใน SOAP API, configuration files เช่น Maven pom.xml, Android layout และ Microsoft Office format (.docx, .xlsx)

Well-formed XML คืออะไร และทำไมถึงสำคัญ?

Well-formed XML คือ XML ที่ปฏิบัติตามกฎ syntax พื้นฐาน ได้แก่ มี root element เดียว, ทุก tag ต้องปิด, tag ที่ซ้อนกันต้องปิดในลำดับที่ถูกต้อง, attribute ต้องมี double quotes, และ character พิเศษต้องใช้ entity เช่น &amp; &lt; &gt; XML ที่ไม่ well-formed จะทำให้ XML parser เกิด error และโปรแกรมไม่สามารถอ่านข้อมูลได้ เครื่องมือนี้ตรวจสอบ well-formedness ให้อัตโนมัติ

ควรเลือกใช้ XML หรือ JSON เมื่อไหร่?

เลือก JSON เมื่อต้องการ API ที่เบา เร็ว และทำงานกับ JavaScript ง่าย หรือเมื่อ data structure ไม่ซับซ้อน เลือก XML เมื่อต้องการ document ที่มี comment, mixed content (ข้อความและ tag ปนกัน), namespace สำหรับ schema validation เข้มงวด เช่น ระบบ SOAP, EDI, SVG, RSS/Atom feed หรือเมื่อทำงานกับระบบ legacy enterprise ที่กำหนดให้ใช้ XML

XML schema validation คืออะไร แตกต่างจาก well-formed อย่างไร?

Well-formed ตรวจสอบว่า XML ถูก syntax เท่านั้น ส่วน XML Schema Validation ตรวจสอบว่าโครงสร้างและชนิดข้อมูลตรงตาม schema ที่กำหนด เช่น XSD (XML Schema Definition) ระบุว่า element ไหนมีอยู่บ้าง, มี attribute อะไร, ชนิดข้อมูลเป็น string หรือ integer และค่าบังคับหรือไม่ ใช้ในระบบที่ต้องการความแม่นยำสูง เช่น ระบบแลกเปลี่ยนข้อมูลระหว่างธนาคาร หรือระบบสาธารณสุข