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 cualquier atributos > annotation?,(all|choice|sequence)?) </group>
(? El símbolo de pregunta se declara en el elemento group, que puede aparecer cero o una vez。)
Atributos
id
Opcional. Especifica un ID único para este elemento.
name
Opcional. Especifica el nombre del grupo. Este nombre debe ser un nombre sin dos puntos (NCName) definido en la especificación de namespace de XML.
Únicamente se utiliza esta propiedad cuando el elemento schema es el elemento padre del elemento group. En este caso, el group es el modelo de grupo utilizado por los elementos complexType, choice y sequence.
Las propiedades name y ref no pueden aparecer simultáneamente.
ref
Opcional. Referencia al nombre de otro grupo. El valor de ref debe ser QName. ref puede contener un prefijo de namespace.
Las propiedades name y ref no pueden aparecer simultáneamente.
maxOccurs
Opcional. Especifica el número máximo de veces que puede aparecer el elemento group en el elemento padre. Este valor puede ser un entero mayor o igual a cero. Si no se desea establecer ningún límite para el número máximo, utilice la cadena "unbounded". El valor predeterminado es 1.
minOccurs
Opcional. Especifica el número mínimo de veces que puede aparecer el elemento group en el elemento padre. Este valor puede ser un entero mayor o igual a cero. El valor predeterminado es 1.
cualquier atributos
Opcional. Especifica cualquier otro atributo con no namespace.
Ejemplo
Ejemplo 1
El siguiente ejemplo define una secuencia de cuatro elementos que contiene un grupo y utiliza este elemento group en una definición de tipo complejo:
<?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>