Junior
XSLT nədir?
sobes.tech Süni İntellekt
AI-dan cavab
XSLT (Genişləndirilə bilən Üslublar Səhifəsi Dili) — XML sənədlərinin çevrilməsi üçün istifadə olunan bir dildir. XML-i HTML, başqa XML və ya sadə mətn kimi digər formatlara çevirmək üçün istifadə olunur və XSLT üslublar cədvəlində təsvir olunan qaydaları tətbiq edir.
Əsas anlayışlar:
- XSLT üslublar cədvəli: Çevrilmə qaydalarını ehtiva edən XML sənədi.
- Şablonlar (Templates): Əsas qayda blokları. Mənbə XML elementləri və ya atributları ilə uyğunlaşır və onları necə çevirmək lazım olduğunu müəyyən edir.
- XPATH: XML sənədində düyünləri seçmək üçün sorğu dili. XSLT-də qaydaları tətbiq etmək üçün hansı XML hissələrinə tətbiq ediləcəyini müəyyən etməkdə istifadə olunur.
- XSLT prosessoru: Mənbə XML və XSLT üslublar cədvəlini oxuyaraq nəticəni yaradan proqram.
Java, JAXP (Java API for XML Processing) vasitəsilə daxili XSLT dəstəyinə malikdir.
XML-dən HTML-ə sadə XSLT çevirmə nümunəsi:
Mənbə XML:
<kitablar>
<kitab id="1">
<başlıq>Usta və Margarita</başlıq>
<müəllif>Bulgakov M.</müəllif>
</kitab>
<kitab id="2">
<başlıq>Vətən və Sülh</başlıq>
<müəllif>Tolstoy L.</müəllif>
</kitab>
</kitablar>
XSLT üslublar cədvəli (məsələn, kitab.xsl):
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/kitablar">
<html>
<head>
<title>Kitabların Siyahısı</title>
</head>
<body>
<h1>Kitabların Siyahısı</h1>
<ul>
<xsl:apply-templates select="kitab"/>
</ul>
</body>
</html>
</xsl:template>
<xsl:template match="kitab">
<li>
<b><xsl:value-of select="başlıq"/></b>, Müəllif: <xsl:value-of select="müəllif"/>
</li>
</xsl:template>
</xsl:stylesheet>
Java kodu ilə JAXP istifadə edərək çevirmə:
import javax.xml.transform.*;
import javax.xml.transform.stream.*;
import java.io.*;
public class XSLTExample {
public static void main(String[] args) {
try {
// TransformerFactory yaradın
TransformerFactory factory = TransformerFactory.newInstance();
// XSLT üslublar cədvəlini yükləyin
Source xslt = new StreamSource(new File("kitab.xsl"));
Transformer transformer = factory.newTransformer(xslt);
// Mənbə XML-i yükləyin
Source xml = new StreamSource(new File("kitablar.xml"));
// Çıxış axını təyin edin
Result result = new StreamResult(new File("output.html"));
// Çevirməni həyata keçirin
transformer.transform(xml, result);
System.out.println("Çevirmə tamamlandı. Nəticə output.html faylında saxlanıldı.");
} catch (TransformerConfigurationException e) {
e.printStackTrace();
} catch (TransformerException e) {
e.printStackTrace();
}
}
}
XSLT, veb inkişafında (XML-dən HTML yaratmaq və göstərmək üçün), məlumatların inteqrasiyasında və XML mesajlarının işlənməsində geniş istifadə olunur.