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 attributes apapun > ((include|import|redefine|annotation)*,(((simpleType|complexType| group|attributeGroup)|element|attribute|notation),annotation*)*) </schema>
Atribut
id
Pilihan. Tentukan ID unik untuk elemen ini.
attributeFormDefault
Pilihan. Bentuk atribut yang diumumkan dalam schema ruang namas target. Nilai ini harus menjadi salah satu string berikut: "qualified" atau "unqualified". Nilai default adalah "unqualified".
- "unqualified" menunjukkan bahwa atribut ruang namas target tidak perlu ditentukan melalui prefiks ruang namas.
- "qualified" menunjukkan bahwa atribut ruang namas target harus ditentukan melalui prefiks ruang namas.
elementFormDefault
Pilihan. Bentuk elemen yang diumumkan dalam schema ruang namas target. Nilai ini harus menjadi salah satu string berikut: "qualified" atau "unqualified". Nilai default adalah "unqualified".
- "unqualified" menunjukkan bahwa elemen ruang namas target tidak perlu ditentukan melalui prefiks ruang namas.
- "qualified" menunjukkan bahwa elemen ruang namas target harus ditentukan melalui prefiks ruang namas.
blockDefault
Pilihan. Tentukan nilai default untuk atribut block elemen dan complexType dalam ruang namas target. Atribut block menghalangi jenis kompleks (atau elemen) yang memiliki jenis turunan yang ditentukan digunakan untuk menggantikan jenis kompleks (atau elemen) yang diwarisi. Nilai ini dapat mengandung #all atau daftar yang berisi ekspansi, restriksi atau substitution:
- extension - Menghalangi jenis kompleks yang turun melalui ekspansi digunakan untuk menggantikan jenis kompleks ini.
- restriction - Menghalangi jenis kompleks yang turun melalui restriksi digunakan untuk menggantikan jenis kompleks ini.
- substitution - Menghalangi penggantian elemen.
- #all - Menghalangi semua jenis kompleks yang turun dari digunakan untuk menggantikan jenis kompleks ini.
finalDefault
Pilihan. Tentukan nilai default untuk atribut final elemen element, simpleType dan complexType dalam ruang namas target. Atribut final menghalangi elemen, simpleType atau complexType dari jenis turunan yang ditentukan. Untuk elemen dan complexType, nilai ini dapat mengandung #all atau daftar yang berisi ekspansi atau restriksi. Untuk elemen simpleType, nilai ini juga dapat mengandung list dan union:
- extension - Secara baku, elemen schema ini tidak dapat dipanggil melalui ekspansi. Hanya berlaku untuk elemen element dan complexType.
- restriction - Mencegah derivaasi melalui batasan.
- list - Mencegah derivaasi melalui daftar. Hanya berlaku untuk elemen simpleType.
- union - Mencegah derivaasi melalui gabungan. Hanya berlaku untuk elemen simpleType.
- #all - Secara baku, elemen schema ini tidak dapat dipanggil 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.
version
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.
attributes 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 namas http://www.w3.org/2001/XMLSchema adalah tidak terbatas, sementara http://www.codew3c.com/codew3cschema (mystring) adalah terbatas 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>