لغة XML ليست لغة برمجيَّة!
إنَّها تنتمي لعائلة لغات الترميز “Markup Languages” الَّتي تنتمي إليها أيضًا لغة HTML المعروفة.
هذه العائلة تنحدر عن اللغة الأمّ المسمَّى بـ SGML والَّتي ظهرت لأوّل مرَّةٍ في عام 1960 أي قبل ظهور الويب بكثير “30 عامًا تقريبًا”، لتساعد على ترميز وتنسيق المستندات والرسائل الإلكترونيَّة المتبادلة عبر الإنترنت.
وتتميَّز عائلة لغات الترميز بوسومها ذات الأقواس المثلثَّة <>، وبهيكليتها الشبيهة بالشجرة TreeLike Structure، بالإضافة إلى أنَّها لا تحتوي على أوامر أو عمليَّات، ووظيفتها تنحصر على ترميز النصوص برموزٍ معيَّنة تفهمها جميع المتصفحات.
التعريف والوظائف:
- XML هي اختصار لـ: eXtendable Markup Language أي: لغة الترميز القابلة للتوسّع .
- XML صُمّمت لنقل وتخزين البيانات.
- من المهمّ أن نفهم لغة XML ومن السهل أن نتعلمها!
.
.نعرف بأنَّ HTML هي لغة توصيف تُستخدم لعرض البيانات على صفحات الويب، البعض يعتقد بأنَّ لغة XML تعمل لذات الهدف، لا بالتأكيد.. XML تختلف تمامًا تمامًا عن الـ HTML، يمكن أن نقول بأنَّ ما يجمع بينهما فقط هو انحدارهما من نفس العائلة!
أنتَ تعرف بأنَّ هناك عددٌ محدود من الوسوم في لغة HTML، وأنَّ المتصفحات تترجم هذه الرموز تلقائيًا بغرض تنسيق عرض البيانات في صفحات الويب.
في لغة XML.. ليس هناك وسومٌ محددة!!.. أنتَ –كمطور ويب– تصنع وسومك بنفسك، لك مطلق الحرّيّة في كتابة الوسوم التي ترغب بها، ولذلك يصبح لدينا عدد لا نهائي من الوسوم التي يمكنك كتابتها عبر لغة XML!
ماذا سوف أستفيد من ذلك؟
ببساطة شديدة، سوف تقوم بوصف بياناتك بالطريقة التي تعجبك!!
وكيف سيستفيد المتصفح من هذا الوصف؟
هنا يأتي الفرق الجوهري بين HTML و XML، أنا أستطيع الاستفادة من لغة HTML بحدّ ذاتها والمتصفح لديه “قاموس” بكافة وسومها، لكن لغة XML تصبح عديمة الفائدة إذا لم أستخدم معها لغات وتقنيات تخبر المتصفح بكيفية التعامل مع الوسوم التي قمتُ بكتابتِها!
هذه هي الفكرة النظريّة للـ XML، تعبّر عنها دكتورتي في الجامعة بقولها: إنه مبدأ أن أمنح الجميع فرصة كتابة لغتهم الخاصّة بأنفسهم!
ما هي وظائف XML عمليًا؟
يمكننا تصنيف وظائف XML إلى 3 تصنيفات:
1- الاستفادة من لغة XML ضمن موقع واحد:
وهذه الاستفادة تكون على وجهين غالبًا/
- استخدام ملفات الـ XML كقاعدة بيانات:
إمّا عن طريق استخدام مستندات XML لتخزين البيانات ، أو تحويل مجموعة من المستندات إلى قواعد بيانات عن طريق استخدام إحدى التطبيقات ، وكلتاهما يمكن ان تكوّن قواعد بيانات علائقيّة .
” أشكر الأخ محمّد سفيان شراب على توضيح هذه النقطة وتصحيحها “
- تحويل ملفات XML إلى ملفات أخرى مثل CSS أو Text Files.. وغيرها.
2– الاستفادة من لغة XML عند تبادل البيانات بين موقعين فأكثر:
هل ستصدقني إذا أخبرتُك بأنّ إحدى أسس ظهور مصطلح الويب2.0 هي لغة XML؟
نسمع كثيرًا ونلمس بأنفسنا التعاون الهائل في مشاركة البيانات بين مواقع الويب 2.0، يمكننا نشر روابطنا المفضلة في Delicious على صفحاتنا في Facebook و Twitter وغيرهما من المواقع الاجتماعية بكلّ سهولة.
مستخدمي موقع Goodreads أيضًا يعرضون آخر تحديثاتهم على Twitter وFacebook، ويكفينا كمثال واضح لمشاركة البيانات بين المواقع موقع FriendFeed الّذي يقوم بجمع خلاصات أغلب الشبكات الاجتماعية ويعرضها!
إنّ ذلك كلّه يتمّ عبر لغة XML إمّا عن طريق ملفات RSS أو ملفات XML أخرى .