Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> HTML

HTML vs XML: ความแตกต่างและการใช้งาน

HTML (HyperText Markup Language)

HTML เป็นภาษาสำหรับ อธิบายโครงสร้างของหน้าเว็บ ประกอบด้วย HTML Elements ที่ประกอบด้วยแท็ก (Tags) และเนื้อหา

  • ภาษา Hypertext - สร้างลิงก์เชื่อมเอกสารได้
  • เวอร์ชันปัจจุบัน: HTML5
  • เป็น Static (แสดงข้อมูลคงที่)
  • ยอมรับข้อผิดพลาดเล็กน้อย (Forgiving)
  • แท็กปิดไม่จำเป็นเสมอไป (บางแท็ก)

ตัวอย่าง HTML

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>HTML Example</title>
</head>
<body>
  <h1 style="text-align: center; color: #db133a;">HTML</h1>
  <h3 style="text-align: center;">ฉันคือเอกสาร HTML</h3>
</body>
</html>
HTML vs XML: ความแตกต่างและการใช้งาน
ตัวอย่างผลลัพธ์ HTML

XML (eXtensible Markup Language)

XML เป็นภาษาสำหรับ จัดเก็บและส่งข้อมูล (Data Transport/Storage) ไม่ใช่โครงสร้างหน้าเว็บ

  • เป็น Dynamic (ข้อมูลเปลี่ยนแปลงได้)
  • รายงานข้อผิดพลาดทั้งหมด (Strict)
  • ต้องมีแท็กปิดเสมอ
  • รูปแบบข้อมูลข้อความ (Textual) รองรับ Unicode สำหรับภาษามนุษย์ทุกภาษา
  • เวอร์ชันปัจจุบัน: XML 1.1

ตัวอย่าง XML

<?xml version="1.0" encoding="UTF-8"?>
<fullname>
  <firstname>John</firstname>
  <lastname>Miller</lastname>
</fullname>
HTML vs XML: ความแตกต่างและการใช้งาน
ตัวอย่างโครงสร้าง XML

ตารางเปรียบเทียบ HTML และ XML

คุณสมบัติHTMLXML
ความหมายเต็มHyperText Markup LanguageeXtensible Markup Language
วัตถุประสงค์โครงสร้างและแสดงหน้าเว็บจัดเก็บและส่งข้อมูล
ลักษณะStatic (แสดงผล)Dynamic (ข้อมูล)
ประเภทภาษาPresentation Languageไม่ใช่ Presentation Language
แท็กปิดไม่จำเป็นเสมอไปบังคับ
แท็กกำหนดไว้ล่วงหน้า (<p>, <div>, <h1> ฯลฯ)กำหนดเองได้ (Custom Tags)
Whitespaceไม่รักษา (Collapse)รักษา (Preserve)
Case SensitivityCase InsensitiveCase Sensitive
Attribute Quotesไม่บังคับบังคับ
DOCTYPEจำเป็น (HTML5: <!DOCTYPE html>)XML Declaration (<?xml ...?>)

เมื่อไหร่ควรใช้ใด?

สถานการณ์แนะนำ
สร้างเว็บไซต์/เว็บแอปHTML
แลกเปลี่ยนข้อมูลระหว่างระบบXML (หรือ JSON - ยอดนิยมกว่า)
ไฟล์ Config / SettingsXML / JSON / YAML
Sitemap / RSS FeedXML
SVG GraphicsXML-based

ความสัมพันธ์กัน

  • XHTML = HTML ที่ปฏิบัติตามกฎ XML (Strict HTML)
  • HTML5 รองรับการฝัง SVG (XML-based) และ MathML ได้โดยตรง
  • Parser ของ HTML5 ยอมรับโครงสร้างที่ไม่สมบูรณ์ ส่วน XML Parser ต้องเป็น Well-formed