XML Schema 教程
element 元素定義一個(gè)元素。
(? 符號(hào)聲明在 element 元素中,該元素可出現(xiàn)零次或一次,* 符號(hào)聲明元素可出現(xiàn)零次或多次。)
如果 nillable 為 true,將使該元素的實(shí)例可以將 nil 屬性設(shè)置為 true。 nil 屬性被定義為實(shí)例的 XML 架構(gòu)命名空間的一部分。
屬性 | 描述 |
---|---|
id | 可選。規(guī)定該元素的唯一的 ID。 |
name | 可選。規(guī)定元素的名稱(chēng)。如果父元素是 schema 元素,則此屬性是必需的。 |
ref | 可選。對(duì)另一個(gè)元素的引用。ref 屬性可包含一個(gè)命名空間前綴。如果父元素是 schema 元素,則不是使用該屬性。 |
type | 可選。規(guī)定內(nèi)建數(shù)據(jù)類(lèi)型的名稱(chēng),或者規(guī)定 simpleType 或 complexType 元素的名稱(chēng)。 |
substitutionGroup | 可選。規(guī)定可用來(lái)替代該元素的元素的名稱(chēng)。 該元素必須具有相同的類(lèi)型或從指定元素類(lèi)型派生的類(lèi)型。 如果父元素不是 schema 元素,則不可以使用該屬性。 |
default | 可選。為元素規(guī)定默認(rèn)值(僅當(dāng)元素內(nèi)容是簡(jiǎn)單類(lèi)型或 textOnly 時(shí)使用)。 |
fixed | 可選。為元素規(guī)定固定值(僅當(dāng)元素內(nèi)容是簡(jiǎn)單類(lèi)型或 textOnly 時(shí)使用)。 |
form | 可選。該元素的形式。 默認(rèn)值是包含該屬性的 schema 元素的 elementFormDefault 屬性的值。 該值必須是下列字符串之一: "qualified" 或 "unqualified"。 如果父元素是 schema 元素,則不能使用該屬性。
|
maxOccurs | 可選。規(guī)定 element 元素在父元素中可出現(xiàn)的最大次數(shù)。該值可以是大于或等于零的整數(shù)。若不想對(duì)最大次數(shù)設(shè)置任何限制,請(qǐng)使用字符串 "unbounded"。 默認(rèn)值為 1。 如果父元素是 schema 元素,則不能使用該屬性。 |
minOccurs | 可選。規(guī)定 element 元素在父元素中可出現(xiàn)的最小次數(shù)。該值可以是大于或等于零的整數(shù)。默認(rèn)值為 1。 如果父元素是 schema 元素,則不能使用該屬性。 |
nillable | |
abstract | 可選。指示元素是否可以在實(shí)例文檔中使用。如果該值為 true,則元素不能出現(xiàn)在實(shí)例文檔中。 相反,substitutionGroup 屬性包含該元素的限定名 (QName) 的其他元素必須出現(xiàn)在該元素的位置。多個(gè)元素可以在其 substitutionGroup 屬性中引用該元素。默認(rèn)值是 false。 |
block | 可選。派生的類(lèi)型。 block 屬性防止具有指定派生類(lèi)型的元素被用于替代該元素。該值可以包含 #all 或者一個(gè)列表,該列表是 extension、restriction 或 substitution 的子集:
|
final | 可選。設(shè)置 element 元素上 final 屬性的默認(rèn)值。如果父元素不是 schema 元素,則不能使用該屬性。該值可以包含 #all 或者一個(gè)列表,該列表是 extension 或 restriction 的子集:
|
any attributes | 可選。規(guī)定帶有 non-schema 命名空間的任何其他屬性。 |
下面的例子是一個(gè)schema,其中帶有四個(gè)簡(jiǎn)單元素:"fname", "lname", "age" 以及 "dateborn",類(lèi)型是 string、nonNegativeInteger 以及 date:
下面的例子是一個(gè)帶有復(fù)雜類(lèi)型 "note" 元素的 schema。"note" 元素包含四個(gè)簡(jiǎn)單元素:"to", "from", "heading" 以及 "body":
本例與例子 2 相同,但是在此例中,我們選擇使用 ref 屬性來(lái)引用元素名稱(chēng):