XSLT - على الجهاز الكlient
- الصفحة السابقة XSLT apply
- الصفحة التالية XSLT على الجانب الخادم
إذا كان متصفحك يدعم XSLT، فإنه يمكن استخدامه في المتصفح لتحويل المستند إلى XHTML.
حلول JavaScript
في الفصول السابقة، قدمنا لكم كيفية استخدام XSLT لتحويل ملف XML إلى XHTML. لقد قمنا بذلك من خلال إضافة قائمة النمط XSL إلى ملف XML وتحويله من خلال المتصفح.
على الرغم من أن هذا الأسلوب يعمل بشكل جيد، إلا أن تضمين استدعاءات النمط في ملفات XML ليس دائمًا مرضيًا (على سبيل المثال، لا يعمل هذا الأسلوب في المتصفحات التي لا يمكنها التعرف على XSLT).
طريقة أكثر شمولية هي استخدام JavaScript لإنجاز التحويل.
من خلال استخدام JavaScript، يمكننا:
- إجراء اختبارات التأكد للمتصفح
- استخدام قوائم النمط المختلفة بناءً على متصفح المستخدم و احتياجاته
هذا هو جمال XSLT! أحد أهداف تصميم XSLT هو جعل تحويل النمط من نمط إلى آخر ممكنًا، ودعم أنواع مختلفة من المتصفحات واحتياجات المستخدمين المختلفة.
تحويل XSLT على الجانب المتصفح سيكون من المهام الرئيسية التي سيقوم بها المتصفحات في المستقبل، وسنرى أيضًا نموها في السوق المتخصصة للمتصفحات (النصوص الشفوية، طابعات الشبكة، الأجهزة السمعية، وما إلى ذلك).
ملفات XML و XSL
الرجاء النظر في هذا ملف XML الذي تم عرضه في الفصول السابقة:
<?xml version="1.0" encoding="ISO-8859-1"?> <catalog> <cd> <title>Empire Burlesque</title> <artist>Bob Dylan</artist> <country>USA</country> <company>Columbia</company> <price>10.90</price> <year>1985</year> </cd> . . . </catalog>
و قوائم النمط المرفقة:
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <h2>My CD Collection</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">Title</th> <th align="left">Artist</th> </tr> <xsl:for-each select="catalog/cd"> <tr> <td><xsl:value-of select="title" /></td> <td><xsl:value-of select="artist" /></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>
لا يحتوي هذا الملف XML على إشارة إلى ملف XSL.
ملاحظة هامة:يعني هذا الجملة أن ملف XML يمكنه استخدام العديد من قوائم النمط المختلفة للتحويل.
تحويل XML إلى XHTML في المتصفح
هذا هو الكود المصدر المستخدم لتحويل ملف XML إلى XHTML على الجانب الت客户端:
<html> <body> <script type="text/javascript"> // Load XML var xml = new ActiveXObject("Microsoft.XMLDOM") xml.async = false xml.load("cdcatalog.xml") // Load XSL var xsl = new ActiveXObject("Microsoft.XMLDOM") xsl.async = false xsl.load("cdcatalog.xsl") // Transform document.write(xml.transformNode(xsl)) </script> </body> </html>
إشارة:إذا لم تكن تعرف كيفية كتابة JavaScript، فتعلم منتعليمات JavaScript>
أولاً، قام الكود الأول بإنشاء مثال على معالج XML من Microsoft، ثم قام بتحميل ملف XML إلى ذاكرة الواقع. ثانيًا، قام الكود الثاني بإنشاء مثال آخر على المعالج، ثم قام بتحميل ملف XSL إلى ذاكرة الواقع. في الخط الأخير، استخدم مستند XSL لتحويل مستند XML، وعرض النتيجة كـ XHTML في المتصفح. تم إكمال المهمة!
- الصفحة السابقة XSLT apply
- الصفحة التالية XSLT على الجانب الخادم