XML Schema element yuanzuidu

dingyibianhao

element yuanzuidu dingyidaoyige yuanzuidu。

yuanzuidu xinxiz

chuxiancishu zai gaozaozhong dingyi de yuanzuidu shu
fuziyuansu schema、choice、all、sequence
neirong simpleType、complexType、key、keyref、unique

majiadanyu

<element
id=ID 
name=NCName
ref=QName
type=QName
substitutionGroup=QName
default=string
fixed=string
form=qualified|unqualified
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
nillable=true|false
abstract=true|false 
block=(#all|list of (extension|restriction))
final=(#all|list of (extension|restriction))
attributes
>
annotation?,((simpleType|complexType)?,(unique|key|keyref)*))
</element>

(Tiririka ya ? inaangalia element ya kina yenye uwanja wa kina au eneo kwa kina yenye uwanja wa kina, * inaangalia element yenye uwanja wa kina yenye uwanja wa kina au eneo kwa kina yenye uwanja wa kina).

Mwongozo

id

Inayopangi. Inaangalia ID yenye uadilifu wa kina hii.

name

Inayopangi. Inaangalia jina la kina. Ikiwa eneo ya kina hii ni eneo ya kina ya kina, kina hii ni lazima.

ref

Inayopangi. Inaangalia kina la eneo mwingine. Inayotumiwa kina ya kina cha kina yenye uwanja wa kina. Ikiwa eneo ya kina hii ni eneo ya kina ya kina, hakuna uwanja wa kutumia kina hii.

type

Inayopangi. Inaangalia jina la aina ya data yenye uwanja wa kina ama jina la element ya simpleType au complexType.

substitutionGroup

Inayopangi. Inaangalia jina la kina la element yenye uadilifu, ambao linahitajika kuwa aina ya kina yenye uadilifu ama kina la element yenye uadilifu kutoka kwa eneo yenye uadilifu.

Ikiwa eneo ya kina hii inaona schema eneo, hakuna uwanja wa kutumia kina hii.

default

Inayopangi. Inaangalia thamani ya kina ya kina yenye uadilifu (inaainishwa kwa sababu ya kina yenye aina ya kina ya kina ama textOnly).

fixed

Inayopangi. Inaangalia thamani ya kina ya kina yenye uadilifu (inaainishwa kwa sababu ya kina yenye aina ya kina ya kina ama textOnly).

form

Inayopangi. Inaangalia fomu ya element. Inayotarajiwa ni thamani ya kina ya schema inayotumiwa kwa kina ya elementFormDefault ya eneo inayotumiwa. Thamani inahitajika kuwa moja ya kiroho inayotumiwa: "qualified" au "unqualified".

如果父元素是 schema 元素,则不能使用该属性。

  • Ikiwa thamani hii ni "unqualified", hakuna uwanja wa kumekadiri eneo kwa kina cha kwanza kwa kina hii.
  • Ikiwa thamani hii ni "qualified", inahitajika kuangalia eneo kwa kina cha kwanza kwa kina hii.

maxOccurs

Inayopangi. Inaangalia kwa sababu ya element juu ya eneo kwa ajili ya kumekadiri kwa uwanja wa kuzingatia kwa sababu ya kumekadiri ya element. Inayotarajiwa angalau ni namba ya kina au namba ya kina inayotarajiwa. Ikiwa hakuna uwanja wa kumekadiri kwa kumekadiri ya kina, tumia kiroho "unbounded". Inayotarajiwa ni 1.

如果父元素是 schema 元素,则不能使用该属性。

minOccurs

可选。规定 element 元素在父元素中可出现的最小次数。该值可以是大于或等于零的整数。默认值为 1。

如果父元素是 schema 元素,则不能使用该属性。

nillable

可选。指示是否可以将显式的零值分配给该元素。此项应用于元素内容并且不是该元素的属性。 默认值为 false。

如果 nillable 为 true,将使该元素的实例可以将 nil 属性设置为 true。 nil 属性被定义为实例的 XML 架构命名空间的一部分。

例如,下段定义了单个元素,同时将 nillable 设置为 true。


下段使用该元素并具有显式零值(nil 属性设置为 true)。


abstract

可选。指示元素是否可以在实例文档中使用。如果该值为 true,则元素不能出现在实例文档中。 相反,substitutionGroup 属性包含该元素的限定名 (QName) 的其他元素必须出现在该元素的位置。多个元素可以在其 substitutionGroup 属性中引用该元素。默认值是 false。

block

Inaukili. Aina ya hatua ya kina. Hatua ya block inapunguza hatua ya kina ya elementi ya kina ya kwanza. Inayohusiana na #all au orodha, inayotumiwa kama chaguo ya extension, restriction au substitution:

  • extension - Kupunguza kwa sababu ya kufikia hatua hii kwa kuzingatia hatua ya kina zaidi.
  • restriction - Kupunguza kwa sababu ya kufikia hatua hii kwa kuzingatia hatua ya kina zaidi.
  • substitution - Kupunguza kwa sababu ya kufikia hatua hii kwa kuzingatia hatua ya kina zaidi.
  • #all - Kupunguza kwa sababu ya kufikia hatua hii kwa kuzingatia hatua ya kina zaidi.

final

Inaukili. Mwakaia ukingwa wa hatua kwa kiwango kipya kwa kiwango kipya cha hatua ya element. Ikiwa elementi ya maelezo haitakuwa hatua ya schema, hatuwezi kutumia hatua hii. Inayohusiana na #all au orodha, inayotumiwa kama chaguo ya extension au restriction:

  • extension - 防止通过扩展派生的元素被用来替代该元素
  • restriction - 防止通过限制派生的元素被用来替代该元素
  • #all - Inakataa kwa kila elementi iliyotoka kwa kufikia kina hii kwa kutekeleza elementi hii

attributes

Inayotaka. Inasababisha ujumbe wa kina na ujaribio wa kina wengine wengi wengine kwa ajili ya ukurugenzi wa kina hii.

Mfano

Mfano 1

Mfano huu una schema na mimea ya msingi sita: "fname", "lname", "age" na "dateborn", aina ni string, nonNegativeInteger na date:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="fname" type="xs:string"/>
<xs:element name="lname" type="xs:string"/>
<xs:element name="age" type="xs:nonNegativeInteger"/>
<xs:element name="dateborn" type="xs:date"/>
</xs:schema>

Mfano 2

Mfano huu una schema na elementi ya mimea ya "note" yenye mimea ya msingi sita: "to", "from", "heading" na "body":

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="note">
    <xs:complexType>
      <xs:sequence>
	<xs:element name="to" type="xs:string"/>
	<xs:element name="from" type="xs:string"/>
	<xs:element name="heading" type="xs:string"/>
	<xs:element name="body" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
</xs:element>
</xs:schema>

Mfano 3

Mfano huu ya mtaani 2, lakini katika mtaani huu, tumewahili tena kwa kutumia ujaribio wa ref kwa kurejea jina la element:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="note">
  <xs:complexType>
    <xs:sequence>
      <xs:element ref="to"/>
      <xs:element ref="from"/>
      <xs:element ref="heading"/>
      <xs:element ref="body"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:schema>