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 diumumkan di namespace tujuan schema ini. Nilai ini harus salah satu dari berikut: "qualified" atau "unqualified". Nilai default adalah "unqualified".

  • "unqualified" menunjukkan bahwa atribut di namespace tujuan tidak perlu ditentukan dengan prefiks namespace.
  • "qualified" menunjukkan bahwa atribut di namespace tujuan harus ditentukan dengan prefiks namespace.

elementFormDefault

Pilihan. Bentuk elemen yang diumumkan di namespace tujuan schema ini. Nilai ini harus salah satu dari berikut: "qualified" atau "unqualified". Nilai default adalah "unqualified".

  • "unqualified" menunjukkan bahwa elemen di namespace tujuan tidak perlu ditentukan dengan prefiks namespace.
  • "qualified" menunjukkan bahwa elemen di namespace tujuan harus ditentukan dengan prefiks namespace.

blockDefault

Pilihan. Menentukan nilai default atribut block pada elemen element dan complexType di namespace tujuan. Atribut block melindungi tipe kompleks (atau elemen) yang memiliki tipe turunan yang ditentukan untuk tidak digantikan dengan tipe kompleks yang diturunkan (atau elemen). Nilai ini dapat berisi #all atau daftar yang termasuk extension, restriction, atau substitution:

  • extension - Melindungi penggunaan tipe kompleks turunan yang diextensi untuk tidak digantikan dengan tipe kompleks ini.
  • restriction - Melindungi penggunaan tipe kompleks turunan yang diperbatasi untuk tidak digantikan dengan tipe kompleks ini.
  • substitution - Melindungi penggantian elemen.
  • #all - Melindungi semua tipe kompleks turunan untuk tidak digantikan dengan tipe kompleks ini.

finalDefault

Pilihan. Tentukan nilai baku final atribut final elemen, simpleType, dan complexType di namespace target arsitektur ini. Atribut final mencegah elemen, simpleType, atau complexType di-derivatkan melalui tipe spesifik. Untuk elemen dan complexType, nilai ini dapat berisi #all atau daftar yang berisi subset ekspansi atau batasan. Untuk elemen simpleType, nilai ini juga dapat berisi list dan union:

  • extension - Secara baku, elemen schema ini tidak dapat di-derivatkan melalui ekspansi. Hanya berlaku untuk elemen element dan complexType.
  • restriction - Menghindari derivatasi melalui batasan.
  • list - Menghindari derivatasi melalui list. Hanya berlaku untuk elemen simpleType.
  • union - Menghindari derivatasi melalui union. Hanya berlaku untuk elemen simpleType.
  • #all - Secara baku, elemen schema ini tidak dapat di-derivatkan melalui metode apapun.

targetNamespace

Referensi URI namespace schema ini. Bisa juga menetapkan prefiks namespace. Jika tidak disediakan prefiks apapun, komponen schema namespace ini dapat digunakan bersamaan dengan referensi tak terbatas.

version

Pilihan. Tentukan versi schema.

xmlns

Tentukan referensi URI satu atau beberapa namespace yang digunakan dalam schema ini. Jika tidak disediakan prefiks, komponen schema namespace ini dapat digunakan bersamaan dengan referensi tak terbatas.

any attributes

Pilihan. Tentukan setiap atribut lain dengan namespace 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 kasus ini, komponen schema (nama elemen, tipe) di namespace http://www.w3.org/2001/XMLSchema adalah tak terbatas, sementara http://www.codew3c.com/codew3cschema (mystring) dihalangi dengan 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>