XML Schema group-element
definition og brug
group-element bruges til at definere elementgrupper, der bruges i komplekse type definitioner.
elementinformation
forekomstmåde | ikke begrænset |
forældrelement | schema, choice, sequence, complexType, restriction (complexContent), extension (complexContent) |
indhold | annotation, all, choice, sequence |
syntaks
<group id=ID name=NCName ref=QName maxOccurs=nonNegativeInteger|unbounded minOccurs=nonNegativeInteger Enhver attribut > annotation?,(all|choice|sequence)?) </group>
(? symbol er deklareret i group-elementet, som kan optræde nul eller én gang.)
Egenskaber
id
Valgfri. Angiver det unikke ID for elementet.
name
Valgfri. Angiver navnet på gruppen. Navnet skal være en uden kolon navn (NCName) defineret i XML navnerumspecifikationen.
Brug kun denne egenskab, når schema-elementet er forælder til group-elementet. I dette tilfælde bruges group af complexType, choice og sequence elementer som modelgrupper.
name-attributten og ref-attributten kan ikke bruges samtidig.
ref
Valgfri. Refererer til navnet på en anden gruppe. ref-værdien skal være en QName. ref kan indeholde et navnerumsprefiks.
name-attributten og ref-attributten kan ikke bruges samtidig.
maxOccurs
Valgfri. Angiver den maksimale gang 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 antallet af gange. Standardværdien er 1.
minOccurs
Valgfri. Angiver den mindste gang 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. Angiver eventuelle andre attributter med non-schema navnerum.
Eksempel
Eksempel 1
Her er et eksempel, der definerer en sekvens af fire elementer og bruger denne group-element 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>