XML XSD Nedir?

Yazıda XSD nedir, XSD oluşturma ve XML içerisinde XSD kullanımı ile ilgili bilgiler yer almaktadır.

XSD nedir?

XSD XML Schema Definition ( XML Şema Tanımı) kısaltmasıdır.

XML Nedir? yazısında XML dosyasını oluşturmayı ve XML DTD Nedir? yazısında XML dosyasının standart bir yapısını tanımlamayı görmüştük.

Ancak DTD yapısında XML etiketinin kullanılmaması veri türleri ile ilgili tanımlamanın yapılmayışı gibi eksiklikler vardı.

Bu eksiklikleri gidermek için XSD yapısı kullanılır.

XSD DTD gibi XML için belirli bir standart oluşturmayı sağlayan bir yapıdır.

XSD standart oluşturmak için yine XML kurallarını kullanarak oluşturulur.

XSD ile etiket içeriği, etiket özelliği vb. değerlerin veri türleri belirtilebilir.

XSD DTD’den daha fazla imkan sunar.

XSD kullanımı

XSD dosyalarını kullanabilmek için öncelikle XML dosyasına dahil edilmesi gerekir.

XML XSD örneği aşağıda yer almaktadır.

<?xml version="1.0" encoding="UTF-8"?>
<kisiler xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="kisiler.xsd">
  <kisi>
    <sira>1</sira>
    <adi>Yusuf</adi>
    <soyadi>SEZER</soyadi>
  </kisi>
  <kisi>
    <sira>2</sira>
    <adi>Ramazan</adi>
    <soyadi>SEZER</soyadi>
  </kisi>
  <kisi>
    <sira>3</sira>
    <adi>Sinan</adi>
    <soyadi>SEZER</soyadi>
  </kisi>
  <kisi>
    <sira>4</sira>
    <adi>Mehmet</adi>
    <soyadi>SEZER</soyadi>
  </kisi>
</kisiler>

XSD dosyalarını bağlamak için XML dosyasında bulunan kök etiketin xmlns ve xsi özelliklerine gerekli değerlerin yazılması gerekir.

XSD dosyaları .xsd uzantılı dosyanın içerisine yazılır.

XSD dosyası örneği aşağıda yer almaktadır.

<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:element name="kisiler">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="100" name="kisi">

          <xs:complexType>
            <xs:sequence>
              <xs:element name="sira" type="xs:unsignedByte" />
              <xs:element name="adi" type="xs:string" />
              <xs:element name="soyadi" type="xs:string" />
            </xs:sequence>
          </xs:complexType>

        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

</xs:schema>

XSD örneğindeki maxOccurs özelliği etiketin içerisinde kaç tane eleman oluşturulabileceği, type özelliği etiket içeriğine hangi veri türünün kabul edileceği bilgisini tutar.

XSD dosyası oluşturmak için çeşitli araçların kullanılması faydalı olacaktır.

Yusuf SEZER

Yusuf SEZER

Computer Engineer who interested about web technologies, algorithms, artificial intelligence and embedded systems; constantly exploring new technologies.


Bunlara'da bakmalısın!