Makale Özeti

XML ve ilgili teknolojilere göz atmaya devam ediyoruz!

Makale


XSL (eXtensible Style Sheet Language) Giriş

XML dosyalarında HTML tag yapısına benzer tag yapısının olduğunu fakat farklı olarak bu tag’ları kendimizin tanımlayabiliceğimizi öğrenmiştik. Bu tag’lar bizim yada bir eşyanın adı da olabileceği için doğal olarak browser’ler bu tag tanımlarını anlayıp dataları gösteremeyeceklerdi… ışte bu noktada XML dosyalarını gösterebilmek için bir mekanizmaya gereksinim duyuldu: XSL.
XSL (Extensible Style Sheet Language), adından da anlaşıldığı gibi XML tabanlı bir style-sheet yaratma dilidir. XSL’i temel mantık olarak HTML sayfalarını formatlamakta kullanılan CSS ( Cascading Style Sheets) gibidir. Fakat fonksiyon olarak ikisi birbirinden önemli farklara sahiptir. CSS’ler HTML sayfalarının font renklerini, font ölçülerini ve tiplerini, sayfanın background rengini vs.. gibi tanımlamalar için bir style oluştururken, XSL bunlara ek olarak bir XML dosyasını bir HTML, bir WML(Wap dosya formatı) dosyaya yada daha başka bir text-based dosyaya çevirmek için kullanılır.
XSL dosyalarında biz output dosyasının nasıl bir biçimde olacağını belirlerken buna ek olarak datanın yer aldığı input XML dosyasınında ne olduğunuda belirleriz. Yani XSL şunu der : “ ıstediğin data şu dosyada şu yerde, al onu ve bana benim belirlediğim format ve şekilde göster…”
Görüldüğü gibi XSL, XML dosyalarını bir takım yöntemler kullanarak farklı formatlara çeviren bir dildir. ışte bu transform işlemleri sırasında bir takım ihtiyaçlar doğmuştur ve bu ihtiyaçlar doğrultusunda XSL’in şemsiye altında 3 farklı dil daha ortaya çıkmıştır. Bunlar;
- Bir transformasyon dili olan XSLT
- Bir dosya işleme dili olan Xpath
- XML dosyalarını göstermek için kullanılacak bir dil olan XSL Formatting Objects ‘ dir.
Genel olarak bu diller entegre biçimde kullanılır. XSLT; XML dosyalarını başka formattaki dosyalara çevirir yani transform işlemi yapar, XPath ile XML dosyaları üzerinde data bulma, sort yada filter gibi işlemler yapılır. Bunu SQL diline benzetebiliriz. XSL Formatting Objects ise CSS ler gibi bu datanın nasıl gözükeceğini belirler.
Bu dillerden ilk olarak değinilmesi gereken XSLT’dir. XSLT tam olarak bir programlama dilidir. Diğer programlama dillerinde olduğu gibi “for-each”,”if statement”, “variable” gibi özelliklere sahiptir. Ayrıca bunlara ek olarak Asp sayfalarında olduğu gibi script ekleme (xsl:script) yada başka bir dosyayı var olan dosyaya ekleme (xsl:include) gibi sayfaları etkinleştirici özelliklere de sahip bir dildir..
Makalenin başlığında olduğu gibi sizlerle XSL’e bir başlangıç yapalım dedim..Bundan sonra XSL’in en önemli kolu olan, ham dataların olduğu XML dosyalar üzerinde işlemler yapmamızı sağlayan XSLT dilini daha geniş bir şekilde ele alacağız. Örneklerle XSL ve XSLT’nin ne demek olduğunu daha iyi anlayacağız…
Mehmet Nuri ÇANKAYA
nuri.cankaya@aspnedir.com