XSLT - ক্লায়েন্ট

যদি আপনার ব্রাউজার XSLT-এর সমর্থন করে, তবে তা ডকুমেন্টকে XHTML-এ রূপান্তরিত করার জন্য ব্রাউজারে ব্যবহার করা যাবে。

JavaScript সমাধান

আগের চাপ্তীতে, আমরা আপনাকে কিভাবে XSLT-এর মাধ্যমে কোনও XML ডকুমেন্টকে XHTML-এ রূপান্তরিত করতে শিখিয়েছি। আমরা এই কাজটি সম্পন্ন করতে দিয়েছি: XML ফাইলে XSL স্টাইলশিপ যোগ করা এবং ব্রাউজারের মাধ্যমে রূপান্তর করা。

এই পদ্ধতির প্রভাব ভালো হলেও, 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 ফাইলটি দেখুন

এবং যুক্ত থাকা XSL স্টাইলশিপ:

<?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>

এই XSL ফাইলটি দেখুন

লক্ষ্য করুন যে, এই XML ফাইলটি XSL ফাইলের উল্লেখ নিয়ে আসে না

গুরুত্বপূর্ণ বিষয়:এই বিষয়টি মানা করুন যে, XML ফাইলটি বিভিন্ন ধরণের XSL স্টাইলশিপগুলির মাধ্যমে রূপান্তরিত করা যেতে পারে

ব্রাউজারে 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 পার্সারের একটি ইনস্ট্যান্স তৈরি করে, তারপর XML ফাইলটিকে মেমরির মধ্যে লোড করে। দ্বিতীয়টি কোড পার্সারের আরও একটি ইনস্ট্যান্স তৈরি করে, তারপর XSL ফাইলটিকে মেমরির মধ্যে লোড করে। শেষটি কোড XSL ডকুমেন্টটিকে XML ডকুমেন্টকে ট্রান্সফর্ম করে, এবং ব্রাউজারে XHTML হিসাবে ফলাফল প্রদর্শন করে। কাজ সম্পূর্ণ!

দেখুন, IE-তে এটি কিভাবে কাজ করে