XML Şeması attribute elementi

Tanım ve kullanım

attribute elementi, bir öznitelik tanımlar.

Element bilgisi

Görünüm sıklığı schema elementi içinde bir kez tanımlanır. Karmaşık tür veya attribute grubunda çok kez referans alınır.
Ana element attributeGroup、schema、complexType、restriction (simpleContent)、extension (simpleContent)、restriction (complexContent)、extension (complexContent)
İçerik annotation、simpleType

Dilbilgisi

<attribute
default=string
fixed=string
form=qualified|unqualified
id=ID
name=NCName
ref=QName
type=QName
use=optional|prohibited|required
herhangi bir özellik
>
(annotation?,(simpleType?))
</attribute>

(? sembolü, bu elementin attribute elementi içinde sıfır veya bir kez出现 olabilir.)

Öznitelik

default

Opsiyonel. Öznitelik varsayılan değerini belirtir. default ve fixed öznitelikleri aynı anda kullanılamaz.

fixed

Opsiyonel. Öznitelik sabit değerini belirtir. default ve fixed öznitelikleri aynı anda kullanılamaz.

form

Opsiyonel. Öznitelik formatını belirtir. Varsayılan değeri, öznitelik içeren schema öğesinin attributeFormDefault öznitelik değeridir. Aşağıdaki değerlerden biri olarak ayarlanabilir:

  • "qualified" - Bu öznitelik, bu öznitelik adını (NCName) ve öznitelik öncesi isim ön ekini (namespace prefix) kullanarak belirtilmesi gereken bir öznitelik belirtir.
  • "unqualified" - Bu özellik, ad alanı ön eki gerektirmez ve ad alanının (NCName) adı ile eşleşmez, yani yerel ad.}

id

Opsiyonel. Bu öğenin benzersiz ID'sini belirtin.

ad

Opsiyonel. Özelliğin adını belirtin. name ve ref özellikleri aynı anda kullanılamaz.

ref

Opsiyonel. Belirtilen özelliğe referans verin. name ve ref özellikleri aynı anda kullanılamaz. ref varsa, simpleType öğesi, form ve type görünmez.

tür

Opsiyonel. Düzenlenmiş veri türünü veya basit türü belirtin. type özelliği, content simpleType içeriğine sahip olmadığında görünür. type özelliği sadece simpleType içeriği olmayan durumda kullanılır.

kullanım

Opsiyonel. Bu özelliğin nasıl kullanılacağını belirtin. Aşağıdaki değerlerden birini ayarlayabilirsiniz:

  • opsiyonel - Özellik seçmeli ve herhangi bir değere sahip olabilir (varsayılan).
  • yasaklı - Özellik kullanılamaz.
  • zorunlu - Özelliğin zorunludur.

herhangi bir özellik

Opsiyonel. Non-schema ad alanında belirli olan herhangi bir diğer özelliği belirtin.

Örnek

Örnek 1

<xs:attribute name="code">
<xs:simpleType>
  <xs:restriction base="xs:string">
    <xs:pattern value="[A-Z][A-Z]"/>
  </xs:restriction>
</xs:simpleType>
</xs:attribute>

Yukarıdaki örnek "code" özelliğinin bir kısıtlama içerdiğini gösterir. Kabul edilen tek değer, büyük harf A'dan Z'ye olan iki harfli harflerdir.

Örnek 2

Kompleks bir türde zaten mevcut bir özellik tanımını kullanarak bir özellik bildirmek için ref özelliğini kullanın:

<xs:attribute name="code">
  <xs:simpleType>
    <xs:restriction base="xs:string">
      <xs:pattern value="[A-Z][A-Z]"/>
    </xs:restriction>
  </xs:simpleType>
</xs:attribute>
<xs:complexType name="someComplexType">
  <xs:attribute ref="code"/>
</xs:complexType>

Örnek 3

Özellik hem varsayılan hem de belirli bir sabit değer sahip olabilir. Belirli bir değer belirlenmemişse, özelliğe otomatik olarak varsayılan değer atanır. Aşağıdaki örnekte, varsayılan değer "EN" dir:

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

Belirli bir değer belirlenmemişse, özelliğe otomatik olarak sabit bir değer atanır. Ancak varsayılan değerden farklı olarak, özelliğe sabit değer dışındaki başka bir değer belirlediğinizde, belge geçersiz olarak doğrulanır. Aşağıdaki örnekte, sabit değer "EN" dir:

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

Örnek 4

Tüm özellikler varsayılan olarak seçeneklidir. Belirli bir özelliği seçenekli olarak belirlemek için "use" özelliğini kullanın:

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

Özellikleri zorunlu hale getirme:

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