XPath Nedir ? Nasıl Kullanılır ?

  • 13.30.2015
  • tayyipyetis
  • .Net Framework

Merhaba değerli okuyucularım. Bu makalemde XML teknolojisiyle uğraşırken kullanılması büyük ihtiyaç olan bir xml sorgulama betiği olan XPath kullanımı anlatacağım. detaylı anlatım için http://www.w3schools.com/xsl/xpath_intro.asp adresini ziyaret edebilirsiniz. Benim de yeni tanışmış olduğum bu dil XML işlemlerimi büyük oranda kısalttı çünkü tıpkı sql gibi istediğiniz veriyi ya da veri dallanmalarını belirli attribute'lere göre çekebiliyorsunuz bu da sizi gereksiz for each döngülerinde kurtarıyor. Aslında çok detaylı ve geniş bir dil olmamakla birlikte bu haliyle bile oldukça faydalı. Fakat kendisinden daha gelişmiş bir dil olduğunu da belirtmek de fayda var XQuery ismindeki bu dil ile LINQ yapısı ile daha gelişmiş sorulamalar yapabilirsiniz ama her zaman dediğim gibi bir problemin ne kadar çok çözüm yolu bilinirse o kadar faydalıdır. Şimdi xpath kullanım örneklerini inceleyelim.

XmlDocument Data = New XmlDocument();
Data.Load("Dosya yolu");
XmlElement veriler = XmlElement = Data.SelectNodes("//*[@id=5]")[0]
foreach (XmlElement item in veriler) {
  //işlemlerinizi burada yapabilirsiniz
}

Yukarıdaki yapıda bir dosya okunup xml dökümanı olarak işleniyor ve xpath ile içerisinden veriler süzülüp işlem yapmaya hazır hale getirildi. Teme XPath kuralları şöyledir.

 

  • "/" işareti ile kök dökümanı veya kendinden önce belirtilen etiketten hemen sonra gelen düğümü seçer
  • "//" işareti ile dökümanın herhangi bir yerindeki ya da önceki düğümün altındaki herhangi bir derinlikteki düğümü ya da düğümleri seçer.

Xpath Contains kullanımı ise şöyle;

XmlDocument xmldoc = new  XmlDocument();
xmldoc.DocumentElement.SelectNodes("//page/title[text()[contains(.,'" + Query + "')]]");

Yorum Yap

Diğer Makaleler

Etiketler