|
İlk Dinamik Sayfa |
|
|
Öncelikle örneğimizde kullanacağımız XML dokümanına bir göz atalım.
Bu, bir çalışanın adını tanımlayan basit bir XML dokümanıdır. Geçerli bir XML dokümanının sadece bir kök imi olmalıdır. Örneğimizdeki kök iminin adının root olduğunu görüyoruz. Dokümandaki ilk satırda yer alan <?xml version="1.0" encoding="UTF-8"?> ifadesi bir işlenme talimatıdır (Processing Instruction). Bu işlenme talimatı XML ayıklayıcısına (Parser) bu dokümanının yapısal versiyonunun "1.0" ve kodlamasının "UTF-8" olduğunu söylemektedir. XML Dosyasını Hazırlamak Yukarıda verilmiş olan XML'i örneğimizde kullanabilmemiz için disk üzerinde bir dosya oluşturup bu XML içeriğini içine kopyalayalım. Bunu yapmak için MoreMotion XML Editörü (mmEd) kullanabiliriz. Adımlar:
Adımlar:
$vof() Fonksiyonu Bir MoreMotion Application Studio fonksiyonu olan $vof() derleme sırasında <xsl:value-of select="?"/> XSL ifadesine dönüştürülür. Test Kullanmış olduğumuz $vof() fonksiyonu sayfamızın dinamik olacağını ima etmektedir. Eğer sayfamızı derlersek, Application Studio "Page1.xsl" adlı bir dosya oluşturacaktır. Bir sayfanın derlenmesi iki şekilde olur;
$vof() fonksiyonu çalışmamış gibi gözüküyor. Ama bu doğru değil. Nedenini birazdan açıklayacağım. Önce F9 tuşuna bastığınızda neler olduğuna bir bakalım.
Önizleme için XML Dokümanı Eğer önizleme sırasında Application Studio'nun boş bir XML dokümanı yerine bizim istediğimiz XML dokümanını kullanmasını istiyorsak XML dosyasının adını sayfanın "Önizleme için XML Dosyası" özelliğinde belirtmeliyiz. Adımlar:
Tekrar F9 tuşuna basın. Şimdi aşağıdaki sonucu almış olmalısınız.
Örneklerimiz sırasında $vof() fonksiyonunun diğer kullanım şekillerini de göreceğiz. $vof() fonksiyonun amacı XSL talimatlarının eleman özelliklerin içinde kullanımını basitleştirmektir. Aslında aynı sonucu, içinde doğal XSL talimatlarını kullanabileceğimiz "$xsl()" fonksiyonunu kullanarak da alabilirdik. xsl() Fonksiyonu
Bir "$xsl()" fonksiyonu içinde kullanılan XSL talimatları, Application Studio tarafından hiçbir değişiklik yapılmadan olduğu gibi sonuç dokümanına aktarılırlar. Bir XML dokümanındaki Kök İmi ve Verikaynağı İmleri Bir dinamik sayfanın ihtiyaç duyduğu XML verileri MoreMotion AF (MoreMotion Uygulama Çatısı) tarafından üretilir. XML içindeki kök imin adı "root" olarak sabitlenmiştir. Bu nedenle $vof() ve $xsl() fonksiyonları içinde XML düğümlerine referanslar verilirken "root" imini belirtmeye gerek yoktur.
Bunun anlamı eğer biz $vof() tanımı içinde, kök imi olan "root" kelimesini kullanmazsak, Application Studio bunu bizim yerimize ekleyecek ve örneğin $vof(/calisan/AD) tanımını <xsl:value-of select="/root/calisan/AD"/> olarak açacaktır. Hiyerarşik olarak kök iminin bir altındaki imlere veri kaynağı imi denir. Örneğimizdeki "calisan" ve "urunler" birer veri kaynağı imleridir. Takip eden bölümlerde MoreMotion çatısının sayfalar için otomatik olarak XML verisi üretebilmesi için veri kaynaklarının nasıl tanımlandığını göreceğiz.
|