الفرق بين لغة HTML و لغة XML
- نقاط الشبه بين اللغتين
- نقاط الإختلاف بين اللغتين
في البداية، أحرف HTML هي اختصار لعبارة Hyper Text Markup Language و التي تعني لغة ترميز النص التشعّبي.
أحرف XML هي اختصار لعبارة eXtensible Markup Language و التي تعني لغة الترميز القابلة للتمدّد.
نقاط الشبه بين اللغتين
قبل أن نتطرّق إلى الفروقات بين اللغتين، يجدر بنا في البداية أن نتحدّث عن نقاط التشابه بينها، وهي:
- كلتا اللغتين هي لغات ترميز أو توصيف ( Markup Languages )، و ليستا محسوبتين على لغات البرمجة ( Programming Languages ) من حيث عدم احتوائها على متغيرات أو شروط أو حلقات أو غير ذلك مما يعتمد على المنطق البرمجي.
- كلتا اللغتين تعتمد بنيتها على استخدام الوسوم ( Tags ) التي تكون عبارة عن تعليمة تُكتَب بين أقواس زاويّة ( Angle Brackets ) على النمط التالي:
<example>
نقاط الإختلاف بين اللغتين
1- الإستخدام
لغة HTML تهتم بطريقة عرض البيانات. في حين أن لغة XML تهتم بتخزين وتنظيم ونقل البيانات، ولا تبالي بطريقة عرضها.
بمعنى آخر، لغة HTML تُعنى بالكيفيّة، في حين أن XML تُعنى بالماهيّة.2- الوسوم
الوسوم الخاصة بلغة HTML معرّفة مسبقاً ( Predefined tags )، بمعنى أنّها موجودة بالفعل، ولكلّ منها مهمّة معيّنة تم تعريفها مسبقًا من قبل القائمين على اللغة، و يتفرض استخدامها للغرض الذي وُضِعَت من أجله، و لكن يظل مسموح للمطوّر استحداث وسوم جديدة و تعريفها.
بينما في لغة XML لا توجد وسوم معرّفة مسبقاً، و بإمكان المستخدم أن يستحدث الوسوم و يسمّيها و يعرّفها كما يشاء و هذا المقصود بقابليتها للتمدّد "Extensible"، مع الأخذ في الاعتبار أهمية أن تكون التسمية ذات دلالة، فهي ممارسة جيّدة ومطلوبة، و إن كانت غير إلزاميّة.
وبما أنّ لغة XML لا تحتوي على أيّة وسوم معرّفة مسبقاً كما هو الحال مع HTML، وتعتمد على المطوّر في التعريف، فإنّ وسم مثل: <head>
سيكون مفهوماً بالنسبة للمتصفّح في ملف HTML، لكن الوسم نفسه ليس له معنى عند المتصفّح لو كان في ملف XML; والسبب أنّ المتصفح يفترض أنّ كل الوسوم الموجودة في ملف XML تخضع للتعريف الذي يحدده كل مطوّر بحسب رغبته، لذلك فإنه لن يحاول تفسيرها حتى لو تشابهت مع وسوم HTML، وسيكتفي بعرض محتوى ملف XML كما هو.
الصورة أدناه هي لمحرر نصوص أنشأنا من خلاله ملف XML و كتبنا فيه بعض الأسطر حول معلومات موظف مع الإشارة إلى أن كل الوسوم الظاهرة هي من اختراعنا.
بعد حفظ الملف السابق، قمنا بفتحه بواسطة متصفّح فظهر الكود الذي كتبناه فيه كما في الصورة التالية.
نستنتج أن الكود المكتوب بلغة XML يحتاج لأدوات مناسبة حتى يتم عرضه له بطريقة ملائمة للمستخدم.
3- الأخطاء
لغة XML أكثر حزماً في التعامل مع الأخطاء من لغة HTML حيث أن وجود خطأ في الملف قد يؤدي لعدم اشتغاله.
4- حساسية الأحرف
لغة XML حسّاسة لحالة الأحرف ( Case Sensitive )، و هذا يعني أنه يجب كتابة أسماء و خصائص الوسوم فيها بمنتهى الدقة بخلاف لغة HTML التي يمكنك كتابة أسماء الوسوم فيها بأحرف كبيرة أو صغيرة بدون أي مشكلة.