XML Rehberi: Genişletilebilir İşaretleme Dili
**XML (eXtensible Markup Language)**, verileri hem insanların hem de bilgi işlem sistemlerinin kolayca okuyabileceği bir biçimde tanımlamak için tasarlanmış bir işaretleme dilidir. HTML'e benzer ancak XML'de hazır etiketler bulunmaz, kendi etiketlerinizi tanımlayabilirsiniz.
XML Hiyerarşik Yapısı
XML verileri, hiyerarşik bir ağaç yapısında sunulur. Her XML belgesinin tek bir kök (root) elemanı olmalıdır.
\\`xml
<?xml version="1.0" encoding="UTF-8"?>
<app>
<name>JSONFlow</name>
<version>2.0</version>
<status active="true" />
</app>
\\`
XML'in Özellikleri
XML vs JSON
İyi Biçimlendirilmiş XML Kontrol Listesi
Her belgenin tek kök elemanı bulunmalı, açılan bütün etiketler doğru sırada kapanmalı ve nitelik değerleri tırnak içine alınmalıdır. Büyük-küçük harf duyarlıdır: <Item> ile </item> aynı etiket değildir. &, < ve > karakterleri metin içinde gerektiğinde entity olarak kaçırılmalıdır.
Namespace ve XPath Birlikte Kullanımı
Namespace içeren bir XML belgesinde görünen etiket adı tek başına XPath eşleşmesi için yeterli olmayabilir. Sorgu motoruna prefix eşlemesi vermek veya local-name() yaklaşımını dikkatli kullanmak gerekir. Namespace'i yok saymak kısa vadede kolay görünse de farklı şemalardan gelen aynı adlı düğümleri karıştırabilir.
JSON'a Dönüştürürken Veri Kaybı Riski
XML nitelikleri, metin düğümleri, eleman sırası ve tekrar eden etiketler JSON'da tek bir standart temsile sahip değildir. Bu nedenle dönüşüm sonucunda nitelik anahtarlarını, boş elemanları ve tek elemanlı dizileri özellikle kontrol edin. Dönüştürülen veriyi kaynak XML ile yan yana karşılaştırmak sessiz veri kayıplarını yakalamanın en güvenilir yoludur.