XML Schema schema 元素
定义和用法
schema 元素定义 schema 的根元素。
元素信息
出现次数 | 一次 |
父元素 | (无父元素) |
内容 | include、import、annotation、redefine、attribute、attributeGroup、element、group、notation、simpleType、complexType |
语法
<schema id=ID attributeFormDefault=qualified|unqualified elementFormDefault=qualified|unqualified blockDefault=(#all|list of (extension|restriction|substitution)) finalDefault=(#all|list of (extension|restriction|list|union)) targetNamespace=anyURI version=token xmlns=anyURI herhangi bir özellik > ((include|import|redefine|annotation)*,(((simpleType|complexType| group|attributeGroup)|element|attribute|notation),annotation*)*) </schema>
Özellikler
id
Seçimli. Bu öğenin benzersiz ID'sini belirler.
attributeFormDefault
Bu schema'nın hedef adlandırma alanında tanımlanan özelliklerin formunu belirler. Bu değer "qualified" veya "unqualified" olmalıdır. Varsayılan değeri "unqualified"dır.
- "unqualified" hedef adlandırma alanındaki özelliklerin isim alan öncesi ön ekli olarak belirtilmemesi gerektiğini belirtir.
- "qualified" hedef adlandırma alanındaki özelliklerin isim alan öncesi ön ekli olarak belirtilmesi gerektiğini belirtir.
elementFormDefault
Bu schema'nın hedef adlandırma alanında tanımlanan öğenin formunu belirler. Bu değer "qualified" veya "unqualified" olmalıdır. Varsayılan değeri "unqualified"dır.
- "unqualified" hedef adlandırma alanındaki öğelerin isim alan öncesi ön ekli olarak belirtilmemesi gerektiğini belirtir.
- "qualified" hedef adlandırma alanındaki öğelerin isim alan öncesi ön ekli olarak belirtilmesi gerektiğini belirtir.
blockDefault
Seçimli. Hedef adlandırma alanında element ve complexType öğelerindeki block özelliğinin varsayılan değerini belirler. block özelliği, belirtilen türetilmiş türleri içeren karmaşık türlerin (veya öğelerin) miras edilen karmaşık türlerin (veya öğelerin) yerine kullanılmasını önler. Bu değer #all veya extension, restriction veya substitution'un bir alt kümesinin bir listesini içerebilir:
- extension - Bu karmaşık türün yerine kullanılmak üzere genişletme yoluyla türetilmiş karmaşık türleri önler.
- restriction - Bu karmaşık türün yerine kullanılmak üzere sınırlama yoluyla türetilmiş karmaşık türleri önler.
- substitution - Öğenin değiştirilmesini önler.
- #all - Bu karmaşık türün yerine kullanılmak üzere tüm türetilmiş karmaşık türleri önler.
finalDefault
Seçimli. Bu yapının hedef adlandırma alanında element, simpleType ve complexType öğelerinin final özelliğinin varsayılan değerini belirler. final özelliği, element, simpleType veya complexType öğelerinin belirtilen türetilmiş türlerini önler. Element ve complexType öğeleri için bu değer #all veya bir listeyi içerebilir, bu liste extension veya restriction'un bir alt kümesidir. simpleType öğeleri için bu değer list ve union içerebilir:
- extension - Öntanımlı olarak, bu schema'daki elementler genişletme yoluyla türetilmez. Sadece element ve complexType elementleri için geçerlidir.
- restriction - Sınırlama yoluyla türetimi önler.
- list - Listeleme yoluyla türetimi önler. Sadece simpleType elementleri için geçerlidir.
- union - Birleşim yoluyla türetimi önler. Sadece simpleType elementleri için geçerlidir.
- #all - Öntanımlı olarak, bu schema'daki elementler herhangi bir yöntemle türetilmez.
targetNamespace
Bu schema'nın ad alanının URI referansı. Ayrıca bu ad alanına bir öne eklemek de mümkündür. Öne eklenmemişse, bu ad alanının schema bileşenleri sınırsız referanslarla birlikte kullanılabilir.
version
Opsiyonel. Schema'nın sürümünü belirler.
xmlns
Bu schema'da kullanılan bir veya daha fazla ad alanının URI referansını belirler. Öne eklenmemişse, bu ad alanının schema bileşenleri sınırsız referanslarla birlikte kullanılabilir.
herhangi bir özellik
Opsiyonel. Non-schema ad alanı ile sahip olan herhangi bir diğer özelliği belirler.
Örnek
Örnek 1
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="values" type="xs:string"> </xs:schema>
Örnek 2
Bu örnekte, http://www.w3.org/2001/XMLSchema adlı ad alanında schema bileşeni (element name, type) sınırsızdır, http://www.codew3c.com/codew3cschema (mystring) ise wsc öne eklemesi ile sınırlıdır:
<?xml version="1.0"?> <schema xmlns="http://www.w3.org/2001/XMLSchema"}} xmlns:wsc="http://www.codew3c.com/codew3cschema"> <element name="fname" type="wsc:mystring"/> </schema>