Ana içeriğe atla

XML'in Genel Yapısı

Xml Genel Yapısı
XML makale serisinin ikincisi olan bu makalede XML dilinin yapısını inceleyeceğiz. XML konusunda hiç bilgi sahibi değilseniz makale serisinin birincisi olan "XML Nedir?" makalesine göz atmanızı tavsiye ederim.
Bu makale içinde de elimden geldiği kadar XML konusunun ne olduğunu da anlatmaya çalışacağım. Çünkü "XML Nedir?"  sorusunun yanıtı XML dil kurallarını bildiğinizde kafanızda daha iyi şekillenecektir.
Genel olarak bir XML dosyası element ve attribute'lardan (yani özelliklerden) oluşur. XML dili bir anlamda bu element ve özellikleri düzenlemeyle ilgili bir dildir.

Yani XML belirli bir veri setinin gösterimi için element ve özellikleri nasıl tasarlamanız gerektiği veya nasıl okumanız gerektiği ile ilgili bir kurallar serisidir diyebiliriz.
Bu tanımların biraz havada kaldığının farkındayım. Bu yüzden konuyu anlatabilmek için öncelikle örnek bir XML dosyası sunarak konuya giriş yapalım.
<?xml version="1.0" encoding="utf-8"?>
<Kitaplar>
  <Kitap adi="C# İle Programlama" fiyati="30TL" yazar="Sefer Algan">
    <Açıklama>
      Bu kitapta C# programlama dili her yönüyle anlatılıyor
    </Açıklama>
    <BulunduğuMağazalar>
      <Mağaza>Dost Kitabevi</Mağaza>
      <Mağaza>Kardeş Kitabevi</Mağaza>
      <Mağaza>Gazi Kitabevi</Mağaza>
    </BulunduğuMağazalar>
  </Kitap>
  <Kitap adi="Programlamaya Giriş" fiyati="25TL" yazar="Agha Alizade">
      <Açıklama>
        Bu kitapta temel programlama bilgileri veriliyor
      </Açıklama>
      <BulunduğuMağazalar>
        <Mağaza>Dost Kitabevi</Mağaza>
        <Mağaza>Kardeş Kitabevi</Mağaza>
        <Mağaza>Gazi Kitabevi</Mağaza>
      </BulunduğuMağazalar>
    </Kitap>
</Kitaplar>
Makaleye devam etmeden önce örnek xml dosyasını inceleyin. Buradaki veriler örnek için oluşturulmuştur. XML dosyasının başındaki karakter seti seçeneklerini sonra inceyeleceğiz. Bu yüzden bu konu üzerinde fazla durmayacağım.
Bir XML dosyasının XML dosyası olabilmesi için bir root elemente ihtiyacı vardır. Bir türkçeleştirecek olursak tüm elementlerin bağlandığı bir elemente ihtiyaç vardır. Bizim örneğimizde de bu Kitaplar elementidir. Bir anlamda root elementi bir listenin ve ya bir nesnenin adıdır da diyebiliriz. Bizim örneğimizde de 2 kitap nesnesi var ve bu nesneler Kitaplar elementine bağlanmıştır.
Biraz da basitleşdirerek bu xml dosyasını bir tablo olarak düşünün ve bu tabloda 2 kitap verisi vardır. Bu kitapların da her birinin farklı özellikleri  vardır.
Özellikler de XML dilinde attribute adlanır ve bizim örneğimizde de adi, fiyati,yazari her kitabın sahip olduğu özelliklerdir.
Nesne yönelimli programlama konusunda bilgi sahibi iseniz anlatmak istediğimi anlamanız daha kolay olacaktır. Değilseniz bile gerçek hayat gibi düşünün. Bir nesne varsa bu nesneyi insanların tanımlayabilmesi veya ayırt edebilmesi için o nesnenin mutlaka belirli özellikleri vardır.
Bu noktada belirtmek istiyorum ki XML teknolojisi içinde ilerleyen makalelerde de anlatacağım bir çok alt teknolojileri, sorgulama prensiplerini barındırır. Aynı zamanda burada XML dosyasında çok daha kompleksdir. Ama nasıl okuyacağınızı bildikten sonra belirli bir süre sonra size de çok kolay gelecektir.
Eğer XML dosyası oluşturacaksanız her şeyin temelinde veriyi doğru şekilde analiz edip, doğru kalıba sokmak veya nesneleştirmek yatar. Gerçek hayatta veri yapısını tasarlarken asıl amaç hızlı sorgulanabilecek veri yapısını oluşturmaktır. Ama bunlardan bence en çok dikkate alınması gereken konu nesne yönelimli programlama modeline göre nesne modelini doğru tasarlamaktan geçer. Yani veriyi belirli bir kalıba sokmaktan... 
Bu makalenin asıl amacı XML yapısını tam olarak anlatmak olduğu için diğer konulara da ara ara değinmekte fayda olduğunu düşünüyorum. Çünkü bu kısa bilgilerin de size faydalı olabileceğini düşünüyorum.
Bu konudaki anlatımımın makaleyi okuduktan sonra biraz anlaşılabilirliğini zor olduğunu fark ettim. Ama makale serisine devam ettikçe taşlar yerine oturacaktır.
Makalenin başında örnek verip bu örnekten yola çıkarak açıklamalar da yapmıştım. Bu noktada artık dağınık olarak verdiğim bilgileri toparlayarak XML yapısının temel taşlarını oturtalım. 
Kural 1: Her XML dosyasında en az 1 ve en çok 1 root element olmak zorundadır.
Kural 2: Root element dışındaki her element mutlaka bir üst elemente bağlanmak zorundadır.
Kural 3: Her özellik mutlaka bir elemente ait olmalıdır.
Bu makale için bu 3 kuralı bilmeniz yeterli. Bir sonraki makalemizde XML dosyası yazım kurallarını inceleyeceğiz. Bu da bir XML dosyası oluşturma ve okumada bize çok iyi yol gösterici olacaktır. Bunun için XML Dili Yazı Kuralları makalesiyle devam edebilirsiniz. Bu aynı zamanda makale serimizin üçüncü makalesi. 

Umarım yazım faydalı olmuştur. Makale serisiyle alakalı soru ve görüşleriniz, önerileriniz varsa bunları bize yazabilirsiniz...


Yorumlar

  1. Ücretsiz ayakkabı ve karma ürünler xml için sayfamızı ziyaret edebilirsizin
    TAMAMEN ÜCRETSİZ
    www.xmldunyasi.com

    YanıtlaSil

Yorum Gönder

Bu blogdaki popüler yayınlar

Medyan (Ortanca) Nedir? Nasıl Hesaplanır? Nerelerde Kullanılır?

Medyan işlemi olasılık hesaplamalarında sıkça kullanılan bir sayı dizisinin ortalamasını hesaplamak için alternatif yöntemlerden bir tanesidir. Ortanca medyan işleminin diğer adıdır. Matematiksel olarak medyan işlemi bir sayı dizisi küçükten büyüğe sıralayarak ortada kalan elemanı medyan değeri olarak belirleme işlemidir. Örnek verecek olursak: 2, 1, 5, 4, 5, 1, 2, 3, 5 serisi sıralanırsa 1, 1, 2, 2, 3, 4, 5, 5, 5 serisi elde edilir. Bu seri 9 elemanlı olduğundan ortadaki, yani 5. eleman (medyan) olacaktır. 5. eleman 3 sayısıdır. Yani ortanca değeri 3'dür Eleman sayısı tek sayı olan bir seride medyan değerin sırasının hesaplaması şu şekilde formüle edilir. Medyanın Sırası = (Eleman Sayısı + 1) / 2 Bu formülü yukarıdaki örneği uygulayacak olursak; Medyanın Sırası = (9 + 1) / 2 = 5 Veri serisi eleman sayısı bir çift sayı ise bu durumda serinin 2 medyanı olacaktır. Örneğin 2, 1, 5, 4, 5, 1, 2, 3, 5, 4 serisi sıralandığında 1, 1, 2, 2, 3, 4, 4, 5, 5, 5 s

Ağaçlar Kireçle veya Badana İle Neden Boyanır?

Ağaçlar kireçle boyanmasının veya badana yapılmasının hem çevreye hem de doğaya, ağaçlara faydası var. Bu makalede bu geleneği enine boyuna tartışmaya çalıştık. Ağaca zarar veren mikrop ve bakterileri öldürür. Ağacı çok aşarı soğuk havalarda ve çok aşırı sıcak havalarda korur. Ağacın çürümesini ve kurtlanmasını önler. Ağacın gövdesinin alabileceği zararları en az düzeyde düşürmeyi sağlar. Hoş, güzel, hijyenik, temiz pırıl pırıl bir görüntü oluşturur. Ayrıca çok sıcak havalarda da ağacı yanmaya karşı korumak. En büyük etkisi soğuk havalarda ağacı don vurmalarına karşı korumak . Küresel ısınma göz önüne alındığında mevsim değişiklikleri ani don, ani ısı artışları ve azalışları sonucunun doğuracağı etkenler için yararlı etkin bir yöntem. Gövdeden obur dalların çıkmasını azaltmak için sürülür. Kireçleme ağaçları güneş yanığından korumak için yapılıyor. Ağaçlar da güneşten yanabiliyorlar. Bu arada odun dokudaki gözenekleri doldurarak kapattığı için, zararlıların yuv

Azərbaycan Dilində Vurğu Qəbul Etmeyen Şekilçiler

Sözlərdə hecalardan birinin digərlərinə nisbətən daha qüvvətli deyilməsinə heca vurğusu deyilir. Üzərinə vurğu düşən hecaya isə vurğulu heca deyilir. Azərbaycan dilində vurğu adətən söz sonuna düşür. Söz şəkilçi qəbul ederkən vurğu adətən şəkilçinin üzərinə keçir. Məsələn: çiç ə k - çiçəkl ə r - çiçəklərd ə n məkt ə b - məktəbl i - məktəblil ə r - məktəblilərd ə n Buna baxmayaraq dilimizdə bir sıra şəkilçilər var ki onlar vurğu qebul etmirlər. Bu məqalədə Azərbaycan dilində vurğu qebul etməyən şəkilçilər incələnəcək ve bu şekilçilərin hansı hallarda vurğu qebul edib hansı hallarda vurğu qebul etmediyi araşdırılacaqdır. Eyni zamanda bildirmək istəyirəm ki vurğu ilə bağlı daha geniş və ətraflı məlumat üçün Azərbaycan Dilində Vurğunun Praktik Məsələləri adlı məqaləyə də nəzər yetirə bilərsiniz.  1. İsimlərdəki şəxs(xəbərlik) şəkilçiləri Məsələn: müəli'məm müəli'msən müəli'mdir müəli'mik müəli'msiniz müəli'mdirlər Qeyd: -dır4