XSLT (eXtensible Stylesheet Language Transformations), e-Defter XML dosyalarını okunabilir HTML formatına dönüştürmek için kullanılan temel teknolojidir. Bu rehberde XSLT'nin ne olduğunu, e-Defter dönüşümünde nasıl kullanıldığını ve özel XSLT dosyası yüklemeyi anlatacağız.
XSLT Nedir?
XSLT, XML belgelerini farklı formatlara dönüştürmek için kullanılan bir biçimlendirme dilidir. e-Defter bağlamında, XSLT dosyaları karmaşık XML verilerini insan tarafından okunabilir HTML sayfalarına çevirir. Bu süreç olmadan XML dosyaları doğrudan açıldığında sadece kodlar görünür.
e-Defter XSLT Dosyaları
GİB (Gelir İdaresi Başkanlığı), e-Defter standartlarında 4 temel XSLT dosyası tanımlar:
yevmiye.xslt— Yevmiye defteri dönüşüm şablonukebir.xslt— Kebir (Büyük Defter) dönüşüm şablonuberat.xslt— Berat dönüşüm şablonudefterraporu.xslt— Defter raporu dönüşüm şablonu
şeklinde başında belirtir. Görüntüleyici bu referansı okuyarak doğru şablonu otomatik seçer.
Dönüşüm Süreci Nasıl Çalışır?
e-Defter görüntüleme süreci şu adımlardan oluşur:
- XML dosyası okunur: Tarayıcı, XML dosyasını parse eder
- XSLT referansı tespit edilir:
işleme talimatından XSLT dosya adı çıkarılır - XSLT dosyası yüklenir: Önce kullanıcı tarafından yüklenen özel XSLT aranır, bulunamazsa varsayılan XSLT kullanılır
- Dönüşüm gerçekleştirilir: XSLTProcessor ile XML + XSLT → HTML dönüşümü yapılır
- Sonuç gösterilir: Oluşturulan HTML iframe içinde görüntülenir
Varsayılan XSLT Dosyaları
e-Defter Görüntüleyici, GİB standartlarına uygun 4 varsayılan XSLT dosyasını otomatik olarak sağlar. Kullanıcının ayrıca XSLT dosyası yüklemesi gerekmez. Sistem şu dosyaları kullanır:
- yevmiye.xslt: Yevmiye defteri için tablo formatında görüntüleme sağlar. Hesap kodu, hesap adı, borç/alacak tutarları ve toplamları gösterir.
- kebir.xslt: Kebir defteri için hesap bazında görüntüleme sağlar. Açılış bakiyesi, dönem borç/alacak toplamları ve kapanış bakiyesi gösterir.
- berat.xslt: Berat dosyası için özet görüntüleme sağlar. Mükellef bilgileri, dönem ve onay detayları gösterir.
- defterraporu.xslt: Defter raporu için genel özet görüntüleme sağlar.
Özel XSLT Dosyası Yükleme
Kurumunuza özel XSLT dosyalarınız varsa, bunları da yükleyebilirsiniz. Özel XSLT yükleme adımları:
- Dosya yükleme ekranında XML dosyalarınızın yanında .xslt dosyalarını da seçin
- Sistem, XML dosyasındaki
referansına bakarak doğru XSLT'yi otomatik eşleştirir - Eşleşme bulunamazsa varsayılan XSLT dosyası kullanılır
XSLT Dosyasının İç Yapısı
Bir XSLT dosyası temel olarak şu bileşenleri içerir:
— Şablon tanımlamaları (her XML elemanı için hangi HTML üretileceği)— XML verilerini çeker ve HTML'e yerleştirir— Tekrarlayan kayıtlar için döngü oluştururve— Koşullu görüntüleme— Değişken tanımlamaları
XSLT Dönüşümünde Karşılaşılan Sorunlar
1. XSLT Dosyası Bulunamadı
XML dosyasında belirtilen XSLT dosyası yüklenmemişse veya varsayılan olarak mevcut değilse hata oluşur. Çözüm: İlgili XSLT dosyasını da yüklemek.
2. Geçersiz XML Formatı
XML dosyası GİB standartlarına uygun değilse XSLT dönüşümü başarısız olabilir. Dosyanın doğru formatta olduğundan emin olun.
3. Büyük Dosya Boyutları
Büyük XML dosyalarında (100+ MB) dönüşüm süresi uzayabilir. Bu durumda sabırla beklemeniz önerilir.
4. Karakter Kodlama Sorunları
XSLT dosyalarında karakter eşleme tabloları () bulunur. Bu tablolar özel karakterlerin doğru görüntülenmesini sağlar.
e-Defterinizi Hemen Görüntüleyin
XSLT dönüşümü otomatik olarak yapılır. Dosyanızı sürükleyip bırakın, gerisini halledelim.
Görüntüleyiciyi Aç →Sıkça Sorulan Sorular
XSLT nedir?
XSLT (eXtensible Stylesheet Language Transformations), XML dosyalarını farklı formatlara (HTML, PDF vb.) dönüştürmek için kullanılan bir dildir. e-Defterlerde XML verilerini okunabilir HTML formatına çevirmek için kullanılır.
e-Defter XSLT dosyaları nereden alınır?
GİB standart XSLT dosyaları e-Defter paketi ile birlikte gelir. Ayrıca edefter.solto.net adresindeki görüntüleyici varsayılan XSLT dosyalarını otomatik olarak sağlar.
Özel XSLT dosyası yükleyebilir miyim?
Evet, edefter.solto.net'de dosya yükleme ekranında özel XSLT dosyanızı da seçerek yükleyebilirsiniz. Sistem XML dosyasındaki referansa göre doğru XSLT'yi otomatik eşleştirir.
XSLT dönüşümü neden başarısız olur?
XSLT dönüşümü genellikle şu nedenlerle başarısız olur: XSLT dosyasının eksik olması, XML formatının GİB standartlarına uygun olmaması veya karakter kodlama sorunları.