XSLT
| نموذج | تصريحي |
|---|---|
| المطور | اتحاد شبكة الويب العالمية (W3C) |
| ظهرت لأول مرة | 1998 |
| إصدار مستقر | 3.0 / 8 يونيو 2017 |
| ملحقات اسم الملف | .xslt |
| موقع إلكتروني | www.w3.org/TR/xslt-30/ |
| التنفيذات الرئيسية | |
| libxslt ، ساكسون ، Xalan | |
| متأثر بـ | |
| دي إس إس إل | |
| امتداد اسم الملف | .xslt |
|---|---|
| نوع الوسائط على الإنترنت |
التطبيق/xslt+xml |
| معرف النوع الموحد (UTI) | org.w3.xsl |
XSLT ( تحويلات لغة أوراق الأنماط القابلة للتوسيع ) هي لغة مصممة في الأصل لتحويل مستندات XML إلى مستندات XML أخرى، [1] أو تنسيقات أخرى مثل HTML لصفحات الويب أو نص عادي أو كائنات تنسيق XSL . يمكن تحويل هذه التنسيقات لاحقًا إلى تنسيقات مثل PDF و PostScript و PNG . [2] تمت إضافة دعم تحويل JSON والنص العادي في التحديثات اللاحقة لمواصفات XSLT 1.0.
اعتبارًا من أغسطس 2022 [تحديث]، أحدث إصدار مستقر للغة هو XSLT 3.0، والذي حقق حالة التوصية في يونيو 2017.
تدعم تطبيقات XSLT 3.0 لغات Java و.NET وC/C++ وPython وPHP وNodeJS. كما يمكن استضافة مكتبة JavaScript XSLT 3.0 داخل متصفح الويب. كما تتضمن متصفحات الويب الحديثة دعمًا أصليًا لـ XSLT 1.0. [3]
تحدد عملية تحويل مستند XSLT كيفية تحويل مستند XML إلى مستند جديد (عادةً XML، ولكن يتم دعم التنسيقات الأخرى، مثل النص العادي). [4] عادةً، تكون مستندات الإدخال عبارة عن ملفات XML، ولكن يمكن استخدام أي شيء يمكن للمعالج من خلاله بناء نموذج بيانات XQuery وXPath ، مثل جداول قواعد البيانات العلائقية أو أنظمة المعلومات الجغرافية . [1]
في حين تم تصميم XSLT في الأصل كلغة ذات غرض خاص لتحويل XML، فإن اللغة كاملة تورينج ، مما يجعلها قادرة نظريًا على إجراء عمليات حسابية عشوائية. [5]
تاريخ
تتأثر XSLT باللغات الوظيفية ، [6] ولغات مطابقة الأنماط القائمة على النص مثل SNOBOL و AWK . وكان سلفها المباشر هو DSSSL ، الذي فعل لـ SGML ما يفعله XSLT لـ XML. [7]
- XSLT 1.0: كانت XSLT جزءًا من جهود تطوير لغة أوراق الأنماط القابلة للتوسعة (XSL) التابعة لاتحاد شبكة الويب العالمية (W3C) في الفترة 1998-1999، وهو المشروع الذي أنتج أيضًا XSL-FO و XPath . عمل بعض أعضاء لجنة المعايير التي طورت XSLT، بما في ذلك جيمس كلارك ، المحرر، سابقًا على DSSSL. نُشر XSLT 1.0 كتوصية من W3C في نوفمبر 1999. [8] على الرغم من عمرها، لا تزال XSLT 1.0 [9] مستخدمة على نطاق واسع (اعتبارًا من عام 2018 )، نظرًا لأن الإصدارات الأحدث غير مدعومة بشكل أصلي في متصفحات الويب أو للبيئات مثل LAMP .[تحديث]
- XSLT 2.0: بعد محاولة فاشلة لإنشاء الإصدار 1.1 في عام 2001، [10] انضمت مجموعة عمل XSL إلى مجموعة عمل XQuery لإنشاء XPath 2.0 ، [11] مع نموذج بيانات ونظام نوع أكثر ثراءً يعتمد على XML Schema . بناءً على هذا، تم تطوير XSLT 2.0، [12] تحت إشراف تحرير مايكل كاي ، والذي وصل إلى حالة التوصية في يناير 2007. [13] تشمل أهم الابتكارات في XSLT 2.0
ما يلي :
- معالجة السلسلة باستخدام التعبيرات العادية
- الوظائف والعوامل اللازمة لمعالجة التواريخ والأوقات والمدد
- مستندات إخراج متعددة
- التجميع (إنشاء هيكل هرمي من تسلسلات الإدخال المسطحة)
- نظام كتابة أكثر ثراءً وفحص كتابة أقوى
- XSLT 3.0: أصبحت توصية من W3C في 8 يونيو 2017. الميزات الجديدة الرئيسية هي: [14]
- تحويلات البث : في الإصدارات السابقة كان لابد من قراءة مستند الإدخال بالكامل في الذاكرة قبل معالجته، [15] ولم يكن من الممكن كتابة الإخراج حتى انتهاء المعالجة. يسمح XSLT 3.0 ببث XML وهو أمر مفيد لمعالجة المستندات الكبيرة جدًا بحيث لا يمكن وضعها في الذاكرة أو عندما يتم ربط التحويلات في خطوط أنابيب XML .
- الحزم لتحسين وحدات نمطية كبيرة الحجم.
- تم تحسين التعامل مع الأخطاء الديناميكية باستخدام، على سبيل المثال، تعليمات xsl:try.
- دعم الخرائط والمصفوفات، مما يتيح لـ XSLT التعامل مع JSON بالإضافة إلى XML.
- يمكن الآن أن تكون الوظائف بمثابة وسيطات لوظائف أخرى (ذات ترتيب أعلى).
نموذج التصميم والمعالجة

يأخذ معالج XSLT مستندًا واحدًا أو أكثر من مستندات مصدر XML، بالإضافة إلى ورقة أنماط XSLT واحدة أو أكثر، ويعالجها لإنتاج مستند إخراج واحد أو أكثر. [16] [17] وعلى النقيض من لغات البرمجة الإلزامية المطبقة على نطاق واسع مثل C ، فإن XSLT هي لغة إعلانية . [18] نموذج المعالجة الأساسي هو مطابقة الأنماط. [19] بدلاً من سرد تسلسل إلزامي من الإجراءات التي يجب القيام بها في بيئة ذات حالة، تحدد قواعد القالب فقط كيفية التعامل مع العقدة التي تطابق نمطًا معينًا يشبه XPath، إذا صادف المعالج واحدًا، وتتكون محتويات القوالب بشكل فعال من تعبيرات وظيفية تمثل بشكل مباشر شكلها المقيم: شجرة النتيجة، والتي تشكل أساس إخراج المعالج.
يتصرف المعالج النموذجي على النحو التالي. أولاً، بافتراض أن ورقة الأنماط قد تمت قراءتها وإعدادها بالفعل، يقوم المعالج ببناء شجرة مصدر من مستند XML المدخل. ثم يقوم بمعالجة عقدة الجذر لشجرة المصدر، ويجد القالب الأكثر تطابقًا لتلك العقدة في ورقة الأنماط، ويقيم محتويات القالب. عادةً ما توجه التعليمات الموجودة في كل قالب المعالج إما لإنشاء عقد في شجرة النتائج، أو معالجة المزيد من العقد في شجرة المصدر بنفس الطريقة التي تتم بها معالجة العقدة الجذرية. أخيرًا، يتم تسلسل شجرة النتائج كنص XML أو HTML.
إكس باث
يستخدم XSLT برنامج XPath لتحديد مجموعات فرعية من شجرة المستند المصدر وإجراء الحسابات. كما يوفر XPath مجموعة من الوظائف ، والتي يعمل XSLT نفسه على تعزيزها بشكل أكبر.
يستخدم XSLT 1.0 XPath 1.0، بينما يستخدم XSLT 2.0 XPath 2.0. سيعمل XSLT 3.0 مع XPath 3.0 أو 3.1. في حالة 1.0 و2.0، تم نشر مواصفات XSLT وXPath في نفس التاريخ. ومع 3.0، لم تعد متزامنة؛ أصبح XPath 3.0 توصية في أبريل 2014، تلاه XPath 3.1 في فبراير 2017؛ تلاه XSLT 3.0 في يونيو 2017.
مقارنة XQuery
تتداخل وظائف XSLT مع وظائف XQuery ، والتي تم تصميمها في البداية كلغة استعلام لمجموعات كبيرة من مستندات XML.
تم تطوير معايير XSLT 2.0 وXQuery 1.0 بواسطة مجموعات عمل منفصلة داخل W3C ، تعمل معًا لضمان اتباع نهج مشترك عند الاقتضاء. تشترك المعايير في نفس نموذج البيانات ونظام النوع ومكتبة الوظائف، وكلاهما يتضمن XPath 2.0 كلغة فرعية.
ومع ذلك، فإن اللغتين متجذرتان في تقاليد مختلفة وتخدمان احتياجات مجتمعات مختلفة. تم تصميم XSLT في المقام الأول كلغة جدول أنماط كان هدفها الأساسي هو عرض XML للقارئ البشري على الشاشة، أو على الويب (كلغة قالب ويب )، أو على الورق. تم تصميم XQuery في المقام الأول كلغة استعلام قاعدة بيانات في تقليد SQL .
نظرًا لأن اللغتين نشأتا في مجتمعات مختلفة، فإن XSLT أقوى في التعامل مع المستندات السردية ذات البنية الأكثر مرونة، بينما XQuery أقوى في التعامل مع البيانات، على سبيل المثال عند إجراء عمليات الانضمام العلائقية. [20]
أنواع الوسائط
يمكن للعنصر <output>اختياريًا أن يأخذ السمة media-type، مما يسمح للمرء بتعيين نوع الوسائط (أو نوع MIME) للإخراج الناتج، على سبيل المثال: <xsl:output output="xml" media-type="application/xml"/>توصي توصية XSLT 1.0 بأنواع السمات الأكثر عمومية text/xml، application/xmlومنذ فترة طويلة لم يكن هناك نوع وسائط مسجل لـ XSLT. خلال هذا الوقت text/xslأصبح المعيار الفعلي. في XSLT 1.0 لم يتم تحديد كيفية media-typeاستخدام القيم.
مع إصدار XSLT 2.0، أوصت W3C في عام 2007 بتسجيل نوع الوسائط MIME application/xslt+xml[21] وتم تسجيله لاحقًا لدى هيئة أرقام الإنترنت المخصصة . [22]
مسودات عمل ما قبل الإصدار 1.0 من XSLT المستخدمة text/xslفي أمثلة التضمين الخاصة بهم، وقد تم تنفيذ هذا النوع واستمرت Microsoft في الترويج له في Internet Explorer [23] وMSXML حوالي عام 2012. كما تم التعرف عليه على نطاق واسع في xml-stylesheetتعليمات المعالجة بواسطة متصفحات أخرى. لذلك، في الممارسة العملية، كان المستخدمون الذين يرغبون في التحكم في التحويل في المتصفح باستخدام تعليمات المعالجة هذه ملزمين باستخدام نوع الوسائط غير المسجل هذا. [24]
أمثلة
تستخدم هذه الأمثلة مستند XML الوارد التالي:
<?xml version="1.0" ?>
<persons>
<person username= "JS1" > <name> جون </name> <family-name> سميث </family-name> </person> <person username= "MI1" > <name> موركا </name> <family-name> إسمينسيوس </family-name> </person> </persons>
المثال 1 (تحويل XML إلى XML)
توفر ورقة أنماط XSLT هذه قوالب لتحويل مستند XML:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl= "http://www.w3.org/1999/XSL/Transform" version= "1.0" > <xsl:output method= "xml" indent= "yes" />
<xsl:template match= "/persons" > <root> <xsl:apply-templates select= "person" /> </root> </xsl:template>
<xsl:template match= "person" > <name username= "{@username}" > <xsl:value-of select= "name" /> </name> </xsl:template>
</xsl:ورقة الأنماط>
تؤدي عملية التقييم إلى إنشاء مستند XML جديد، له بنية أخرى:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<name username= "JS1" > John </name> <name username= "MI1" > Morka </name> </root>
المثال 2 (تحويل XML إلى XHTML)
معالجة ملف XSLT المثال التالي
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
version= "1.0" xmlns:xsl= "http://www.w3.org/1999/XSL/Transform" xmlns= "http://www.w3.org/1999/xhtml" >
<xsl: طريقة الإخراج= "xml" المسافة البادئة= "نعم" الترميز= "UTF-8" />
<xsl:template match= "/persons" > <html> <head> <title> مثال اختبار XML </title> </head> <body> <h1> الأشخاص </h1> <ul> <xsl:apply-templates select= "person" > <xsl:sort select= "family-name" /> </xsl:apply-templates> </ul> </body> </html> </xsl:template>
<xsl:template match= "person" > <li> <xsl:value-of select= "family-name" /><xsl:text> , </xsl:text><xsl:value-of select= "name" /> </li> </xsl:template>
</xsl:ورقة الأنماط>
باستخدام ملف الإدخال XML الموضح أعلاه، ينتج عن ذلك XHTML التالي ( تم تعديل المسافة البيضاء هنا من أجل الوضوح):
<?xml version="1.0" encoding="UTF-8"?>
<html xmlns= "http://www.w3.org/1999/xhtml" > <head> <title> مثال اختبار XML </title> </head> <body> <h1> الأشخاص </h1> <ul> <li> Ismincius, Morka </li> <li> Smith, John </li> </ul> </body> </html>
يُنشئ هذا XHTML الناتج أدناه عند عرضه في متصفح الويب.

لكي يتمكن متصفح الويب من تطبيق تحويل XSL على مستند XML المعروض، يمكن إدراج تعليمات معالجة جدول أنماط XML في XML. على سبيل المثال، إذا كانت ورقة الأنماط في المثال 2 أعلاه متاحة باسم "example2.xsl"، فيمكن إضافة التعليمات التالية إلى XML الوارد الأصلي: [25]
<?xml-stylesheet href="example2.xsl" type="text/xsl" ?>
في هذا المثال، text/xslيكون غير صحيح من الناحية الفنية وفقًا لمواصفات W3C [25] (التي تقول أن النوع يجب أن يكون application/xslt+xml)، ولكنه نوع الوسائط الوحيد المدعوم على نطاق واسع عبر المتصفحات اعتبارًا من عام 2009، والوضع لم يتغير في عام 2021.
تنفيذات المعالج
- RaptorXML من Altova هو معالج XSLT 3.0 متاح في مجموعة أدوات تطوير XMLSpy وكتنفيذ خادم مستقل، يتم استدعاؤه باستخدام واجهة REST.
- تقدم IBM معالجة XSLT المضمنة في جهاز مخصص للأغراض تحت العلامة التجارية Datapower .
- libxslt هي مكتبة مجانية تم إصدارها بموجب ترخيص MIT ويمكن إعادة استخدامها في التطبيقات التجارية. وهي مبنية على libxml ومُنفذة بلغة C للسرعة والقدرة على النقل. وهي تدعم امتدادات XSLT 1.0 و EXSLT . [26]
- يمكن استخدامه على سطر الأوامر عبر xsltproc [27] المضمن في macOS [28] والعديد من توزيعات Linux ، ويمكن استخدامه على Windows عبر Cygwin . [29]
- تستخدم محركات تخطيط WebKit و Blink ، المستخدمة على سبيل المثال في متصفحي الويب Safari و Chrome على التوالي ، مكتبة libxslt لإجراء تحويلات XSL. [30]
- توجد ارتباطات لـ Python ، [31] وPerl ، [32] و Ruby ، [33] وPHP ، [34] و Common Lisp ، [35] و Tcl ، [36] و C++ . [37]
- توفر Microsoft معالجين XSLT (كلاهما XSLT 1.0 فقط). يوفر المعالج الأقدم MSXML واجهات COM؛ بدءًا من MSXML 4.0، يتضمن أيضًا أداة سطر الأوامر
msxsl.exe. [38] يتضمن وقت تشغيل .NET معالج XSLT مدمج منفصل في مكتبتهSystem.Xml.Xsl. - Saxon هو معالج XSLT 3.0 وXQuery 3.1 بإصدارات مفتوحة المصدر وملكية للعمل المستقل ولـ Java و JavaScript و.NET. يقدم منتج منفصل Saxon-JS [ 39] معالجة XSLT 3.0 على Node.js وفي المتصفح.
- xjslt هو مترجم XSLT 2.0 مفتوح المصدر لـ JavaScript يدعم Node.js والمتصفح.
- Xalan هو معالج XSLT 1.0 مفتوح المصدر من Apache Software Foundation متاح للغة Java وC++. تم تضمين متغير من معالج Xalan كمعالج XSLT افتراضي في توزيع Java القياسي من Oracle.
- متصفحات الويب: Safari وChrome وFirefox وOpera وInternet Explorer كلها تدعم XSLT 1.0 (فقط). [40] يمكن للمتصفحات إجراء تحويلات فورية لملفات XML وعرض ناتج التحويل في نافذة المتصفح. يتم ذلك إما عن طريق تضمين XSL في مستند XML أو عن طريق الرجوع إلى ملف يحتوي على تعليمات XSL من مستند XML. قد لا يعمل الأخير مع Chrome على الملفات من نظام الملفات المحلي بسبب نموذج الأمان الخاص به. [41]
- محرك Adobe AXSLE، مكتبة خاصة
أداء
كانت معظم معالجات XSLT المبكرة عبارة عن مفسرين. وفي الآونة الأخيرة، أصبح إنشاء التعليمات البرمجية شائعًا بشكل متزايد، باستخدام لغات وسيطة محمولة (مثل Java bytecode أو .NET Common Intermediate Language ) كهدف. ومع ذلك، حتى المنتجات التفسيرية تقدم عمومًا مراحل تحليل وتنفيذ منفصلة، مما يسمح بإنشاء شجرة تعبير محسّنة في الذاكرة وإعادة استخدامها لإجراء تحويلات متعددة. وهذا يوفر فوائد أداء كبيرة في تطبيقات النشر عبر الإنترنت، حيث يتم تطبيق نفس التحويل عدة مرات في الثانية على مستندات مصدر مختلفة. [42] ينعكس هذا الفصل في تصميم واجهات برمجة تطبيقات معالجة XSLT (مثل JAXP ).
كانت معالجات XSLT المبكرة تحتوي على عدد قليل جدًا من التحسينات. كانت مستندات جدول الأنماط تُقرأ في نماذج كائنات المستندات وكان المعالج يتصرف عليها مباشرةً. كما لم تكن محركات XPath مُحسَّنة. ومع ذلك، تستخدم معالجات XSLT بشكل متزايد تقنيات التحسين الموجودة في لغات البرمجة الوظيفية ولغات استعلام قواعد البيانات، مثل إعادة الكتابة الثابتة لشجرة التعبيرات (على سبيل المثال، لنقل الحسابات خارج الحلقات)، والتقييم البطيء المتسلسل لتقليل بصمة الذاكرة للنتائج الوسيطة (والسماح "بالخروج المبكر" عندما يمكن للمعالج تقييم تعبير مثل following-sibling::*[1]بدون تقييم كامل لجميع التعبيرات الفرعية). تستخدم العديد من المعالجات أيضًا تمثيلات شجرة أكثر كفاءة بشكل ملحوظ (في كل من المكان والزمان) [43] من تنفيذات DOM للأغراض العامة.
في يونيو 2014، قدمت ديبي لوكيت ومايكل كاي إطار عمل مفتوح المصدر للقياس والمعايرة لمعالجات XSLT يسمى XT-Speedo. [44]
انظر أيضا
- عناصر XSLT – قائمة ببعض هياكل XSLT المستخدمة بشكل شائع.
- التجمع المونشي – لهجة تفاضلية بين XSLT1 و XSLT2+.
- لغة جداول الأنماط القابلة للتوسيع – عائلة من اللغات التي تعد XSLT عضوًا فيها
- مقارنة بين XQuery و XSLT
- كائنات تنسيق XSL أو XSL-FO – لغة تعتمد على XML للمستندات، يتم إنشاؤها عادةً عن طريق تحويل المستندات المصدرية باستخدام XSLT، وتتكون من كائنات تستخدم لإنشاء مخرجات منسقة
- تحويل الهوية – نقطة بداية لسلاسل التصفية التي تضيف أو تزيل عناصر البيانات من أشجار XML في خط أنابيب التحويل
- Apache Cocoon – إطار عمل قائم على Java لمعالجة البيانات باستخدام XSLT والمحولات الأخرى.
مراجع
- ^ "التحول". 2012-09-19.
- ^ "طريقة إخراج XML". 2012-09-19.
- ^ "ما هي استخدامات XSLT؟". 2018-02-07.
- ^ "مقدمة". تحويلات XSL (XSLT) الإصدار 1.0 توصية W3C . W3C. 16 نوفمبر 1999. تم الاسترجاع في 7 نوفمبر 2012 .
- ^ XSLT الإصدار 2.0 هو تورينج كامل: دليل قائم على التحويل البحت
- ^ مايكل كاي. "ما نوع اللغة XSLT؟". IBM . تم الاسترجاع في 8 يوليو 2016 .
- ^ "اقتراح لـ XSL". W3C . تم الاسترجاع في 7 نوفمبر 2012 .
- ^ "XML and Semantic Web W3C Standards Timeline" (PDF) . مؤرشف من الأصل (PDF) في 2013-04-24 . تم الاسترجاع في 2012-02-04 .
- ^ "تحويلات XSL (XSLT)". W3.org. 1999-11-16 . تم الاسترجاع في 2014-07-12 .
- ^ "XSL Transformations (XSLT) Version 1.1". W3.org. 2001-08-24 . تم الاسترجاع في 2014-07-12 .
- ^ "XML Path Language (XPath) 2.0 (Second Edition)". W3.org. 2010-12-14 . تم الاسترجاع في 2014-07-12 .
- ^ "XSL Transformations (XSLT) Version 2.0". W3.org. 2007-01-23 . تم الاسترجاع في 2014-07-12 .
- ^ "XML and Semantic Web W3C Standards Timeline" (PDF) . 2012-02-04. مؤرشف من الأصل (PDF) في 2013-04-24 . تم الاسترجاع في 2012-02-04 .
- ^ "ما الجديد في XSLT 3.0؟". w3 . تم الاسترجاع في 6 يناير 2014 .
- ^ Kay, Michael. "A Streaming XSLT Processor". Balisage: The Markup Conference 2010 Proceedings . تم الاسترجاع في 15 فبراير 2012 .
- ^ Flatt, Amelie; Langner, Arne; Leps, Olof (2022), "Phase III: Generating Artifacts from the Model", Model-Driven Development of Akoma Ntoso Application Profiles , Cham: Springer International Publishing, ص. 31– 37, doi :10.1007/978-3-031-14132-4_5, ISBN 978-3-031-14131-7تم الاسترجاع بتاريخ 2023-01-07
- ^ "XSL Transformations (XSLT) Version 2.0 (Second Edition)". www.w3.org . تم الاسترجاع في 2023-02-07 .
مثال: مستندات نتائج متعددة
- ^ "اكتشف عجائب XSLT: خصائص XSLT". مؤرشف من الأصل في 2011-07-09 . تم الاسترجاع في 2011-02-11 .
XSLT هي لغة متخصصة للغاية ذات نكهة إعلانية مميزة.
- ^ كاي، مايكل. "ما نوع اللغة XSLT؟". IBM . تم الاسترجاع في 13 نوفمبر 2013 .
- ^ "Saxonica: XSLT وXQuery". www.saxonica.com . تم الاسترجاع في 2022-06-29 .
- ^ "XSL Transformations (XSLT) Version 2.0". W3C . تم الاسترجاع في 19 أكتوبر 2012 .
- ^ "أنواع الوسائط التطبيقية". IANA . تم الاسترجاع في 19 أكتوبر 2012 .
- ^ "متطلبات XSLT لعرض XML في المتصفح". Microsoft . تم الاسترجاع في 19 أكتوبر 2012 .
- ^ Kay, Michael (2008). XSLT 2.0 and XPath 2.0 Programmer's Reference . Wiley. ص. 100. ISBN 978-0-470-19274-0.
- ^ "تحويلات XSL (XSLT) الإصدار 1.0: توصية W3C - تضمين أوراق الأنماط". W3C. 16 نوفمبر 1999. تم الاسترجاع في 20 سبتمبر 2016 .
- ^ "مكتبة XSLT C لـ GNOME: libxslt" . تم الاسترجاع في 23 نوفمبر 2012 .
- ^ "مكتبة XSLT C لـ GNOME: أداة xsltproc" . تم الاسترجاع في 23 نوفمبر 2012 .
- ^ "صفحة دليل xsltproc" . تم الاسترجاع في 23 نوفمبر 2012 .
- ^ "الحزمة الجديدة: libxslt" . تم الاسترجاع في 23 نوفمبر 2012 .
- ^ "مشروع WebKit مفتوح المصدر – XSLT" . تم الاسترجاع في 25 أكتوبر 2009 .
- ^ "محلل XML C ومجموعة أدوات Gnome: Python والارتباطات" . تم الاسترجاع في 23 نوفمبر 2012 .
- ^ "XML::LibXSLT – واجهة لمكتبة GNOME libxslt". CPAN . تم الاسترجاع في 23 نوفمبر 2012 .
- ^ "libxslt-ruby" . تم الاسترجاع في 23 نوفمبر 2012 .
- ^ "libxml" . تم الاسترجاع في 23 نوفمبر 2012 .
- ^ "cl-libxml2 غلاف عالي المستوى حول مكتبات libxml2 وlibxslt".
- ^ "TclXML" . تم الاسترجاع في 21 مايو 2013 .
- ^ "libxml++". sourceforge.net . تم الاسترجاع في 23 نوفمبر 2012 .
- ^ "أداة تحويل سطر الأوامر (msxsl.exe)". Microsoft . تم الاسترجاع في 22 أكتوبر 2012 .
- ^ “ساكسون شبيبة”. ساكسونيا . تم الاسترجاع في 6 سبتمبر 2018 .
- ^ "أخطاء XSLT الشائعة". MDN Web Docs . Mozilla. 10 يوليو 2023. تم الاسترجاع في 16 سبتمبر 2024 .
- ^ "المشكلة 58151: فشل في تحميل ملف xml على نظام الملفات المحلي باستخدام XMLHttpRequest".
- ^ Saxon: تشريح معالج XSLT – مقالة تصف تفاصيل التنفيذ والتحسين لمعالج XSLT الشهير.
- ^ Lumley, John; Kay, Michael (June 2015). "تحسين أداء مطابقة الأنماط في XSLT". XML London 2015 : 9– 25. doi : 10.14337/XMLLondon15.Lumley01 (غير نشط 1 نوفمبر 2024). ISBN 978-0-9926471-2-4.
{{cite journal}}:CS1 maint: DOI غير نشط اعتبارًا من نوفمبر 2024 ( الرابط ) - ^ Kay, Michael; Lockett, Debbie (June 2014). "Benchmarking XSLT Performance". XML London 2014 : 10– 23. doi : 10.14337/XMLLondon14.Kay01 (غير نشط 1 نوفمبر 2024). ISBN 978-0-9926471-1-7.
{{cite journal}}:CS1 maint: DOI غير نشط اعتبارًا من نوفمبر 2024 ( الرابط )
قراءة إضافية
- XSLT بقلم دوج تيدويل، نشرته دار أوريلي للنشر ( ISBN 0-596-00053-7 )
- كتاب XSLT Cookbook من تأليف سال مانجانو، منشور بواسطة O'Reilly ( ISBN 0-596-00974-7 )
- مرجع مبرمج XSLT 2.0 بقلم مايكل كاي ( ISBN 0-764-56909-0 )
- مرجع للمبرمجين في XSLT 2.0 وXPath 2.0 بقلم مايكل كاي ( ISBN 978-0-470-19274-0 )
- تطوير الويب XSLT 2.0 بقلم دميتري كيرسانوف ( ISBN 0-13-140635-3 )
- XSL Companion، الطبعة الثانية ، بقلم نيل برادلي، نشرته دار أديسون ويسلي ( ISBN 0-201-77083-0 )
- XSLT وXPath على الحافة (إصدار غير محدود) بقلم جيني تينيسون ، نشرته Hungry Minds Inc، الولايات المتحدة ( ISBN 0-7645-4776-3 )
- XSLT & XPath، دليل تحويلات XML، تأليف جون روبرت جاردنر وزاريلا ريندون، نشر برنتيس هول ( ISBN 0-13-040446-2 )
- XSL-FO بقلم ديف باوسون، نشرته دار أوريلي ( ISBN 978-0-596-00355-5 )
روابط خارجية
- التوثيق
- توصية XSLT 1.0 W3C
- توصية XSLT 2.0 W3C
- توصية XSLT 3.0 W3C
- XSLT – تم أرشفة وثائق MDC في 2011-12-26 على موقع Wayback Machine بواسطة Mozilla Developer Network
- مرجع XSLT (MSDN)
- عناصر XSLT (ساكسونية)
- مقدمة ومرجع XSLT
- مكتبات أكواد XSLT
- EXSLT عبارة عن مبادرة مجتمعية واسعة النطاق لتوفير ملحقات XSLT.
- FXSL هي مكتبة تنفذ الدعم للوظائف ذات الترتيب الأعلى في XSLT. FXSL مكتوبة بلغة XSLT نفسها.
- توفر مكتبة XSLT القياسية xsltsl لمطور XSLT مجموعة من قوالب XSLT للوظائف المستخدمة بشكل شائع. يتم تنفيذها في XSLT فقط، أي أنها لا تستخدم أي ملحقات. xsltsl هو مشروع SourceForge.
- Kernow واجهة مستخدم رسومية لـ Saxon توفر واجهة النقر والنقر لتشغيل التحويلات.
- xslt.js – تحويل XML باستخدام XSLT مكتبة JavaScript تقوم بتحويل XML باستخدام XSLT في المتصفح.
