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"/>