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>