لغة الترميز القابلة للامتداد (إكس إم إل) (XML The Extensible Markup Language)) هي لغة الترميز عامة لخلق لغات الترميز ذات الغرض الخاصّ، قادرة على وصف العديد من الأنواع المختلفة للبيانات.[1][2][3] بمعنى آخر، إكس إم إل هي طريقة لوصف البيانات. ملف إكس إم إل يمكن أن يحتوي البيانات أيضًا، كما في قاعدة البيانات. وهي مجموعة ثانوية مبسطة من لغة الترميز ذات المعيار المعمّم (إس جي إم إل). غرضه الرئيسي أن يسهّل اشتراك البيانات عبر الأنظمة المختلفة، خصوصا الأنظمة الموصلة عن طريق الإنترنت. اللغات المستندة على إكس إم إل (على سبيل المثال، لغة الترميز الجغرافي (جي إم إل)، آر دي إف / إكس إم إل، آر إس إس، أتوم، ماث إم إل، إكس إتش تي إم إل، إس في جي، إكس يو إل، أي أي دي، كليب وميوسيك إكسمل) معرّفة على نحو رسمي، يسمح للبرامج بتعديل وتصديق الوثائق في هذه اللغات بدون علم مسبق بشكلهم المعيّن.
لغة الترميز الموسعة تستخدم في وصف وتخزين وتنظيم البيانات بخلاف لغة الترميز النصوص التشعبية لغة ترميز النص الفائق التي تستخدم لكيفية عرض البيانات على المتصفح. وهي مشتقة من لغة لغة الترميز القياسي العام وقواعد لغة XML قريبة من لغة ترميز النص الفائق وقد اعتمدتها منظمة رابطة الشبكة العالمية كلغة الترميز قياسية وظهر الجيل المطور منها وهو XML 2.
تاريخ
تعدد استعمال إس جي إم إل لعرض المعلومات الديناميكية عرفت من قبل ناشري الإعلام الرقمي مبكرا في أواخر الثمانينات قبل نهضة الإنترنت. في منتصف التسعينات، بعض مستخدمي إس جي إم إل كسبوا تجربة بالويب العالمي الجديد آنذاك، واعتقدوا بأنّ إس جي إم إل عرض الحلول لبعض المشاكل التي كانت من المحتمل أن تواجه الويب حينما يتطور. أضاف دان كونولي إس جي إم إل إلى قائمة نشاطات دبليو 3 سي عندما إنضمّ إلى الموظّفين في 1995؛ العمل بدأ في منتصف 1996 عندما طور جون بوساك الدستور وجنّد المتعاونين. بوساك كان حسن العلاقات مع المجموعة الصغيرة من الناس التي كانت عندها تجربة في إس جي إم إل والويب. استلم دعما لجهوده من مايكروسوفت.
إكس إم إل صمّمت بمجموعة عمل عدد أعضاؤها أحد عشر، مدعومة من قبل مجموعة ذات اهتمامات خاصة عدد أعضاؤها 150. النقاش التقني الذي حدث على قائمة العناوين وقضايا المجموعة ذات الاهتمامات الخاصة حل بالإجماع وعندما فشل صوت الأغلبية لمجموعة العمل. سجل القرار جمع من قبل مايكل سبيربيرج مكويين في 4 ديسمبر/كانون الأول 1997. عمل جيمس كلارك كقائد تقني لمجموعة العمل، وساهم خصوصاً في العنصر الفارغ "&ar;empty/>" والاسم "إكس إم إل". الأسماء الأخرى التي كانت قد قدّمت للاعتبار تضمّنت "ماغما" (الهندسة المعمارية الأدنى لتطبيقات الترميز المعمّمة)، "سليم" (اللغة المنظّمة لرقْم الإنترنت) و"إم جي إم إل" (لغة الترميز الأدنى المعمّمة). المحرّرون المشاركون للمواصفات كانوا أصلا تيم براي ومايكل سبيربيرج مكويين. في منتصف المشروع قبل براي ارتباطا بالنيتسكيب، مثيراً احتجاجات صاخبة من مايكروسوفت. براي طلب ترك منصب رئيس التحرير بشكل مؤقت. هذا قاد إلى النزاع الحادّ في مجموعة العمل، وحلّت المشكلة في النهاية بتعيين جين باولي من مايكروسوفت كمحرّر مشارك ثالث.
مجموعة عمل إكس إم إل لم تجتمع وجها لوجه؛ التصميم أنجز باستعمال مجموعة من البريد الإلكتروني والمؤتمرات الهاتفية أسبوعياً. قرارات التصميم الرئيسية وصلت في عشرون أسبوع من العمل الحادّ بين يوليو/تموز ونوفمبر/تشرين الثّاني من 1996. عمل التصميم الآخر استمرّ إلى 1997، وإكس إم إل 1.0 أصبح توصية من دبليو 3 سي في فبراير/شباط 10، عام 1998.
إكس إم إل 1.0 أنجز أهداف مجموعة العمل من استخدام الإنترنت، والاستخدام العام، والتوافق مع إس جي إم إل، وتسهيل التطوير لمعالجة البرامج، وتحقيق الحدّ الأدنى من الميزّات الاختيارية، والوضوح، والإيجاز، وسهولة التأليف.
التوضيحات والتغييرات الثانوية جمّعا في الأخطاء المنشورة وبعد ذلك دمجا مع الطبعة الثانية لتوصية إكس إم إل 1.0 في أكتوبر/تشرين الأول 6، عام 2000. الأخطاء اللاحقة دمجت مع الطبعة الثالثة في فبراير/شباط 4، عام 2004.
نشرت أيضا في نفس اليوم (كإكس إم إل 1.0 الطبعة الثالثة) إكس إم إل 1.1، وهو إكس إم إل مغاير يشجّع على المزيد من الإتساق في كيفية التمثيل ويخفّف القيود على الأسماء، والحروف الجائزة. في أغسطس/آب 16 عام 2011، نشر إكس إم إل 1.0 الطبعة الرابعة وإكس إم إل 1.1 الطبعة الثانية لدمج الأخطاء المتراكمة. كلا إكس إم إل 1.0 الطبعة الرابعة وإكس إم إل 1.1 الطبعة الثانية يعتبران نسخ حالية لإكس إم إل.
خصائص
نقاط القوة
بعض ميزّات إكس إم إل التي تجعله مناسباً لنقل البيانات:
- صيغته الإنسانية والمقروءة بالماكنة بشكل آلي.
- له دعم لنظام الحروف الدولي الموحد، يسمح تقريبا لأيّ معلومات بأيّ لغة إنسانية مكتوبة بالاتصال.
- القدرة على تمثيل تراكيب بيانات علم الحاسبات الأكثر عمومية: السجلات والقوائم والأشجار.
- صيغة التوثيق الذاتية التي تصف التركيب وأسماء الحقل بالإضافة إلى القيم المعيّنة.
- النحو الصارم وإعراب المتطلبات اللذان يسمحان لخوارزميات الإعراب الضرورية بالبقاء ثابتة وكفوءة وبسيطة.
إكس إم إل يستعمل أيضا بشدّة كصيغة للتخزين ومعالجة الوثائق، المتصلة بالإنترنت وغير المتّصلة، ويعرض عدّة منافع:
- الصيغة المتينة القابلة للإثبات منطقيا مستندة على المستويات الدولية.
- إنّ التركيب المرتبي مناسب لأكثر (لكن ليس كلّ) أنواع الوثائق.
- يظهر كملفات نصّ عادي، غير مثقل بالرخص أو القيود.
- كونه مستقل، وهكذا يكون محصّناً نسبيا ضدّ التغييرات في التقنيات.
- هو وسابقه، الإس جي إم إل، كانا قيد الاستعمال منذ 1986، لذا هناك خبرة شاملة وبرامج متوفرة.
تصميم
ملفات ال XML هي ملفات عادية جدا يستطيع المستخدم قرائتها وتحليلها من دون أي مشاكل، ويمكنه استخدام جميع الدلالات المعرفة حسب unicode.
- وسم
يستخدم القوس المنزوي لتغطية الوسم <>
<player> مثال لوسم ابتدائي.
</player> مثال لوسم اغلاقي.
- عنصر (Element)
الحروف التي بين الوسم الابتدائي والانهائي هو محتوى العنصر.
مثال: <player> Abu Trekah </player>
- تعريف ملف الاكس ام ال XML file deceleration
هذا السطر ستجده في بداية كل ملف اس ام ال للتعريف على أن هذا الملف هو ملف اكس ام ال ومن دونه يصبح الملف غير جيد التشكيل.
<?xml version="1.0" encoding='ISO-8859-1'?>
- مثال على ملف اكس ام ال يحقق شرط (جيد التشكيل أو الهيئة)
<xml version="1.0" encoding='ISO-8859-1'?> <syntaxhighlight lang="xml"> <painting> <img src="madonna.jpg" alt='Foligno Madonna, by Raphael'/> <caption>This is Raphael's "Foligno" Madonna, painted in <date>1511</date>-<date>1512</date>.</caption> </painting> </syntaxhighlight>
الفروق بين (XML) وال (HTML)
XML | HTML |
---|---|
صممت للتركيز على البيانات. | صممت للتركيز على كيفية ظهور البيانات للمستخدم. |
المستخدم هو من يقوم بتعريف الوسم. | اللغة هي من تعرّف الوسم. |
تمكن المستخدم من إنشاء ملف البيانات بالتركيبه التي يرغبها. | تركيبة الملف معرف من قبل اللغة نفسها. |
صممت لوصف البيانات. | صممت لاظهار البيانات. |
اغلاق الوسم مطلوب بعد فتح أي عنصر حتى يكون الملف جيد الترتيب. | اغلاق الوسم ليس شرطا. |
مطور ملف البيانات ليس مقيدا بأي حد. | المطور مقيد باستخدام الوسوم المعرفة من قبل اللغة. |
لغة لوصف المضمون. | لغة لوصف الشكل. |
نقاط الضعف
لبعض تطبيقات، إكس إم إل نقاط الضعف التالية أيضا:
- التركيب مضجر وعاطل. هذا يمكن أن يؤذي مقروئية الإنسان وكفاءة التطبيق، ويسبب كلفة تخزين أعلى. يمكن أن يجعل إكس إم إل صعباً أيضا للانطباق في بعض الحالات حينما تكون الموجة محدّدة، مع أن الضغط يمكن أن يخفّض المشكلة في بعض الحالات. هذا صحيح بشكل خاص للتطبيقات المتعددة الأوساط التي تجري على الهواتف الخلوية والبي دي أي التي تريد استعمال إكس إم إل لوصف الصور والفيديو.
- يعتبر البعض أن النحو أو التركيب يحتوي على عدد من الميزّات الغامضة وغير الضرورية المولودة من تراث التوافق مع إس جي إم إل.
- متطلبات الإعراب الأساسية لا تدعم المجموعات المرتبة الواسعة من أنواع البيانات لذا فإن التفسير يتضمّن عمل إضافي أحيانا لكي يعالج البيانات المطلوبة من الوثيقة. ليس هناك بند في إكس إم إل، على سبيل المثال، للتخويل بأنّ "3.14159" عدد عائم النقاط بدلا من سلسلة من سبعة حروف.
- يستعمل النموذج المرتبي للتمثيل، والذي هو محدد مقارنة مع النموذج العلائقي، لأنه يعطي فقط وجهة نظر ثابتة للمعلومات الفعلية.
- تخطيط إكس إم إل إلى الأمثلة العلائقية أو أمثلة الأجسام الموجهة متعب في أغلب الأحيان.
- جادل البعض بأنّ إكس إم إل يمكن أن يستعمل لخزن البيانات فقط إذا كان الملف من الحجم المنخفض لكن هذه في واقع الأمر معطيات فرضيات حقيقية معيّنة حول الهندسة المعمارية، والبيانات، والتطبيق، وقضايا أخرى.
- سلسلة ضربات المفاتيح لطباعة تعابير إكس إم إل على لوحة مفاتيح قياسية حاسوبية صعبة جدا.
امتدادات XML
- إكس باث يجعل من الممكن الإشارة إلى الأجزاء الفردية لوثيقة إكس إم إل. هذا يزوّد الوصول العشوائي إلى بيانات إكس إم إل للتقنيات الأخرى، بضمن ذلك إكس إس إل تي، إكس إس إل فو، إكس كويري، وغير ذلك. تعابير إكس باث يمكن أن تشير إلى كلّ أو جزء من النصّ والبيانات والقيم في عناصر إكس إم إل، وخواصه، ومعالجة أوامره، وتعليقاته، وغير ذلك. يمكن أن يدخلوا أسماء العناصر أيضا والخواص. إكس باث يمكن أن يستعمل في كل من إكس إم إل الصحيح وذي الشكل الجيد.
- إكس كويري وهو حاليا فقط لقراءة البيانات.
- يمكّن إكس إم إل Namespaces نفس الوثيقة لاحتواء عناصر وخواص الإكس إم إل المأخوذة من المفردات المختلفة، بدون حدوث أيّ اصطدام للتسمية.
- يعرّف توقيع إكس إم إل قواعد التركيب والمعالجة لخلق التواقيع الرقمية على محتوى إكس إم إل.
- يعرّف تشفير إكس إم إل قواعد التركيب والمعالجة لتشفير محتوى إكس إم إل.
- إكس بوينتر هو نظام لعنونة مكوّنات أجهزة إعلام الإنترنت المستندة على إكس إم إل.
إصدارات XML
هناك نسختان حاليتان لإكس إم إل. الأولى، إكس إم إل 1.0، التي عرّفت أوليا في 1998. مرّت بالتنقيحات البسيطة منذ ذلك الحين، بدون أن تعطي عدد لنسخة جديدة، وهي حاليا في طبعتها الرابعة، التي نشرت في أغسطس/آب 16، عام 2006. وهي تطبّق على نحو واسع وما زالت موصّى بها للاستعمال العامّ. الثانية، إكس إم إل 1.1، نشرت أوليا في فبراير/شباط 4، عام 2004، في نفس يوم إكس إم إل 1.0 الطبعة الثالثة، وهي حالياً في طبعتها الثانية، التي نشرت في أغسطس/آب 16، عام 2006. وتحتوي الميزّات التي تنوي جعل إكس إم أسهل للاستعمال لبعض أصناف المستعملين (مبرمجو الحاسبات الكبرى بشكل رئيسي). إكس إم إل 1.1 لم يطبّق بشكل واسع وهو موصّى به للاستعمال فقط بواسطة أولئك الذين يحتاجون ميزّاته الفريدة.
إكس إم إل 1.0 وإكس إم إل 1.1 يختلفان في متطلبات الحروف المستعملة لأسماء العناصر والخواص: يسمح إكس إم إل 1.0 فقط للأحرف المعرّفين في نظام الحروف الدولي الموحد 2.0، الذين يتضمّنون أكثر المخطوطات العالمية، ولكن باستثناء تلك التي أضيفت في نسخ أنظمة الحروف الدولية الموحدة التالية. بين المخطوطات المستثناة المنغولية، والكمبودية، والأمهرية، والبورمية، وغيرهم.
يمكن لأيّ حرف من نظام الحروف الدولي الموحد تقريباً أن يستعمل في بيانات حروف وقيم خواص وثائق إكس إم إل 1.1، حتى لو كان الحرف غير معرّف، في النسخة الحالية لنظام الحروف الدولي الموحد. في بيانات الحروف وقيم الخواص، يسمح إكس إم إل 1.1 لاستعمال حروف السيطرة أكثر من إكس إم إل 1.0، لكن أغلب حروف السيطرة المقدّمة في إكس إم إل 1.1 يجب أن تبدي كمراجع حرفية عددية.
مراجع
- "معلومات عن لغة الترميز القابلة للامتداد على موقع vocab.getty.edu". vocab.getty.edu. مؤرشف من الأصل في 6 أبريل 2020.
- "معلومات عن لغة الترميز القابلة للامتداد على موقع catalogue.bnf.fr". catalogue.bnf.fr. مؤرشف من الأصل في 21 يونيو 2019.
- "معلومات عن لغة الترميز القابلة للامتداد على موقع fileformats.archiveteam.org". fileformats.archiveteam.org. مؤرشف من الأصل في 14 مارس 2019.
وصلات خارجية
- W3C XML homepage
- XML 1.0 Specification
- Retrospective on Extended Reference Concrete Syntax by Rick Jelliffe
- XML, Java and the Future of the Web (1997) by Jon Bosak
- http://validator.w3.org/ The Official [W3C] Markup Validation Service
- The XML FAQ originally for the W3C's XML SIG by Peter Flynn
- XML Formatter W3C's XML Formatter