XSL Dönüşümleri (XSLT) Sürüm 1.0
ÖncekiYukarıSonraki

14 Eklentiler

İçindekiler

    14.1 Eklenti Elemanlar
    14.2 Eklenti İşlevler

XSLT iki çeşit eklentiye izin verir: eklenti elemanlar ve eklenti işlevler.

XSLT'nin bu sürümü eklentilerin gerçeklenimlerini tanımlayan bir mekanizma sağlamaz. Bu yüzden, bir XSLT biçembendinin XSLT işlemciler arasında taşınabilir olması gerekiyorsa, böyle eklentileri kullanmaması gerekir. XSLT, bir XSLT biçembendinin, bir XSLT işlemcinin belli bir eklentiye desteği olup olmadığını saptamasını, eğer yoksa ne olacağını belirtilmesini sağlayacak mekanizmaları sağlar. Eğer bir XSLT biçembendi bu mekanizmaları kullanmakta dikkatliyse, eklentilerin getirilerinden yararlanması mümkün olacak ve herhangi bir XSLT gerçeklenimi ile hala çalışabilecektir.

14.1 Eklenti Elemanlar

Eleman eklenti mekanizması isim-alanlarının eklenti isim-alanları olarak tasarlanmasını mümkün kılar. Bir isim-alanı bir eklenti isim-alanı olarak tasarlanmışsa ve bu isim-alanından bir eleman bir örneklenimde yer alıyorsa, bu eleman bir birebir hedef eleman olmaktan ziyade bir yönerge olarak ele alınır. İsim-alanı yönergenin anlambilgisini belirler.

Not:
Bir xsl:stylesheet elemanının çocuğu olmayan bir eleman bir örneklenimde yer almayacağından XSLT-dışı tepe-seviyeden elemanlar burada tanımlanan eklenti elemanlarından sayılmazlar ve bu bölümdeki hiçbir şey onlara uygulanmaz.

Bir isim-alanı, bir eklenti isim-alanı olarak xsl:stylesheet elemanının extension-element-prefixes özniteliği veya bir birebir hedef elemanın xsl:extension-element-prefixes özniteliği ya da eklenti elemanı kullanılarak belirtilebilir. Bu özniteliklerin ikisi de önekleri boşluk ayraçlı bir liste olarak kabul ederler. Bu öneklerin herbiri bir eklenti isim-alanı olarak atanır. extension-element-prefixes veya xsl:extension-element-prefixes özniteliğinde belirtilmiş bir önek için bir isim-alanı bildiriminin olmaması bir hatadır. Öntanımlı isim-alanı (xmlns ile bildirilen) önek listesinde #default ismiyle bir eklenti isim-alanı olarak belirtilebilir. Bir isim-alanının eklente isim-alanı olarak atanması extension-element-prefixes veya xsl:extension-element-prefixes özniteliğinin kullanıldığı elemanın kökü olduğu alt ağaçta etkilidir; bir xsl:stylesheet elemanının kökü olduğu bir alt ağaç ithal edilmiş veya içerilmiş bir biçembent içermez.

Eğer bir XSLT işlemci belli bir eklenti elemanının gerçeklenimine sahip değilse, element-available işlevi bu eleman ismi için olumsuz sonuç döndürmelidir. Böyle bir eklenti elemanı nesnelleştirildiğinde XSLT işlemci Son Çare bölümünde bahsedildiği gibi bir son çareye başvurmalıdır. Bir XSLT işlemci bir örneklenim gerçeklenmemiş bir eklenti elemanı içermekte olduğundan böyle bir durumda sadece bir hata rapor etmekle kalmamalıdır.

Eğer bir XSLT işlemci belli bir eklenti elemanının gerçeklenimine sahipse, element-available işlevi bu eleman ismi için olumlu sonuç döndürmelidir.

14.2 Eklenti İşlevler

Eğer bir İşlevÇağrısı ifadesindeki bir İşlevAdı bir KısaAd değilse (yani, bir ikinokta imi içeriyorsa), bir eklenti işlev çağrısı olarak ele alınır. İşlevAdı değerlendirme bağlamındaki isim-alanı bildirimi killanılarık bir isme genişletilir.

Eğer bir XSLT işlemci belli bir eklenti işlevinin gerçeklenimine sahip değilse, function-available işlevi bu eleman ismi için olumsuz sonuç döndürmelidir. Böyle bir eklenti işliv bir ifade içinde kullanılmış ve bu işlev çağrılmışsa, XSLT işlemci bunu bir hata olarak bildirmelidir. Bir XSLT işlemci bir ifade gerçeklenmemiş bir eklenti işlev içermekte olduğundan böyle bir durumda sadece bir hata rapor etmekle kalmamalıdır.

Eğer bir XSLT işlemci belli bir eklenti işlevinin gerçeklenimine sahipse, function-available işlevi bu eleman ismi için olumlu sonuç döndürmelidir. Böyle bir eklenti çağrılmışsa, XSLT işlemci işlevi argümanlarıyla birlikte gerçeklenime aktarmalı ve ve gerçekleniminin döndürdüğü sonucu işlev çağrısının sonucu olarak döndürmelidir.

ÖncekiYukarıSonraki
İletilerBir Linux Kitaplığı SayfasıSon Çare