XML Schema group 元素

定义和用法

group 元素用于定义在复杂类型定义中使用的元素组。

元素信息

出现次数 无限制
父元素 schema、choice、sequence、complexType、restriction (complexContent)、extension (complexContent)
内容 annotation、all、choice、sequence

语法

<group
id=ID
name=NCName
ref=QName
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
enhver attribut
>
annotation?,(all|choice|sequence)?)
</group>

(?-symbolen deklareres i group-elementet, som kan optræde nul eller én gang.)

Egenskaber

id

Valgfri. Angiv det unikke ID for elementet.

name

Valgfri. Angiv navnet på gruppen. Navnet skal være et NCName, der er defineret i XML-navnødvendige standarder (uden kolon).

Brug kun denne egenskab, når schema-elementet er forælder til group-elementet. I dette tilfælde bruges group som en modelgruppe af complexType, choice og sequence elementer.

name-attributten og ref-attributten kan ikke optræde samtidig.

ref

Valgfri. Referer til navnet på en anden gruppe. ref-værdien skal være en QName. ref kan indeholde et navnøjeblikke.

name-attributten og ref-attributten kan ikke optræde samtidig.

maxOccurs

Valgfri. Angiv den maksimale antal gange, som group-elementet kan optræde i en forælder. Værdien kan være et heltal større end eller lig med 0. Brug strengen "unbounded", hvis der ikke er nogen grænse for det maksimale antal. Standardværdien er 1.

minOccurs

Valgfri. Angiv den mindste antal gange, som group-elementet kan optræde i en forælder. Værdien kan være et heltal større end eller lig med 0. Standardværdien er 1.

enhver attribut

Valgfri. Angiv eventuelle andre attributter med ikke-skema-nødvendige navneområder.

Eksempel

Eksempel 1

Her er et eksempel på at definere en sekvens af fire elementer, der indeholder en gruppe elementer, og som bruges i en kompleks type definition:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:group name="custGroup">
 <xs:sequence>
  <xs:element name="customer" type="xs:string"/>
  <xs:element name="orderdetails" type="xs:string"/>
  <xs:element name="billto" type="xs:string"/>
  <xs:element name="shipto" type="xs:string"/>
 </xs:sequence>
</xs:group>
<xs:element name="order" type="ordertype"/>
<xs:complexType name="ordertype">
  <xs:group ref="custGroup"/>
  <xs:attribute name="status" type="xs:string"/>
</xs:complexType>
</xs:schema>