XSLT (Extensible Stylesheet Language Transformations)

Java Technologies - জাভা এক্সএমএল (Java XML)
69
69

XSLT (Extensible Stylesheet Language Transformations) একটি ভাষা যা XML ডকুমেন্টের উপর ট্রান্সফরমেশন (রূপান্তর) করার জন্য ব্যবহৃত হয়। XSLT ব্যবহার করে XML ডেটাকে অন্যান্য ফরম্যাটে যেমন HTML, প্লেইন টেক্সট বা অন্য XML ফরম্যাটে রূপান্তর করা যায়। এটি XML ডকুমেন্টকে একটি মানব-পাঠযোগ্য ফরম্যাটে রূপান্তর করতে বা ডেটা আউটপুট তৈরিতে সহায়তা করে।

XSLT এর মূল বৈশিষ্ট্যসমূহ:

  1. ডাটা ট্রান্সফরমেশন: XSLT মূলত XML ডকুমেন্টের আউটপুট রূপান্তরের জন্য ব্যবহৃত হয়। এটি XML ডেটাকে HTML, XHTML, অথবা অন্যান্য XML ফরম্যাটে রূপান্তর করতে সাহায্য করে।
  2. স্টাইলশীট ব্যবহার: XSLT একটি স্টাইলশীট ভিত্তিক প্রযুক্তি, যেখানে XSLT ফাইলটি XML ডকুমেন্টের গঠন নির্ধারণ এবং আউটপুট প্রকারের সম্পর্ক স্থাপন করে।
  3. XML স্কিল্যাবিলিটি: XSLT দ্বারা আপনি XML ডকুমেন্টের উপাদানগুলির উপর বিভিন্ন ফিল্টার, সাজেশন বা কন্ডিশন অ্যাপ্লাই করতে পারেন।
  4. অনেক ধরনের আউটপুট: XSLT XML ডকুমেন্টের উপর ট্রান্সফরমেশন প্রক্রিয়ায় HTML, পিডিএফ, বা অন্যান্য ফরম্যাটে আউটপুট তৈরি করতে সাহায্য করে। তাই এটি ওয়েব পেজ তৈরির জন্য খুবই উপকারী।
  5. ইনপুট ও আউটপুট ডেটা: XSLT ইনপুট হিসেবে XML ডকুমেন্ট নেয় এবং আউটপুট হিসেবে HTML, XML বা প্লেইন টেক্সট উৎপন্ন করতে পারে।

XSLT এর ব্যবহার:

  • ওয়েব পেজ তৈরি: XML ডেটাকে HTML এ রূপান্তর করতে XSLT ব্যবহার করা হয়, যা ওয়েব ব্রাউজারে প্রদর্শন করতে সহজ।
  • ডাটা ফিল্টারিং: XSLT ডেটা ফিল্টার করার জন্য খুবই কার্যকর, বিশেষত যখন XML ডকুমেন্টে বড় আকারে ডেটা থাকে এবং নির্দিষ্ট তথ্যগুলো বের করা প্রয়োজন হয়।
  • ওয়েব সার্ভিস: XSLT ব্যবহার করে XML ডকুমেন্টের বিভিন্ন অংশে রূপান্তর করে ওয়েব সার্ভিস তৈরি করা যেতে পারে।

XSLT স্টাইলশীটের উদাহরণ:

এখানে একটি সহজ XSLT স্টাইলশীট উদাহরণ দেওয়া হলো যা একটি XML ডকুমেন্টকে HTML এ রূপান্তর করে:

XML ডকুমেন্ট (input.xml)

<bookstore>
  <book>
    <title>Java Programming</title>
    <author>John Doe</author>
    <price>39.99</price>
  </book>
  <book>
    <title>Learn XML</title>
    <author>Jane Doe</author>
    <price>29.99</price>
  </book>
</bookstore>

XSLT স্টাইলশীট (style.xsl)

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/bookstore">
    <html>
      <body>
        <h2>Bookstore</h2>
        <table border="1">
          <tr>
            <th>Title</th>
            <th>Author</th>
            <th>Price</th>
          </tr>
          <xsl:for-each select="book">
            <tr>
              <td><xsl:value-of select="title"/></td>
              <td><xsl:value-of select="author"/></td>
              <td><xsl:value-of select="price"/></td>
            </tr>
          </xsl:for-each>
        </table>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

আউটপুট (HTML)

<html>
  <body>
    <h2>Bookstore</h2>
    <table border="1">
      <tr>
        <th>Title</th>
        <th>Author</th>
        <th>Price</th>
      </tr>
      <tr>
        <td>Java Programming</td>
        <td>John Doe</td>
        <td>39.99</td>
      </tr>
      <tr>
        <td>Learn XML</td>
        <td>Jane Doe</td>
        <td>29.99</td>
      </tr>
    </table>
  </body>
</html>

এই উদাহরণে, XML ডকুমেন্টের <book> উপাদানগুলির তথ্যকে HTML টেবিল ফরম্যাটে রূপান্তর করা হয়েছে। XSLT স্টাইলশীট দ্বারা XML এর তথ্যকে পাঠযোগ্য HTML আউটপুটে রূপান্তর করা হয়েছে।

Java তে XSLT ব্যবহার:

Java তে XSLT ব্যবহার করতে TransformerFactory এবং Transformer ক্লাস ব্যবহৃত হয়। নিচে একটি উদাহরণ দেওয়া হলো:

import javax.xml.transform.*;
import javax.xml.transform.stream.*;
import java.io.*;

public class XSLTExample {
    public static void main(String[] args) throws Exception {
        // XML এবং XSLT ফাইলের পথ
        File xmlFile = new File("input.xml");
        File xslFile = new File("style.xsl");
        
        // XSLT প্রসেসর তৈরি
        TransformerFactory factory = TransformerFactory.newInstance();
        Transformer transformer = factory.newTransformer(new StreamSource(xslFile));
        
        // XML ডকুমেন্ট প্রসেস করা এবং HTML আউটপুট তৈরি
        transformer.transform(new StreamSource(xmlFile), new StreamResult(System.out));
    }
}

এভাবে, Java তে XSLT ব্যবহার করে XML ডেটাকে HTML বা অন্যান্য ফরম্যাটে রূপান্তর করা যায়। XSLT, Java অ্যাপ্লিকেশনগুলিতে XML ডকুমেন্ট প্রসেসিং এর জন্য একটি শক্তিশালী টুল।

Content added By

XSLT কি এবং এর কাজ

57
57

XSLT (Extensible Stylesheet Language Transformations) হলো একটি ভাষা যা XML ডকুমেন্টকে অন্য ফরম্যাটে (যেমন HTML, টেক্সট, বা অন্য XML ফরম্যাট) রূপান্তরিত করতে ব্যবহৃত হয়। এটি XML ডেটাকে প্রক্রিয়া বা উপস্থাপন করার জন্য স্টাইলশীট তৈরি করতে ব্যবহৃত হয়। XSLT একটি শক্তিশালী এবং গুরুত্বপূর্ণ টুল যা XML ডেটার প্রদর্শন এবং রূপান্তরের জন্য ডিজাইন করা হয়েছে।

XSLT এর কাজ:

XSLT এর মূল কাজ হলো XML ডকুমেন্টকে একটি নতুন ফরম্যাটে রূপান্তর করা। এটি প্রধানত নিম্নলিখিত কাজগুলো করতে ব্যবহার হয়:

  1. XML ডেটাকে HTML বা অন্যান্য ফরম্যাটে রূপান্তর করা:
    • XSLT ব্যবহার করে XML ডেটাকে HTML ডকুমেন্টে রূপান্তর করা সম্ভব। যেমন, XML ডেটার থেকে ওয়েব পেজ তৈরি করা।
  2. XML ডেটার প্রদর্শন ফরম্যাট নির্ধারণ করা:
    • XML ডেটাকে নির্দিষ্ট একটি কাঠামোতে বা স্টাইলের মধ্যে উপস্থাপন করতে XSLT ব্যবহার করা হয়। এটি গ্রাফিকাল ইউজার ইন্টারফেস (GUI) তৈরি করতেও কাজে আসে।
  3. XML ডকুমেন্টের কাঠামো পরিবর্তন করা:
    • XML ডেটা নির্দিষ্ট কাঠামোতে রূপান্তরিত করা বা শুধুমাত্র প্রয়োজনীয় অংশগুলো বের করে আনা।
  4. টেমপ্লেট ব্যবহার করে ডেটা প্রদর্শন:
    • XSLT ডকুমেন্টে টেমপ্লেট তৈরি করে ডেটা ফিল্টার এবং প্রসেস করা হয়, যা নির্দিষ্ট শর্তে XML ডেটাকে রূপান্তরিত করতে সাহায্য করে।

XSLT এর প্রধান উপাদান:

  1. XSLT স্টাইলশীট:
    • XSLT স্টাইলশীট হলো একটি XML ডকুমেন্ট, যা XSLT কৌশলগুলি (টেমপ্লেট) এবং রূপান্তরের নির্দেশনা ধারণ করে। এটি মূল XML ডেটার উপর প্রক্রিয়া এবং রূপান্তর প্রয়োগ করে।
  2. XSLT প্রসেসর:
    • XSLT প্রসেসর হলো একটি সফটওয়্যার টুল যা XSLT স্টাইলশীট এবং XML ডকুমেন্টকে নিয়ে রূপান্তর প্রক্রিয়া সম্পন্ন করে। যেমন: Apache Xalan, Saxon, বা JDK এর অন্তর্ভুক্ত XSLT প্রসেসর।
  3. XPath:
    • XPath ব্যবহার করে XML ডকুমেন্টে নির্দিষ্ট উপাদান বা ডেটা অংশ সনাক্ত করা হয়। XSLT স্টাইলশীটে XPath এক্সপ্রেশন ব্যবহৃত হয় XML থেকে ডেটা এক্সট্র্যাক্ট করার জন্য।

XSLT এর কাজের উদাহরণ:

ধরা যাক, আপনার কাছে একটি XML ডকুমেন্ট রয়েছে এবং আপনি সেটি HTML ফরম্যাটে রূপান্তর করতে চান। XSLT স্টাইলশীটটি সেই রূপান্তর প্রক্রিয়া কনফিগার করবে, এবং ফলস্বরূপ আপনি HTML পেজ পাবেন যা XML ডেটা প্রদর্শন করবে।

উদাহরণ:

XML ডকুমেন্ট:

<bookstore>
  <book>
    <title>Java Programming</title>
    <author>John Doe</author>
  </book>
  <book>
    <title>Learning XML</title>
    <author>Jane Smith</author>
  </book>
</bookstore>

XSLT স্টাইলশীট:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:template match="/bookstore">
    <html>
      <body>
        <h2>Bookstore</h2>
        <table border="1">
          <tr>
            <th>Title</th>
            <th>Author</th>
          </tr>
          <xsl:for-each select="book">
            <tr>
              <td><xsl:value-of select="title" /></td>
              <td><xsl:value-of select="author" /></td>
            </tr>
          </xsl:for-each>
        </table>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

ফলস্বরূপ HTML:

<html>
  <body>
    <h2>Bookstore</h2>
    <table border="1">
      <tr>
        <th>Title</th>
        <th>Author</th>
      </tr>
      <tr>
        <td>Java Programming</td>
        <td>John Doe</td>
      </tr>
      <tr>
        <td>Learning XML</td>
        <td>Jane Smith</td>
      </tr>
    </table>
  </body>
</html>

XSLT এর সুবিধা:

  1. পোর্টেবিলিটি: XSLT স্টাইলশীটগুলি যেকোনো XML ডেটার সাথে কাজ করতে পারে, যা অ্যাপ্লিকেশন বা প্ল্যাটফর্মের ওপর নির্ভরশীল নয়।
  2. স্ট্যান্ডার্ডাইজেশন: XSLT একটি স্ট্যান্ডার্ড প্রযুক্তি, যা সমস্ত আধুনিক ব্রাউজার এবং XML পার্সিং টুল দ্বারা সমর্থিত।
  3. ব্যবহারযোগ্যতা: XML ডেটার প্রদর্শন ফরম্যাট কাস্টমাইজ করা এবং রূপান্তর করা সহজ।

এটি মূলত XML ডেটাকে উপস্থাপনযোগ্য এবং প্রক্রিয়াজাতকরণের জন্য কার্যকরভাবে রূপান্তর করার জন্য ব্যবহৃত হয়।

Content added By

XML ডেটা ট্রান্সফর্মেশন এর জন্য XSLT এর ব্যবহার

50
50

Java তে XML ডেটা ট্রান্সফর্মেশন করতে XSLT (Extensible Stylesheet Language Transformations) ব্যবহার করা হয়। XSLT একটি ভাষা যা XML ডকুমেন্টকে বিভিন্ন ফরম্যাটে রূপান্তরিত করতে সাহায্য করে, যেমন HTML, টেক্সট, বা অন্য XML ফরম্যাট। Java তে XSLT ট্রান্সফর্মেশন ব্যবহারের জন্য একটি শক্তিশালী API প্রদান করা হয়েছে, যা XML ডেটাকে সহজেই প্রক্রিয়াজাত করতে সাহায্য করে।

XSLT এর ব্যবহার Java তে:

Java তে XSLT ব্যবহার করার জন্য মূলত Transformer ক্লাসটি ব্যবহৃত হয়, যা javax.xml.transform প্যাকেজের অংশ। এখানে XML ডেটাকে XSLT স্টাইলশীটের মাধ্যমে রূপান্তর করা হয়।

XSLT ট্রান্সফর্মেশন করতে সাধারণত এই পদক্ষেপগুলি অনুসরণ করা হয়:

  1. XML ডকুমেন্ট এবং XSLT স্টাইলশীট লোড করা
  2. XSLT স্টাইলশীট প্রক্রিয়াজাত করা
  3. XML ডকুমেন্টকে XSLT স্টাইলশীটের মাধ্যমে রূপান্তর করা

উদাহরণ:

ধরা যাক, আমাদের একটি XML ডকুমেন্ট আছে যা প্রোডাক্টের তথ্য ধারণ করে এবং আমরা এটি HTML ফরম্যাটে রূপান্তর করতে চাই।

1. XML ডকুমেন্ট (input.xml)

<products>
    <product>
        <name>Smartphone</name>
        <price>500</price>
    </product>
    <product>
        <name>Laptop</name>
        <price>1000</price>
    </product>
</products>

2. XSLT স্টাইলশীট (style.xsl)

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                version="1.0">

    <xsl:template match="/">
        <html>
            <body>
                <h2>Product List</h2>
                <table border="1">
                    <tr>
                        <th>Name</th>
                        <th>Price</th>
                    </tr>
                    <xsl:for-each select="products/product">
                        <tr>
                            <td><xsl:value-of select="name"/></td>
                            <td><xsl:value-of select="price"/></td>
                        </tr>
                    </xsl:for-each>
                </table>
            </body>
        </html>
    </xsl:template>

</xsl:stylesheet>

3. Java কোড (XSLT Transformation)

import javax.xml.transform.*;
import javax.xml.transform.stream.*;
import java.io.*;

public class XSLTExample {
    public static void main(String[] args) throws Exception {
        // XML ডকুমেন্ট এবং XSLT স্টাইলশীট লোড করা
        File xmlFile = new File("input.xml");
        File xslFile = new File("style.xsl");

        // XSLT স্টাইলশীট এবং XML ডকুমেন্ট প্রক্রিয়াজাত করা
        StreamSource xmlSource = new StreamSource(xmlFile);
        StreamSource xslSource = new StreamSource(xslFile);

        // ট্রান্সফর্মার তৈরি
        TransformerFactory transformerFactory = TransformerFactory.newInstance();
        Transformer transformer = transformerFactory.newTransformer(xslSource);

        // আউটপুট ফাইল নির্ধারণ
        StreamResult result = new StreamResult(new File("output.html"));

        // XML ডকুমেন্টকে XSLT স্টাইলশীট দিয়ে রূপান্তর করা
        transformer.transform(xmlSource, result);

        System.out.println("Transformation complete. Check the output.html file.");
    }
}

ব্যাখ্যা:

  1. StreamSource ব্যবহার করে XML এবং XSLT স্টাইলশীট ফাইলগুলি লোড করা হয়।
  2. TransformerFactory থেকে একটি ট্রান্সফর্মার তৈরি করা হয়।
  3. transform মেথড ব্যবহার করে XML ডেটাকে XSLT স্টাইলশীটের মাধ্যমে রূপান্তরিত করা হয়।
  4. আউটপুটটি একটি HTML ফাইল হিসেবে সংরক্ষিত হয়।

আউটপুট (output.html):

<html>
    <body>
        <h2>Product List</h2>
        <table border="1">
            <tr>
                <th>Name</th>
                <th>Price</th>
            </tr>
            <tr>
                <td>Smartphone</td>
                <td>500</td>
            </tr>
            <tr>
                <td>Laptop</td>
                <td>1000</td>
            </tr>
        </table>
    </body>
</html>

এভাবে Java তে XSLT ব্যবহার করে XML ডেটা ট্রান্সফর্মেশন করা যায়। XSLT স্টাইলশীট দিয়ে XML ডেটাকে বিভিন্ন ফরম্যাটে রূপান্তরিত করা সম্ভব হয়, যেমন HTML, CSV, PDF, বা অন্য কোনো XML ফরম্যাট।

Content added By

XSLT এর মাধ্যমে XML ডেটা HTML, JSON এ রূপান্তর

44
44

Java তে XSLT (Extensible Stylesheet Language Transformations) ব্যবহার করে XML ডেটাকে HTML বা JSON এ রূপান্তর করা সম্ভব। XSLT একটি শক্তিশালী প্রযুক্তি যা XML ডকুমেন্টকে বিভিন্ন ফরম্যাটে রূপান্তর করার জন্য ব্যবহৃত হয়। এই প্রক্রিয়ায় XSLT স্টাইলশীট ব্যবহার করা হয় যা XML ডেটাকে কাঙ্খিত ফরম্যাটে রূপান্তর করে।

নিচে XSLT এর মাধ্যমে XML ডেটাকে HTML এবং JSON এ রূপান্তর করার পদ্ধতি বর্ণনা করা হলো।

1. XML থেকে HTML এ রূপান্তর (Using XSLT)

HTML ফরম্যাটে রূপান্তরের জন্য, প্রথমে একটি XSLT স্টাইলশীট তৈরি করতে হবে, যা XML ডকুমেন্টের কাঠামো অনুযায়ী HTML টেমপ্লেট তৈরি করবে।

উদাহরণ:

XML ফাইল (data.xml):

<employees>
    <employee>
        <name>John Doe</name>
        <position>Software Developer</position>
        <salary>50000</salary>
    </employee>
    <employee>
        <name>Jane Smith</name>
        <position>Project Manager</position>
        <salary>75000</salary>
    </employee>
</employees>

XSLT ফাইল (transform.xsl):

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="html" indent="yes"/>
    
    <xsl:template match="/">
        <html>
            <head>
                <title>Employee List</title>
            </head>
            <body>
                <h2>Employees</h2>
                <table border="1">
                    <tr>
                        <th>Name</th>
                        <th>Position</th>
                        <th>Salary</th>
                    </tr>
                    <xsl:for-each select="employees/employee">
                        <tr>
                            <td><xsl:value-of select="name"/></td>
                            <td><xsl:value-of select="position"/></td>
                            <td><xsl:value-of select="salary"/></td>
                        </tr>
                    </xsl:for-each>
                </table>
            </body>
        </html>
    </xsl:template>
</xsl:stylesheet>

Java কোড (XSLT Transformation to HTML):

import javax.xml.transform.*;
import javax.xml.transform.stream.*;
import java.io.*;

public class XmlToHtml {
    public static void main(String[] args) throws Exception {
        // XML and XSLT files
        String xmlFile = "data.xml";
        String xsltFile = "transform.xsl";
        
        // Create transformer factory
        TransformerFactory factory = TransformerFactory.newInstance();
        
        // Load XSLT file
        StreamSource xslt = new StreamSource(new File(xsltFile));
        Transformer transformer = factory.newTransformer(xslt);
        
        // Load XML file
        StreamSource xml = new StreamSource(new File(xmlFile));
        
        // Output to HTML file
        StreamResult result = new StreamResult(new File("output.html"));
        
        // Perform transformation
        transformer.transform(xml, result);
        
        System.out.println("Transformation completed. Check output.html.");
    }
}

এই কোডটি XML ডেটাকে HTML ফরম্যাটে রূপান্তর করে এবং একটি HTML ফাইল তৈরি করে।

2. XML থেকে JSON এ রূপান্তর (Using XSLT)

XML থেকে JSON এ রূপান্তর করতে XSLT ব্যবহার করা সম্ভব, তবে এটি কিছুটা জটিল হতে পারে, কারণ JSON-এর স্ট্রাকচার XML-এর তুলনায় ভিন্ন। JSON ফরম্যাটে রূপান্তর করার জন্য XSLT-এ একটু বেশি কাস্টমাইজেশন প্রয়োজন।

উদাহরণ:

XML ফাইল (data.xml):

<employees>
    <employee>
        <name>John Doe</name>
        <position>Software Developer</position>
        <salary>50000</salary>
    </employee>
    <employee>
        <name>Jane Smith</name>
        <position>Project Manager</position>
        <salary>75000</salary>
    </employee>
</employees>

XSLT ফাইল (transformToJson.xsl):

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="text"/>

    <xsl:template match="/">
        <xsl:text>{ "employees": [</xsl:text>
        <xsl:for-each select="employees/employee">
            <xsl:text>{</xsl:text>
            <xsl:value-of select="concat('"name": "', name, '", "position": "', position, '", "salary": ', salary)"/>
            <xsl:text>}</xsl:text>
            <xsl:if test="position()!=last()"><xsl:text>,</xsl:text></xsl:if>
        </xsl:for-each>
        <xsl:text>]</xsl:text>
    </xsl:template>
</xsl:stylesheet>

Java কোড (XSLT Transformation to JSON):

import javax.xml.transform.*;
import javax.xml.transform.stream.*;
import java.io.*;

public class XmlToJson {
    public static void main(String[] args) throws Exception {
        // XML and XSLT files
        String xmlFile = "data.xml";
        String xsltFile = "transformToJson.xsl";
        
        // Create transformer factory
        TransformerFactory factory = TransformerFactory.newInstance();
        
        // Load XSLT file
        StreamSource xslt = new StreamSource(new File(xsltFile));
        Transformer transformer = factory.newTransformer(xslt);
        
        // Load XML file
        StreamSource xml = new StreamSource(new File(xmlFile));
        
        // Output to JSON file
        StreamResult result = new StreamResult(new File("output.json"));
        
        // Perform transformation
        transformer.transform(xml, result);
        
        System.out.println("Transformation completed. Check output.json.");
    }
}

এই কোডটি XML ডেটাকে JSON ফরম্যাটে রূপান্তর করে এবং একটি JSON ফাইল তৈরি করে।

সারাংশ:

  • XSLT হল একটি শক্তিশালী টুল যা XML ডেটাকে HTML, JSON অথবা অন্য যেকোনো কাঙ্খিত ফরম্যাটে রূপান্তর করার জন্য ব্যবহার করা যায়।
  • XML থেকে HTML রূপান্তর করতে, XSLT স্টাইলশীট তৈরি করতে হয় যা XML এর উপাদানগুলোকে HTML টেমপ্লেটে রূপান্তর করবে।
  • JSON রূপান্তর করতে, XSLT কাস্টমাইজেশন করা প্রয়োজন, যাতে XML উপাদানগুলো JSON অবজেক্টে সঠিকভাবে রূপান্তরিত হয়।

এভাবে Java এবং XSLT ব্যবহার করে XML ডেটাকে HTML এবং JSON ফরম্যাটে রূপান্তর করা সম্ভব।

Content added By

উদাহরণ সহ XSLT ব্যবহার

60
60

XSLT (Extensible Stylesheet Language Transformations) হল একটি ভাষা যা XML ডকুমেন্টকে অন্য ফরম্যাটে রূপান্তর করতে ব্যবহৃত হয়, যেমন HTML, টেক্সট, বা অন্য XML ফরম্যাট। Java তে XSLT ব্যবহার করার জন্য আমরা Transformer API ব্যবহার করি। এর মাধ্যমে XML ডকুমেন্টকে XSLT স্টাইলশীটের সাহায্যে একটি নির্দিষ্ট ফরম্যাটে রূপান্তর করা যায়।

এখানে একটি উদাহরণ দেখানো হয়েছে, যেখানে একটি XML ডকুমেন্টকে XSLT স্টাইলশীট ব্যবহার করে HTML ফরম্যাটে রূপান্তর করা হয়েছে।

উদাহরণ:

ধরা যাক, আমাদের একটি XML ডকুমেন্ট আছে যার নাম books.xml এবং একটি XSLT স্টাইলশীট transform.xsl রয়েছে, যার মাধ্যমে XML ডেটাকে HTML ফরম্যাটে রূপান্তর করতে হবে।

1. books.xml (XML ডকুমেন্ট)

<?xml version="1.0" encoding="UTF-8"?>
<library>
    <book>
        <title>Java Programming</title>
        <author>John Doe</author>
        <price>29.99</price>
    </book>
    <book>
        <title>XML Basics</title>
        <author>Jane Doe</author>
        <price>19.99</price>
    </book>
</library>

2. transform.xsl (XSLT স্টাইলশীট)

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="html" encoding="UTF-8"/>
    
    <xsl:template match="/library">
        <html>
            <head>
                <title>Library Book List</title>
            </head>
            <body>
                <h1>Books in the Library</h1>
                <table border="1">
                    <tr>
                        <th>Title</th>
                        <th>Author</th>
                        <th>Price</th>
                    </tr>
                    <xsl:for-each select="book">
                        <tr>
                            <td><xsl:value-of select="title"/></td>
                            <td><xsl:value-of select="author"/></td>
                            <td><xsl:value-of select="price"/></td>
                        </tr>
                    </xsl:for-each>
                </table>
            </body>
        </html>
    </xsl:template>
</xsl:stylesheet>

3. Java কোড - XSLT ট্রান্সফর্মেশন

import javax.xml.transform.*;
import javax.xml.transform.stream.*;
import java.io.*;

public class XSLTExample {
    public static void main(String[] args) throws Exception {
        // XML ফাইল এবং XSLT ফাইল লোড করা
        File xmlFile = new File("books.xml");
        File xslFile = new File("transform.xsl");

        // TransformerFactory তৈরি করা
        TransformerFactory factory = TransformerFactory.newInstance();
        
        // XSLT ফাইল থেকে Transformer তৈরি করা
        StreamSource xslStream = new StreamSource(xslFile);
        Transformer transformer = factory.newTransformer(xslStream);
        
        // XML ফাইল থেকে ইনপুট স্ট্রিম তৈরি করা
        StreamSource xmlStream = new StreamSource(xmlFile);
        
        // আউটপুট স্ট্রিম তৈরি করা (HTML আউটপুট)
        StreamResult result = new StreamResult(new File("output.html"));
        
        // XML ডকুমেন্টকে XSLT স্টাইলশীটের মাধ্যমে রূপান্তরিত করা
        transformer.transform(xmlStream, result);
        
        System.out.println("Transformation completed. Output saved to output.html");
    }
}

কোড ব্যাখ্যা:

  1. XML এবং XSLT ফাইল লোড করা: books.xml এবং transform.xsl ফাইল দুটি লোড করা হয়।
  2. TransformerFactory তৈরি করা: XSLT ট্রান্সফর্মেশন করার জন্য TransformerFactory ব্যবহার করা হয়।
  3. XSLT স্টাইলশীট থেকে Transformer তৈরি করা: StreamSource ব্যবহার করে XSLT ফাইল থেকে একটি Transformer তৈরি করা হয়।
  4. XML ডকুমেন্ট পার্স করা: StreamSource ব্যবহার করে XML ডকুমেন্ট থেকে একটি ইনপুট স্ট্রিম তৈরি করা হয়।
  5. ট্রান্সফর্মেশন সম্পন্ন করা: transformer.transform() মেথড ব্যবহার করে XML ডকুমেন্টটি XSLT স্টাইলশীটের মাধ্যমে রূপান্তরিত করা হয় এবং আউটপুটটি output.html ফাইলে সংরক্ষণ করা হয়।

আউটপুট (output.html):

<html>
    <head>
        <title>Library Book List</title>
    </head>
    <body>
        <h1>Books in the Library</h1>
        <table border="1">
            <tr>
                <th>Title</th>
                <th>Author</th>
                <th>Price</th>
            </tr>
            <tr>
                <td>Java Programming</td>
                <td>John Doe</td>
                <td>29.99</td>
            </tr>
            <tr>
                <td>XML Basics</td>
                <td>Jane Doe</td>
                <td>19.99</td>
            </tr>
        </table>
    </body>
</html>

এভাবে, Java ব্যবহার করে XSLT এর মাধ্যমে XML ডেটাকে HTML ফরম্যাটে রূপান্তর করা হয়েছে।

Content added By
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion