উদাহরণ সহ XSLT প্রসেসিং

XSLT (Extensible Stylesheet Language Transformations) - অ্যাপাচি জারসেস (Apache Xerces) - Java Technologies

320

Apache Xerces হল একটি XML প্যার্সিং লাইব্রেরি যা XML ডেটা প্রসেস করতে সহায়ক। তবে XSLT (Extensible Stylesheet Language Transformations) প্রসেসিংয়ের জন্য Apache Xerces সরাসরি সমর্থন না দিলেও, XSLT প্রসেসিংয়ের জন্য আপনি Xalan ব্যবহার করতে পারেন, যা Apache প্রকল্পের একটি অংশ। XSLT একটি শক্তিশালী টুল যা XML ডেটাকে অন্য XML বা HTML ফরম্যাটে রূপান্তর করতে ব্যবহৃত হয়।

এখানে, আমরা Apache Xerces এবং Xalan ব্যবহার করে XSLT প্রসেসিং এর একটি উদাহরণ দেখব। আমরা একটি XML ডকুমেন্টকে XSLT স্টাইলশীট ব্যবহার করে রূপান্তর করব।


1. XSLT Example:

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

XML File Example (employee.xml)

<?xml version="1.0" encoding="UTF-8"?>
<employees>
    <employee>
        <name>John Doe</name>
        <age>30</age>
        <department>Engineering</department>
    </employee>
    <employee>
        <name>Jane Smith</name>
        <age>25</age>
        <department>Marketing</department>
    </employee>
</employees>

XSLT Stylesheet Example (employee.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>Employee Information</h2>
                <table border="1">
                    <tr>
                        <th>Name</th>
                        <th>Age</th>
                        <th>Department</th>
                    </tr>
                    <xsl:for-each select="employees/employee">
                        <tr>
                            <td><xsl:value-of select="name"/></td>
                            <td><xsl:value-of select="age"/></td>
                            <td><xsl:value-of select="department"/></td>
                        </tr>
                    </xsl:for-each>
                </table>
            </body>
        </html>
    </xsl:template>
</xsl:stylesheet>

এটি একটি XSLT Stylesheet যা employee.xml ফাইলের ডেটাকে HTML টেবিল ফরম্যাটে রূপান্তর করবে।


2. XSLT প্রসেসিং কোড:

এখন, Apache Xerces এবং Xalan ব্যবহার করে XML ফাইলকে XSLT স্টাইলশীট অনুযায়ী প্রসেস করতে হবে।

Maven Dependency (যদি Maven ব্যবহার করেন):

<dependency>
    <groupId>org.apache.xalan</groupId>
    <artifactId>xalan</artifactId>
    <version>2.7.2</version>
</dependency>

<dependency>
    <groupId>org.apache.xmlgraphics</groupId>
    <artifactId>batik-bridge</artifactId>
    <version>1.14</version>
</dependency>

Java কোড:

import org.apache.xalan.transformer.TransformerImpl;
import org.apache.xml.transform.*;
import org.apache.xml.transform.stream.StreamResult;
import org.apache.xml.transform.stream.StreamSource;

import java.io.File;

public class XSLTExample {
    public static void main(String[] args) {
        try {
            // XSLT প্রসেসিংয়ের জন্য ট্রান্সফরমার ফ্যাক্টরি তৈরি করা
            TransformerFactory transformerFactory = TransformerFactory.newInstance();
            Transformer transformer = transformerFactory.newTransformer(new StreamSource("src/employee.xsl"));

            // XML ফাইল (employee.xml) কে প্রসেস করা
            StreamSource xmlSource = new StreamSource(new File("src/employee.xml"));

            // আউটপুট হিসেবে HTML তৈরি করা
            StreamResult result = new StreamResult(System.out);
            
            // XSLT প্রসেসিং
            transformer.transform(xmlSource, result);

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

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

  1. TransformerFactory: TransformerFactory.newInstance() মেথড ব্যবহার করে আমরা XSLT প্রসেসিংয়ের জন্য Transformer তৈরি করি। StreamSource ব্যবহার করে আমরা XSLT স্টাইলশীট লোড করি।
  2. StreamSource: StreamSource ব্যবহার করা হয় XML এবং XSLT ফাইল লোড করতে। প্রথম প্যারামিটার হিসেবে XSLT ফাইল এবং দ্বিতীয় প্যারামিটার হিসেবে XML ফাইল পাঠানো হয়।
  3. StreamResult: এটি আউটপুট হিসেবে HTML প্রিন্ট করতে ব্যবহৃত হয়। এখানে System.out ব্যবহার করে আউটপুট কনসোলে প্রদর্শন করা হচ্ছে।
  4. transform(): transform() মেথডটি XML ডেটাকে XSLT স্টাইলশীট অনুযায়ী প্রসেস করে আউটপুট তৈরি করে।

3. আউটপুট:

এখন, যখন আপনি কোডটি রান করবেন, এটি employee.xml ফাইলের ডেটাকে employee.xsl স্টাইলশীট অনুযায়ী HTML টেবিলের ফরম্যাটে রূপান্তর করবে এবং আউটপুট হবে:

<html>
    <body>
        <h2>Employee Information</h2>
        <table border="1">
            <tr>
                <th>Name</th>
                <th>Age</th>
                <th>Department</th>
            </tr>
            <tr>
                <td>John Doe</td>
                <td>30</td>
                <td>Engineering</td>
            </tr>
            <tr>
                <td>Jane Smith</td>
                <td>25</td>
                <td>Marketing</td>
            </tr>
        </table>
    </body>
</html>

এখানে employee.xml এর ডেটা employee.xsl স্টাইলশীট দ্বারা HTML টেবিল ফরম্যাটে রূপান্তরিত হয়েছে।


4. সারাংশ

Apache Xerces এবং Xalan ব্যবহার করে XSLT প্রসেসিং একটি কার্যকর উপায় XML ডেটাকে রূপান্তর করতে। এখানে আমরা দেখলাম কিভাবে একটি XML ফাইল এবং XSLT স্টাইলশীট ব্যবহার করে XML ডেটাকে HTML ফরম্যাটে রূপান্তর করা যায়। XSLT একটি শক্তিশালী টুল যা XML ডেটা প্রসেসিং এবং রূপান্তরের জন্য খুবই কার্যকর। Xalan ব্যবহার করে XSLT প্রসেসিংকে সহজ এবং দ্রুত করা যায়।

Content added By
Promotion

Are you sure to start over?

Loading...