XSD Özellikleri

Tüm özellikler basit tür olarak beyan edilir.

Özellik nedir?

Basit elemanlar özellik sahibi olamaz. Eğer bir eleman özellik içerirse, o karmaşık tür olarak kabul edilir. Ancak özellikler her zaman basit tür olarak beyan edilir.

Özelliği nasıl beyan ederim?

Özelliği tanımlamak için kullanılan dilbilgisi:

<xs:attribute name="xxx" type="yyy"/>

Burada, xxx özellik adını, yyy ise özelliğin veri türünü belirler. XML Şeması birçok yerleşik veri türüne sahiptir.

En yaygın türler şunlardır:

  • xs:string
  • xs:decimal
  • xs:integer
  • xs:boolean
  • xs:date
  • xs:time

Örnek

Bu, özellikli bir XML elemanıdır:

<lastname lang="EN">Smith</lastname>

Bu, özellik tanımıdır:

<xs:attribute name="lang" type="xs:string"/>

Özelliğin varsayılan değeri ve sabit değeri

Özellikler belirli bir varsayılan değer veya sabit değer sahip olabilir.

Başka bir değer belirlenmemişse, varsayılan değer otomatik olarak elemana dağıtılır.

Aşağıdaki örnekte, varsayılan değer "EN"dir:

<xs:attribute name="lang" type="xs:string" default="EN"/>

Sabit değerler de otomatik olarak elemanlara dağıtılır ve başka bir değer belirleyemezsiniz.

Aşağıdaki örnekte, sabit değer "EN"dir:

<xs:attribute name="lang" type="xs:string" fixed="EN"/>

Opsiyonel ve zorunlu özellikler

Varsayılan olarak, özellikler seçmeli olabilir. Özellikleri zorunlu olarak belirlemek için "use" özelliğini kullanın:

<xs:attribute name="lang" type="xs:string" use="required"/>

İçerik sınırlaması

XML elemanı veya özelliğinin tanımlanmış bir veri türüne sahip olduğu zaman, eleman veya özelliğin içeriğine sınırlama eklenir.

Eğer XML elemanın türü "xs:date" ise ve içerdiği içerik "Hello World" benzeri bir dize ise, eleman doğrulama yapmaz.

XML schema kullanarak, XML element ve özelliklerinize kendi sınırlamalarınızı ekleyebilirsiniz. Bu sınırlamalar facet olarak adlandırılır (Yazarın Notu: (poligonun) yüzü, sınırlama yüzü olarak çevrilebilir). Facet hakkında daha fazla bilgiyi bir sonraki bölümden öğreneceksiniz.