XML Schema group-element

definition och användning

group-element används för att definiera elementgrupper som används i definitioner av komplexa typer.

elementinformation

antal gånger som uppstår inte begränsad
förälderelement schema, choice, sequence, complexType, restriction (complexContent), extension (complexContent)
innehåll annotation, all, choice, sequence

Syntax

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

(? Tecknet fördeklaration finns i group-elementet, som kan uppträda noll eller en gång.)

Attribut

id

Valfritt. Bestäm det unika ID för elementet.

name

Valfritt. Bestäm namnet på gruppen. Namnet måste vara ett NCName (Name Character) som definieras i XML-namnrymdsstandarden.

Använd detta attribut endast när schema-elementet är föräldrelementet till group-elementet. I detta fall används group av modellgruppen som används av complexType, choice och sequence-element.

name-attributet och ref-attributet får inte användas samtidigt.

ref

Valfritt. Referera till namnet på ett annat group-element. ref-värdet måste vara QName. ref kan innehålla namnrymdsprefix.

name-attributet och ref-attributet får inte användas samtidigt.

maxOccurs

Valfritt. Bestäm den högsta antalet gånger som group-elementet kan uppträda i föräldrelementet. Värdet kan vara ett heltal större än eller lika med noll. Om du inte vill sätta någon gräns för det högsta antalet gånger, använd strängen "unbounded". Standardvärdet är 1.

minOccurs

Valfritt. Bestäm den minsta antalet gånger som group-elementet kan uppträda i föräldrelementet. Värdet kan vara ett heltal större än eller lika med noll. Standardvärdet är 1.

alla attribut

Valfritt. Bestäm alla andra attribut med non-schema namnrymd.

Exempel

Exempel 1

Här är ett exempel som definierar en sekvens av fyra element och använder denna group-element i en komplex typ 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>