HTML และ XML เป็นภาษา Markup ทั้งคู่ แต่มีเป้าหมายและกฎที่แตกต่างกัน
ตารางเปรียบเทียบ
| ด้าน | HTML | XML |
|---|---|---|
| ความหมาย | HyperText Markup Language | eXtensible Markup Language |
| วัตถุประสงค์หลัก | แสดงผลข้อมูล (Display Data) | ขนส่ง/จัดเก็บข้อมูล (Transport/Store Data) |
| Case Sensitivity | ไม่สนใจ Case (Case-insensitive) | สนใจ Case (Case-sensitive) |
| การจัดการ Error | เบราว์เซอร์ทนทาน ข้าม Error ได้ | เข้มงวด Error เล็กน้อยก็ Fail |
| Tags (แท็ก) | กำหนดไว้ล่วงหน้า (Predefined) | ผู้ใช้กำหนดเอง (User-defined) |
| จำนวน Tags | จำกัด (~100+ แท็ก) | ไม่จำกัด (Extensible) |
| White Space | ไม่รักษา (Collapse) | รักษา (Preserve) |
| Closing Tags | บางแท็กไม่ต้องปิด (Void elements) | ต้องปิดทุกแท็ก (Well-formed) |
| Attribute Values | อาจไม่ต้องมี Quotes | ต้องมี Quotes เสมอ |
| Encoding | มักเป็น UTF-8 | รองรับ Unicode ทุกชarset (ระบุใน XML Declaration) |
ตัวอย่าง HTML
<!DOCTYPE html> <html> <head> <title>My Title</title> </head> <body> <h1>Title</h1> <p>A sample paragraph</p> <img src="image.jpg"> </body> </html>
ตัวอย่าง XML
<?xml version="1.0" encoding="UTF-8"?>
<contactinfo>
<address category="home">
<name>Mark</name>
<College>MIT</College>
<mobile>6787878</mobile>
</address>
</contactinfo>
ผลลัพธ์ XML (แสดงข้อมูลดิบ)
Mark MIT 6787878
ความสัมพันธ์และการใช้งานร่วมกัน
- XHTML = HTML ที่ปฏิบัติตามกฎ XML (Strict, Well-formed)
- HTML5 ยืดหยุ่นกว่า ไม่บังคับ Well-formed
- XML ใช้สำหรับ: Config files, Data exchange (API), RSS/Atom, SVG, Office documents (OOXML)
- HTML ใช้สำหรับ: โครงสร้างหน้าเว็บที่แสดงให้มนุษย์ดู
สรุป
HTML = "Data นำเสนออย่างไร" (Presentation)
XML = "Data คืออะไร" (Structure/Meaning)