XSL

في مجال الحوسبة ، يُستخدم مصطلح لغة أنماط التنسيق القابلة للتوسيع ( XSL ) للإشارة إلى مجموعة من اللغات المستخدمة لتحويل وعرض مستندات XML (على سبيل المثال، يتم استخدام XSL لتحديد كيفية عرض مستند XML كصفحة ويب [ 1 ] ).

تاريخياً، أنتجت مجموعة عمل XSL التابعة لـ W3C مسودة مواصفات تحت اسم "XSL"، والتي انقسمت في النهاية إلى ثلاثة أجزاء:

  1. تحويل XSL ( XSLT ): لغة XML لتحويل مستندات XML
  2. كائنات تنسيق XSL ( XSL-FO ): لغة XML لتحديد التنسيق المرئي لمستند XML
  3. لغة مسار XML ( XPath ): لغة غير XML تستخدمها XSLT، وهي متاحة أيضًا للاستخدام في سياقات غير XSLT، لمعالجة أجزاء مستند XML.

ونتيجة لذلك، يُستخدم مصطلح "XSL" الآن بعدد من المعاني المختلفة:

  • يشير أحيانًا إلى XSLT : من الأفضل تجنب هذا الاستخدام. ومع ذلك، يُستخدم "xsl" كبادئة اسم تقليدية لمساحة اسم XSLT، وكلاحقة اسم ملف تقليدية للملفات التي تحتوي على وحدات أنماط XSLT.
  • أحيانًا يُشير إلى XSL-FO : يُمكن تبرير هذا الاستخدام بحقيقة أن مواصفات XSL-FO تحمل عنوان لغة أنماط قابلة للتوسيع (XSL) ؛ ومع ذلك، فإن مصطلح XSL-FO أقل عرضة لسوء الفهم
  • يشير المصطلح أحيانًا إلى اللغتين معًا، أو إلى فريق العمل الذي طور اللغتين.
  • في بعض الأحيان، وخاصة في عالم مايكروسوفت، يشير هذا المصطلح إلى نسخة قديمة من لغة XSLT طورتها مايكروسوفت ونشرتها كجزء من MSXML قبل وضع المواصفات النهائية لـ W3C.

تاريخ

بدأت XSL كمحاولة لجلب وظائف DSSSL ، وخاصة في مجال الطباعة والتنضيد الراقي ، إلى XML.

استجابةً لمقترحٍ من Arbortext وInso وMicrosoft، [ 2 ] بدأ فريق عمل W3C المعني بلغة XSL عمله في ديسمبر 1997، برئاسة مشتركة من شارون أدلر وستيف زيلز ، وبمشاركة جيمس كلارك كمحرر (ومصمم رئيسي غير رسمي)، وكريس ليلي كجهة اتصال من موظفي W3C. أصدر الفريق أول مسودة عمل عامة في 18 أغسطس 1998. أصبحت XSLT وXPath من توصيات W3C في 16 نوفمبر 1999، وحصلت XSL-FO على توصية في 15 أكتوبر 2001. [ 3 ]

عائلة XSL

تحويلات XSL

نُشرت النسخة الأصلية من XSLT (1.0) في نوفمبر 1999، وشاع استخدامها على نطاق واسع. وقد تراجع استخدام بعض التطبيقات المبكرة، إلا أن من أبرز التطبيقات التي لا تزال تُستخدم بنشاط في عام 2023 تلك المدمجة في متصفحات الويب الرئيسية ، بالإضافة إلى RaptorXML من Altova ، و libxslt ، و Saxon ، وتطبيق System.Xml.Xsl الخاص بـ Microsoft .NET ، و Xalan المدمج في Oracle JVM . تتميز جميع هذه المنتجات بمستوى عالٍ من التوافق مع المواصفات، مع أنها توفر أيضًا إضافات خاصة بالموردين، وبعضها لا يدعم ميزات اختيارية مثل تعطيل الهروب من الإخراج.

تتضمن الإصدارات اللاحقة من XSLT الإصدار XSLT 2.0 (يناير 2007) والإصدار XSLT 3.0 (يونيو 2017)؛ ويجري العمل حاليًا على الإصدار 4.0. لم يتم تطبيق هذه الإصدارات على نطاق واسع مثل الإصدار 1.0: التطبيقات الرئيسية المستخدمة على نطاق واسع في عام 2023 هي Saxon (المتوفرة في إصدارات مختلفة لمنصات مختلفة، بما في ذلك متصفحات الويب)، و RaptorXML من Altova .

كائنات تنسيق XSL

يتوفر دعم كائنات تنسيق XSL في عدد من المنتجات:

  • تدعم حزمة XEP من RenderX ما يقارب 100% من XSL - FO 1.0
  • كما أن برنامج XSLFormatter من شركة Antenna House يدعم بنسبة تقارب 100% مواصفات XSL-FO 1.0، ويدعم بنسبة 100% جميع الميزات الجديدة ضمن مواصفات XSL-FO 1.1.
  • يدعم برنامج XINC من شركة Lunasil مواصفات XSL-FO 1.0 بشكل كبير.
  • يمكن لـ FOP من مشروع Apache تحويل جزء من مواصفات كائنات تنسيق XSL 1.0 إلى PDF
  • يدعم خادم محرك تنسيق XML2PDF من AltSoft ما يقرب من 100% من XSL-FO 1.1

تدعم هذه المنتجات الإخراج في عدد من تنسيقات الملفات ، بدرجات متفاوتة:

XPath

لغة مسار XML ( XPath )، وهي جزء من عائلة XSL، تعمل داخل XSLT كوسيلة للتنقل في مستند XML.

يهدف مشروع آخر تابع لـ W3C ، وهو XQuery ، إلى توفير إمكانيات مماثلة للاستعلام عن مستندات XML باستخدام XPath .

مراجع

  1. "XML و XSLT" . W3schools . تم الاطلاع عليه بتاريخ 2025-01-08 .
  2. "مايكروسوفت، أربور تكست، وإنسو يقدمون اقتراح XSL إلى W3C" . 11 سبتمبر 1997.
  3. "الجدول الزمني لمعايير W3C الخاصة بـ XML والويب الدلالي" (ملف PDF) . 2012. مؤرشف من الأصل (ملف PDF) بتاريخ 12 مارس 2012. تم الاطلاع عليه بتاريخ 8 أبريل 2021 .
  • "تعريف لغة XSL" .
  • "لغة أنماط التنسيق القابلة للتوسيع" . مؤرشفة من الأصل بتاريخ 12 يوليو 2008. تم الاطلاع عليها بتاريخ 28 نوفمبر 2003 .
  • هولمان، جي. كين (20 مارس 2002). "ما هو XSL-FO؟" . XML.com . شركة أورايلي ميديا . تم الاطلاع عليه بتاريخ 1 سبتمبر 2008 .