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 properti apapun > ((include|import|redefine|annotation)*,(((simpleType|complexType| group|attributeGroup)|element|attribute|notation),annotation*)*) </schema>
aturan
id
Pilihan. Tentukan ID unik elemen ini.
attributeFormDefault
Pilihan. Bentuk atribut yang dideklarasikan dalam schema namespace tujuan. Nilai ini harus satu dari berikut: "qualified" atau "unqualified". Nilai default adalah "unqualified".
- "unqualified" menunjukkan bahwa atribut namespace tujuan tidak perlu ditentukan melalui prefiks namespace.
- "qualified" menunjukkan bahwa atribut namespace tujuan harus ditentukan melalui prefiks namespace.
elementFormDefault
Pilihan. Bentuk elemen yang dideklarasikan dalam schema namespace tujuan. Nilai ini harus satu dari berikut: "qualified" atau "unqualified". Nilai default adalah "unqualified".
- "unqualified" menunjukkan bahwa elemen namespace tujuan tidak perlu ditentukan melalui prefiks namespace.
- "qualified" menunjukkan bahwa elemen namespace tujuan harus ditentukan melalui prefiks namespace.
blockDefault
Pilihan. Tentukan nilai default atribut block elemen dan complexType dalam namespace tujuan. Atribut block menghalangi kompleks (atau elemen) yang memiliki turunan yang ditentukan untuk digunakan untuk menggantikan kompleks (atau elemen) yang diwarisi. Nilai ini dapat berisi #all atau daftar yang berisi ekspansi, restriksi, atau substitution:
- extension - Menghalangi penggantian kompleks yang diatur melalui ekspansi.
- restriction - Menghalangi penggantian kompleks yang diatur melalui restriksi.
- substitution - Menghalangi penggantian elemen.
- #all - Menghalangi semua turunan kompleks untuk diganti dengan kompleks yang ditentukan.
finalDefault
Pilihan. Tentukan nilai default atribut final elemen element, simpleType, dan complexType dalam namespace tujuan arsitektur ini. Atribut final menghalangi elemen, simpleType, atau complexType untuk memiliki turunan yang ditentukan. Untuk elemen dan complexType, nilai ini dapat berisi #all atau daftar yang berisi ekspansi atau restriksi. Untuk elemen simpleType, nilai ini dapat berisi list dan union:
- extension - Secara baku, elemen schema ini tidak dapat diwarisi melalui ekspansi. Hanya berlaku untuk elemen element dan complexType.
- restriction - Mencegah warisan melalui batasan.
- list - Mencegah warisan melalui daftar. Hanya berlaku untuk elemen simpleType.
- union - Mencegah warisan melalui gabungan. Hanya berlaku untuk elemen simpleType.
- #all - Secara baku, elemen schema ini tidak dapat diwarisi melalui metode apapun.
targetNamespace
Referensi URI ruang nama schema ini. Bisa juga menetapkan prefiks ruang nama ini. Jika tidak disediakan prefiks apapun, komponen schema ruang nama ini dapat digunakan bersamaan dengan referensi yang tidak terbatas.
versi
Pilihan. Tentukan versi schema.
xmlns
Tentukan referensi URI satu atau lebih ruang nama yang digunakan dalam schema ini. Jika tidak disediakan prefiks, komponen schema ruang nama ini dapat digunakan bersamaan dengan referensi yang tidak terbatas.
properti apapun
Pilihan. Tentukan properti lain yang memiliki ruang nama non-schema.
Contoh
Contoh 1
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="values" type="xs:string"> </xs:schema>
Contoh 2
Dalam contoh ini, komponen schema (nama elemen, tipe) di ruang nama http://www.w3.org/2001/XMLSchema adalah tidak terbatas, sementara http://www.codew3c.com/codew3cschema (mystring) disingkat melalui prefiks wsc:
<?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>