لغة التأشير Markup Language هي مجموعة من اصطلاحات تُستخدم معاً لترميز وثيقة معينة. يجب على لغة التأشير أن تحدّد التأشير المتاح وكيفية تمييزه من محتوى الوثيقة ومعناها الصريح.

لمحة تاريخية

اهتمّ الناس منذ ستينات القرن العشرين بفكرة الوثيقة الموَحدة ، لتسهيل عملية التعامل مع المعلومات وتبادلها. وقد بدأت شركة IBM بهذه الخطوة حين ابتكرتGeneralized) GML (Markup Language بهدف توجيه احتياجات نظام النشر لديها، واستُخدمت GML لإخراج الكتب والتقارير ووثائق أخرى من مجموعة مصادر واحدة. وهذا بالطبع لا ينفي وجود حلول أخرى، في الوقت نفسه، لبناء الوثائق ولكنها لم تنتشر على نطاق واسع.
تُعدُّ لغة SGML (Structured Generalized Markup Language) أولى تقانات بناء المعلومات نموذجياً وهي أيضاً من إنتاج شركة IBM، ووُضعت بهدف الحصول على طرق للتنسيق والاحتفاظ بوثائق قانونيّة ضمن الشركة. جرى بعد ذلك توسيع استعمالها واعتُمدت على نطاق واسع، وصارت في عام  1986 لغة قياسيّة ISO. تُشكّل SGML لغة قويّة جداً ولكنها تحتاج إلى الكثير من الأنظمة البرمجيّة لمعالجتها، وهذا ما منع من اعتمادها لتمثيل النصوص الفائقة (Hypertext) في بدايات الوب (WWW).
قام باحثان في المركز الأوربي للأبحاث الفيزيائيّة النووية CERN في عام 1989، بابتكار لغة مبنيّة على مفهوم «العُلاّمات» (Tags) لإعداد وثائق ستنشر على الوب. جرى في البدء توسيع هذه اللغة إلى تطبيق بسيط من SGML يُسمّى HTML (Hypertext Markup Language) والذي صار بعد ذلك الشكل النموذجي للمعلومات على الوب. لاقت HTML نجاحاً باهراً بالرغم من أنّها كانت في البدء مُصمَمة كطريقة لتمثيل المعلومات بهدف الإظهار فقط، وعمل إدخال النماذج على تغييرها وانتقلت بذلك من مجرّد وسيلة لعرض المعلومات إلى وسيلة للتفاعل مع المعلومة، وصارت تُستعمل كواجهة لأنظمة قواعد البيانات.
شرع الائتلاف العالمي للويب (World Wide Web Consortium) W3C عام 1996 في إيجاد طريقة تسمح بإدخال قوة ومرونة SGML إلى مجال الوب. وذلك لكون SGML تتمتّع بثلاث خصائص تفتقد لها HTML وهي: التوسّع والبنية والتحقق. في الواقع تمتلك HTML بنيةً ليس بمقدور أغلب المتصفّحات التحقق منها، بينما تكون  الأنظمة البرمجيّة الخاصّة بـ SGML أكثر صرامة عند مخالفة البنية المسموح بها.
تبنّت W3C فريق عمل من خبراء SGML يتلخّص هدفه بوضع تقنيّة جديدة للتأشير تجمع بين جوهر SGML وبساطة HTML، وقد توصّلوا لوضع تحديدات XML 1.0 في شهر شباط عام 1998.

التأشير

يُعبِّر التأشير عن كل ما يكوّن الوثيقة باستثناء محتواها، ففي الأساس يدلّ التأشير على مجموعة الملاحظات اليدوية التي يُحدّد المصمّم  فيها مواصفات خاصّة بالنصِّ الطباعي، وتتضمن هذه الملاحظات تعليمات توضّح كيفية إخراج النسخة الطباعيّة، ويُسمى هذا النوع من التأشيرات بالتأشير الإجرائي (Procedural Markup). يستخدم التأشير الإجرائي في معظم أنظمة النشر الإلكتروني مثل محررات النصوص وبرامج النشر المكتبيّة. تتخصّص هذه التأشيرات بحزمٍ برمجيّة معيّنة مثل Microsoft Word وQuark Xpress، ويكون لكلٍّ من هذه الحزم مجموعة خاصّة من رموز التأشير تهتمّ بإخراج نصّ الوثيقة وتسمح بتمثيلها بطريقة وحيدة، ومثال ذلك الإخراج الطباعي للصفحات. من جهةٍ أخرى، لا تزوّدنا التأشيرات الإجرائيّة بأيّ وسيلة لتعريف مظاهر المكوّنات الحاسوبيّة الأخرى مثل الأقراص المدمجة CD وشبكة الإنترنت. ولذلك ظهر نوعٌ آخر من التأشير هو التأشير الوصفيّ Descriptive Markup الذي يُعرف أيضاً بالتأشير المولّد Generic Markup ويهتم بوصف الهدف من محتوى الوثيقة أكثر من اهتمامه بشكل إخراج الوثيقة، ويتميّز بالفصل بين بنية الوثيقة ومحتواها. يقوم التأشير الوصفي أساساً على تعريف بنية الوثيقة وتحديد العناصر فيها مثل: الفصول والمقاطع والفهارس وغير ذلك معتمداً على استخدام رموزٍ تُحدّد ماهيّة العنصر وليس كيفيّة إظهاره. يسمح هذا الفصل بين شكل إظهار المعلومات وبنيتها بتمثيلٍ متعدد الأشكال للمعلومة الواحدة، إذ يغدو بالإمكان نشر المعلومة مطبوعةً على الورق، أو محمولةً على أقراص مدمجة، أو متداولةً عبر شبكة الإنترنت انطلاقاً من الملفّ الأصل.
يُفضّل منتجو التوثيق التقني التأشير الوصفي على التأشير الإجرائي وذلك لأنّ هذا الأخير، على بساطته، باهظ الكلفة. من جهةٍ أخرى، يمكن أن يقضي محرّر الوثيقة  15٪ إلى 50٪ من الوقت اللازم لإعداد وثيقته في تحديد مظهر إخراج الوثيقة، إضافةً لذلك، فإنّ التفكير بأي تغيير في عناصر النموذج Style Guidelines المستعمل، أو حتّى ظهور الحاجة إلى تغيير مظهر المعلومات، يتطلّب إعادة نمذجة الوثيقة. كما إنّ تغيير البرامج والتجهيزات في مؤسسة ما يتطلّب الكثير من العمل لتحويل المعطيات لتتناسب مع الوضع الجديد إضافةً إلى احتمال الوقوع في أخطاء. تجري عملية تبادل الوثائق التي تقوم على التأشير الإجرائي بسهولةٍ في الحالة التي تتوافق فيها الأنظمة للأطراف التي تقوم بالتبادل.

أهم لغات التأشير

ـ SGML: تمثّل لغة SGML نظاماً عالمياً جرى نشره عام 1986. تعرّف SGML نموذجاً نظامياً لإدخال التأشير الوصفي ضمن الوثيقة وتحدِّد طريقة قياسيّة لتوصيف بنية الوثيقة. بتعبير آخر، يمكن القول إنّ لغة SGML تسمح بوضع نموذج هرمي Hierarchical Model لكلّ نوعٍ من أنواع الوثائق وتجبر كلّ عنصر في هذه البنية، جرى تعريفه باستعمال التأشير الوصفي مثل الفصول أو الفقرات، على التوضّع في البنية المنطقيّة Logic Structure المحددة للوثيقة. يكون مفهوم الوثيقة الممثلة بلغة SGML واسع النطاق ويغطّي نماذجَ مختلفة من المعلومات الإلكترونيّة وثائق متعددة الوسائط Multimedia Documents، ونصوصاً فائقة Hypertext، وجداول قواعد بيانات Database Tables وغير ذلك. تسمح لغة SGML بإعداد وثائق مستقلة عن أيّ تحديد للبرامج أو التجهيزات المستخدمة، ومنذ أن صارت الوثائق المحررة بهذه اللغة قياسيّة أصبحت هذه اللغة لغةً محمولة (Portable)، وصار بالإمكان تبادل الوثائق بين المستخدمين على نحوٍ مستقلٍ عن الأنظمة الحاسوبيّة التي يستعملونها.
ـ HTML: لغة تأشير النصوص الفائقة. هي اللغة المستخدمة في ترميز طريقة عرض صفحات الوب والوصلات الفائقة (Hyperlinks) فيما بينها والمميزات الأخرى. تستخدم اللغة العُلاّمات القياسية مثل (H1) و(BODY) والتي عُرّف معناها وتفسيرها عالمياً من قبل الائتلاف العالمي للوب W3C)).
ـ XML لغة التأشير القابلة للتوسيع (eXtensible Markup Language). هي لغة تأشير تشبه لغة HTML وتسمح للمستخدمين بتعريف واستخدام العُلاّمات الخاصة بهم. ليس لدى XML أي آلية مبنية ضمناً لتفويض المعنى الذي يحدّده مستخدم جديد لعُلاّمة إلى المستخدمين الآخرين.
وهناك أنواع كثيرة أخرى من لغات التأشير الأقل انتشاراً نذكر منها على سبيل المثال لا الحصر:
ـ SMIL: لغة مكاملة الوسائط المتعدّدة المتزامنة (Synchronized Multimedia Integration Language) التي ظهرت في عام 1997 تسهّل تعريف ومزامنة عناصر الوسائط المتعدّدة (مثل الفيديو والصوت) في الوثيقة.
ـ XHTML: لغة HTML القابلة للتوسيع (eXtensible HTML) التي تعيد تعريف HTML باستخدام تحديدات وقواعد XML.
ـ WML: لغة التأشير اللاسلكية (Wireless Markup Language) هي تطبيق من لغة XML تسمح بتأشير صفحات الوب بهدف عرضها على أجهزة الواب WAP (Wireless Application Protocol) مثل هواتف الخلوي.
ـ HRMML: لغة تأشير لإدارة الموارد البشرية (Human Resources Management Markup Language).
ـ VML: لغة تأشير الرسوم الاتجاهية (Vector Markup Language).
ـ MathMl: لغة تأشير التعابير الحسابية (Mathematical Markup Language).
ـ VoiceXML: لغة تأشير الكلام (Voice  eXtensible Markup Language).
 
عمار خير بك

المراجع

الموسوعة العربية

التصانيف

الأبحاث