هي اختصار لـ eXtensible Markup Language
وهي تعني لغة الترميز الموسعه
لماذا تستخدم؟
تستخدم في وصف وتخزين وتنظيم البيانات.
عناصر لغة XML :
تتكون وثائق XML من عدة عناصر منفصلة ، يمكن إنشاء أو تعديل كا منها على حدة وهو أحد عناصر القوة في هذه اللغة من حيث القدرة
على معالجة أنماط مختلفة من الوثائق . كما أن وثائق XML تتميز بجزئيتها modularity مما يجعلها عالية الانتشار distributed بحيث يمكن وضع عناصر الوثيقة الواحدة على نظم متعددة للرجوع إليها لاحقاً ، مع الاحتفاظ بالتسلسل المنطقي في الوثيقة الواحدة . والأجزاء الرئيسية في وثيقة XML هي ما يُدعى بإعلان SGML أو SGML deceleration وهذا الجزء ثابت يمكن لكافة أدوات XML فهمه والتعامل معه ؛ ثم هناك القسم الخاص بتعريف أنواع البيانات DTD ، وهو حجر الأساس لكافة وثائق XML والذي يتم فيه تعريف كافة العلامات المستخدمة في الوثيقة لتفهمها المستعرضات أو متصفحات الإنترنت ؛ ثم هناك القسم الخاص بتعريف محتوى الوثيقة أو Document instance والذي يتم فيه وصف هذا المحتوى من خلال تعليمه .
وفي لغة XML تلعب هيكلية الوثيقة دوراً هاماً حيث أن جميع أجزاء الوثيقة موصوفة وتتعامل معها الأدوات المختلفة حسب موقعها ضمن هيكلية معينة. ويقوم معيار XML بتحديد علامات عامة markup declaration تصف هيكلية الوثيقة ، وعلامات تقوم بوضع هيكلية لمحتوى الوثيقة . ويتم استخدام العلامات العامة لوصف الأقسام المختلفة في الوثيقة .
مزاياها:
1- يمكن للغة XML العمل على إي نظام تشغيل فهيا ليست مخصصه للعمل عن نظام
2- تقليص زمن التحميل على خادمات الشبكة Web Server بالإضافة إلى عمليات إرسال واستقبال كميات ضخمة من المعلومات بين جهاز الزبون والخادم .
3- إمكانية تحويل ملفاتXML إلى ملفات html بسهوله لعرضها بشكل جميل على المتصفح وذلك بواسطة محولات XSLT.
4-استدعاء الإجراءات البعيدة . فهيا تستخدم بروتوكول RPC لذلك فهو يسمح للكائنات الموجودة على جهاز ما باستدعاء الكائنات الموجودة على جهاز أخر للقيام بعمل ما .
مستقبل XML
باستخدام هذه اللغة تصبح البيانات كونية ومنفصلة عن البرنامج الذي يستخدمها . ( أي أنه يمكنك مثلاً إنشاء جدول حسابي في إكسل وحفظه بنسق XML ليتمكن أي برنامج جداول حسابية آخر يدعم اللغة من قراءته ) .
ويمكنني عند استخدام هذه اللغة أن أقوم بإنشاء البيانات وإرسالها من جهازي إلى جهازك واستخدامها دون أن يكون لدينا بالضرورة التطبيق نفسه الذي قام بإنشائها . وهذا هو ما يحتاجه المستخدمون في عصر الويب.
لغة XML بالنسبة للبيانات هي مثل جافا بالنسبة للبرمجيات ، ففي حالة برمجيات جافا يمكنك تشغيل التطبيق على أي جهاز ما دام يمتلك آلة جافا الافتراضية ، وفي حالة XML يمكنك قراءة أي نسق بيانات طالما كنت تمتلك وثيقة تعريف النص الخاصة به ."
وأن أحد أكبر أسباب انتشار مقياس XML بهذه السرعة كان انخراط مايكروسوفت بجدية في دعم هذا المعيار العالمي .
وقد قامت مايكروسوفت خلال الشهور الأربعة الماضية بدفع معيار XML بقوة . ولتحقيق أغراضها قامت الشركة مثلاً في مؤتمر إيد تيك EdTech ، والذي أقامته في أمستردام خلال شهر حزيران الماضي ، بالإعلان عن مبادرة بيز توك BizTalk والذي سيكون هيكلية تطوير قياسية للغة XML . وإننا لنعلم أن مثل هذه الهيكلية بالغة الأهمية بالنسبة للغة عالية المرونة وقابلة للتعديل مثل XML . فمثلاً إذا كنت تطور نظاماً للفواتير باستخدام هذه اللغة فإنك ربما ستقوم بتطوير نظام للفواتير يختلف تماماً عن نظام للفواتير يضعه مبرمج آخر باستخدام هذه اللغة . أو إذا كنت تقوم بتطوير برنامج للرسوم البيانية فإنك ستستخدم تعريفات مختلفة عن تلك التي سيستخدمها مبرمج آخر . ومن خلال بيز توك تسعى مايكروسوفت إلة منح المطورين نقطة مركزية واحدة يقدمون إليها تعريفاتهم ولغاتهم الفرعية التي يبتكرونها كما أن مايكروسوفت ستقدم إليهم من خلال موقع http:/www.biztalk.org نقطة مركزية يمكنهم من خلالها أن يحصلوا مجاناً على الأدوات والمعلومات التي يحتاجونها للتطوير .
العلاقة بين XSL وXSLT :
تستخدم لغة XSL في استعراض المستندات وذلك في الحالات المعقدة وهى تتضمن تحويلات خاصة تسمى هذه التحويلات XSLT والتي تستخدم لتحويل مستندات XML إلى أنواع مستندات أخرى .
الفرق بينXML و HTML ?
XML:
*تستخدم في وصف وتخزين وتنظيم البيانات
*مثال لتمثيل البيانات النصية:
HTML:
*تستخدم لكيفية عرض البيانات على المتصفح
*مثال لتمثيل البيانات النصية:
وباختصار فإن لغة XML هي طريقة لوصف البيانات وهيكلتها على الإنترنت بحيث يمكن لبرامج مثل قواعد البيانات الاستفادة من هذه البيانات والبحث فيها والحصول منها على المعلومات . فمثلاً إذا كنت تقوم حالياً بنشر كتالوغ على الإنترنت لمنتجات تقوم ببيعها وكنت تستخدم لغة HTML فإن عليك أن تضع هذه المعلومات على شكل صفحات تحتاج لتغييرها يدوياً في كل مرة تريد تحديث الصفحة. . أما عند استخدام لغة XML فكل ما عليك عمله هو وضع وثيقة DTD تحتوي على علامات تصف الأصناف التي يحتويها متجرك مثلاً (إذا كنت تبيع الكتب ) كتب الفلسفة وكتب التاريخ وكتب الاقتصاد . ثم تقوم بكتابة الصفحة مستخدماً علامات تصف المواد الموجودة ضمن الكتالوغ مثل <philosophy> ابن رشد </philosophy> ، و <history> الحرب العالمية </history> وما إلى ذلك . وبالطبع فإن وثيقة DTD ستحتوي على تعريف للعلامات المستخدمة . وعندئذ تضع صفحاتك على الإنترنت . وعندما يريد المستخدم أن يبحث عن كتب الفلسفة مثلاً فإنه سيتمكن بفضل استخدام نظام العلامات الخاص الذي تستخدمه من العثور على كتب الفلسفة تحديداً لأنك وصفتها بهذا الشكل .