İçindekilerGirişİndex
YukarıİlkÖncekiSonrakiSon
Geriİleri
Yazdır

XQL (XML-QL)

XML-QL ( XML Sorgulama Dili - XML Query Language) , XQL olarak da bilinen, XML belgeleri üzerinde sorgulama yapılmasına olanak tanıyan bir dildir. Bilindiği gibi şu anda dünyanın heryerine dağılmış sınırsız sayılabilecek kadar çok HTML belgesi bulunmaktadır. Bunların üzerinde herhangi bir sorgulama yapmak, HTML’in içeriği belli bir yapı içerisinde saklama özelliği olmaması nedeniyle mümkün olmamaktadır. Arama işlemleri sadece sözcük tabanlı olup, belli bir bağlam altında ayrı bir anlsm kazanabilen sözcükler aynı kabul edildiğinden arama işlemleri etkin olarak yapılamamaktadır.

XML belgeleri belli bir yapı içerisinde oluşturulduğunda bunlar üzerinde sorgulama işlemleri daha kolay ve etkin olarak gerçekleştirilebilmektedir. Ancak SQL (Yapılı Sorgulama Dili- Structured Query Language ) ve OQL (Nesne Sorgulama Dili - Object Query Language), XML belgeleri tablolar ve nesnelerden ayrı özellikler taşıdıklarından XML için doğrudan kullanılamazlar. XML belgeleri de DOM (Belge Nesne Modeli – Document Object Model) tanımlamasına uymaktadırlar. Bir XML belgesi bir veritabanı, DTD’si de veritabanının şeması olarak düşünülebilir. Ayrıca XML belgelerindeki elemanların birer nesneye karşılık geldiği da kabul edilebilir.

XML-QL tıpkı SQL'de olduğu gibi SELECT- WHERE yapısı kullanılır. SELECT ifadesiyle veritanbanından getrililecek veri tanımlanırken WHERE ifadesiyle de getirme işlemi,nde kullanılacak koşoul belirtilir. Bir XML belgesi ( veya veritabanı ) üzerinde yapılan bir sorgulamanın sonucu CONSTRUCT ifadesiyle yine bir XML belgesi olabilir. Bu durumda sonuç kimesi bir tabloda olduğu kadar basit olabileceği gibi karmaşık bir DOM ağacı da olabilir. Böylelikle bir veritabanı üzerinde yapılan sorgunun sonuçlarının kullanılmaya hazır hale getirlimesi için ayrıca bir işleme girmesi gerekmez.

İnternette belli bir sitedeki kitaplar hakkında bilgi içeren bir XML belgesinden belli bir yayıncıya ait kitapları bulmak için gereken sorgu aşağıdaki gibidir :

WHERE <kitap>
	<yayıncı><ad>Remzi Hiçyılmaz</></>
	<başlık> $b</>
	<yazar> $y </>
	</> IN "www.sitem.com.tr/kitaplar.xml"
CONSTRUCT	<sonuç>
		<yazar> $y </>
		<başlık> $b </>
	</>

WHERE ifadesi sorgulama kriterini, IN sorgulanacak belgenin konumunu, CONSTRUCT ise oluşturulacak yeni XML beklgesinin yapısını belirlemektedir. $ ifadesiyle kullanılan değişkenler sorgu sonuçlarını kaynak belgeden hedefe taşımak için kullanılır. Üretilen sonuç yine bir XML belgesidir ve XML okuyabilen her uygulama tarafından kullanılabilir

İçindekilerGirişİndex
YukarıİlkÖncekiSonrakiSon
Geriİleri
Yazdır