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
any attributes
>
((include|import|redefine|annotation)*,(((simpleType|complexType|
(group|attributeGroup)|element|attribute|notation),annotation*)*)
</schema>

Atribut

id

Pilihan. Menentukan ID unik bagi elemen ini.

attributeFormDefault

Pilihan. Bentuk atribut yang di宣言 di dalam ruang nama sasaran schema ini. Nilai ini mesti satu daripada string berikut: "qualified" atau "unqualified". Nilai lalai adalah "unqualified".

  • "unqualified" menunjukkan bahawa atribut di dalam ruang nama sasaran mesti dihalangkan tanpa prefix ruang nama.
  • "qualified" menunjukkan bahawa atribut di dalam ruang nama sasaran mesti dihalangkan melalui prefix ruang nama.

elementFormDefault

Pilihan. Bentuk elemen yang di宣言 di dalam ruang nama sasaran schema ini. Nilai ini mesti satu daripada string berikut: "qualified" atau "unqualified". Nilai lalai adalah "unqualified".

  • "unqualified" menunjukkan bahawa elemen di dalam ruang nama sasaran mesti dihalangkan tanpa prefix ruang nama.
  • "qualified" menunjukkan bahawa elemen di dalam ruang nama sasaran mesti dihalangkan melalui prefix ruang nama.

blockDefault

Pilihan. Menentukan nilai lalai atribut block untuk elemen dan element kompleks di dalam ruang nama sasaran. Atribut block menghalang jenis kompleks (atau elemen) yang dihubungkan untuk digantikan jenis kompleks yang diwarisi (atau elemen). Nilai ini boleh mengandungi #all atau senarai yang mengandungi ekspansi, restriction, atau substitution:

  • extension - Pemindahan jenis kompleks turun melalui ekspansi dihalangkan.
  • restriction - Pemindahan jenis kompleks turun melalui penghadangan dihalangkan.
  • substitution - Pemindahan elemen dihalangkan.
  • #all - 佩ngganti jenis kompleks turun dari jenis kompleks ini dihalangkan.

finalDefault

Pilihan. Tentukan nilai baku default untuk properti final elemen, simpleType, dan complexType dalam ruang nama target arsitektur. Properti final mencegah elemen, simpleType, atau complexType untuk mendapatkan tipe turunan yang ditentukan. Untuk elemen dan complexType, nilai ini dapat mengandung #all atau daftar yang termasuk turunan extension atau restriction. Untuk elemen simpleType, nilai ini juga dapat mengandung list dan union:

  • extension - Secara baku, elemen schema ini tidak dapat dihasilkan melalui penggabungan. Hanya berlaku untuk elemen element dan complexType.
  • restriction - Mencegah penggabungan melalui batasan.
  • list - Mencegah penggabungan melalui daftar. Hanya berlaku untuk elemen simpleType.
  • union - Mencegah penggabungan. Hanya berlaku untuk elemen simpleType.
  • #all - Secara baku, elemen schema ini tidak dapat dihasilkan melalui metode apapun.

targetNamespace

Referensi URI ruang nama schema ini. Bisa juga menugaskan prefiks ruang nama. Jika tidak ada prefix yang ditugaskan, komponen schema ruang nama dapat digunakan bersamaan dengan referensi yang tidak terbatas.

version

Pilihan. Tentukan versi schema.

xmlns

Tentukan referensi URI satu atau beberapa ruang nama yang digunakan dalam schema ini. Jika tidak ada prefix yang ditugaskan, komponen schema ruang nama dapat digunakan bersamaan dengan referensi yang tidak terbatas.

any attributes

Pilihan. Tentukan setiap properti lain yang mempunyai 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) dalam ruang nama 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>