XSL XML-failist andmete eraldamiseks on mitmeid vahendeid. Üheks levinumaks tekstiliste andmete eraldamise võimaluseks on XSL-i nimeline keel. Tegemist on samuti XML-i reegleid järgiva dokumendiga, elementide kohta aga kirjas, mida igaüks tähendab ning nende käskluste järgi on siis võimalik kõrvale antud XML- failist sobivaid andmeid välja küsida. Järgneva XSL-faili ülesandeks on inimeste andmetega failist välja küsida esimene ning viimane eesnimi. Nagu aga näha, tuleb tulemuseni jõudmiseks kirjutada õige mitu rida ning muudki toimetada. Kõigepealt XSL-faili analüüs. Et XSL on tavaline XML-reeglite järgi kirjutatud fail, siis peab esimeseks reaks paratamatult olema XMLi tüübideklaratsioon. See deklaratsioon peab hakkama faili täiesti algusest, see tähendab, et isegi vaba rida ega tühikut ei deklaratsioonirea ees olla. Muidu võib faili töötlev programm hätta jääda. Järgnevalt tuleb element määramaks, et selle sees olevaid käske võib käsitleda XSL-i programmeerimiskeele käskudena. Atribuut xmlns:xsl ja järgnev URL teatavad, et kõik järgnevad xsl: algusega elemendid kuuluvad URLina näidatud konstandi määratud nimeruumi ning ei saa sealtkaudu muude elementidega segamini minna. Kodeeringut määrav parameeter teatab, millisel kujul soovitakse tulemust saada. Käsklus pole hädavajalik, kuid vaikimisi väljastatav kahebaidiste tähtedega UTF-16 võib ühebaidiste tähtedega redaktorist lugedes keerukaks osutuda. Kaldkriips elemendi lõpu juures tähistas, et elemendil enam eraldi lõpukäsklust pole, kõik vajalik on siinsamas kirjas. Edasine on juba rohkem andmetöötlusega seotud. Käsklust võib võrrelda alustava alamprogrammiga programmeerimiskeeltes, nagu näiteks main-meetodiga C-s või Javas. Kui soovida vaid lihtsat teksti väljastada, siis kõik siinsesse elementi harilikult kirjutatu väljastatakse otse XML-i ja XSLi ühendamisel tekkivasse väljundisse. Et aga XSL on loodud XML-faili andmete põhjal sobiva väljundi kokkupanekuks, siis saab siin vajalikust kohast andmeid küsida. Element nimega xsl:value-of võimaldab oma select-atribuudis andmeid küsida ning vajadusel ka nende põhjal miskit kokku arvutada. XMLi faili andmete poole saab pöörduda elementide nime järgi. Kaldkriips algul tähendab, et alustatakse juurelemendist; inimene[1] ütleb, et järjestikku paiknevatesti inimestest küsitakse esimese andmeid, praegusel juhul tema eesnime väärtust. Ning jällegi elemendi lõpus kaldkriips näitamaks, et xsl:value-of ei vaja eraldi lõpukäsklust. Nagu tõlkides aimata võib, annab last() loetelu elementide arvu, ehk kokkuvõttes kätte viimase elemendi. /inimesed/inimene[last()]/eesnimi Ning edasi siis tuleb kõik lahti jäänud elemendid lõpetada. Nüüd siis esimeseks näiteks toodud stiililehe kood tervikuna silma ette. Esimene:; Viimane: Käivitamine Java abil Valmis kirjutatud XSLi fail võib sama rahulikult kettal seista nagu iga muu fail. Faili sisust saab kasu vaid juhul, kui miski programmi abil omavahel ühendada XML- ning XSL-fail. Vastavad vahendid on olemas mitme programmeerimiskeele juures. Samuti on loodud mitmeid käsurealt ja mujaltki käivitatavaid vahendeid, mille ülesandeks XSL-i kujunduse ning XML-i andmete põhjal soovitud tulemus välja küsida. Java keeles saab sellega hakkama objekt tüübist Transformer, millele tuleb siis ette anda nii sisendandmed kui voog, kuhu tulemused saata. Alates versioonist 1.4 on XMLi vahendid standardkomplekti sisse paigutatud ning piisab vaid sobivate pakettide impordist. Et edaspidi tarvidust mitmesuguste nimedega faile ühendada, siis ei kirjutata failinimesid mitte koodi sisse, vaid palutakse need eraldi käsurealt sisestada. Algusesse ka väikene seletus juhuks kui kasutajal pole programmikoodi käepärast või tahab ta lihtsalt mugavamalt teada, mis parameetrid sisestada tuleb. System.err'i erisuseks System.out'iga võrreldes on väljatrükk ka juhul, kui tavaväljund toruga kusagile mujale suunatakse. import javax.xml.transform.*; import javax.xml.transform.stream.*; import java.io.*; public class XSLMuundur{ public static void main(String argumendid[]) throws Exception{ if(argumendid.length!=3){ System.err.println("Kasuta kujul java XSLMuundur andmefail.xml muundefail.xsl tulemusfail.html"); System.exit(0); } Transformer tolkija=TransformerFactory.newInstance(). newTransformer(new StreamSource(argumendid[1])); tolkija.transform( new StreamSource(argumendid[0]), new StreamResult(new FileOutputStream(argumendid[2])) ); } } Kui kood kompileeritud, võib sella käima panna. E:\kasutaja\jaagup\xml>java XSLMuundur inimesed.xml inimesed1.xsl tulemus.txt Ning loodud tekstifaili sisu piiludes saab programmi töö tulemusi imetleda. E:\kasutaja\jaagup\xml>more tulemus.txt Esimene:Juku; Viimane:Oskar Tahtes väljundit otse ekraanile suunata, piisab DOS-i keskkonna puhul määramaks väljundfaili nimeks con. E:\kasutaja\jaagup\xml>java XSLMuundur inimesed.xml inimesed1.xsl con Esimene:Juku; Viimane:Oskar Käivitamine Visual Studio abil Kui parajasti tuttav või käepärast .NET ja ASP.NET veebiserver näiteks Visual Studio Web Developeri näol, siis ka seal saab suhteliselt vähese vaevaga panna XSLi XMList andmeid võtma ja välja näitama. Töö alustamiseks pärast käivitamist on soovitav luua uus veebilehestik (File -> New Web Site). Edasi tasuks sinna panna XML-kujuline andmefail ning XSLT-muundefail. Ning et tulemust on mugav vaadata genereeritaval veebilehel, siis on vaja ka veebivormi (.aspx-laiendiga). XML- ja XSL-fail võivad eelmisega sarnased olla. Veebivormi sobivale kohale tasuks panna aga asp:Xml-element, mis määrab, kust andmed võtta ning millise muundamise teel nad lehele paigutada. Näiteks Ja kogu aspx-fail siis kujul näiteks <%@ Page Language="C#" %> Andmete leht
Kui nüüd kõik komponendid üles leitakse, siis võib lehe käivitamise peale ilusti tulemust näha, kus kaks nime veebilehele sobivatesse kohtadesse paigutatud.