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
any attributes
>

annotation?,(all|choice|sequence)?)

</group>

£¨? ·ûºÅÉùÃ÷ÔÚ group ÔªËØÖУ¬¸ÃÔªËØ¿É³öÏÖÁã´Î»òÒ»´Î¡££©

ÊôÐÔ

id

¿ÉÑ¡¡£¹æ¶¨¸ÃÔªËØµÄΨһµÄ ID¡£

name

¿ÉÑ¡¡£¹æ¶¨×éµÄÃû³Æ¡£¸ÃÃû³Æ±ØÐëÊÇÔÚ XML ÃüÃû¿Õ¼ä¹æ·¶Öж¨ÒåµÄÎÞðºÅÃû³Æ (NCName)¡£

½öµ± schema ÔªËØÊǸà group ÔªËØµÄ¸¸ÔªËØÊ±²ÅʹÓøÃÊôÐÔ¡£ÔÚ´ËÇé¿öÏ£¬group ÊÇÓÉ complexType¡¢choice ºÍ sequence ÔªËØÊ¹ÓõÄÄ£ÐÍ×é¡£

name ÊôÐÔºÍ ref ÊôÐÔ²»ÄÜͬʱ³öÏÖ¡£

ref

¿ÉÑ¡¡£ÒýÓÃÁíÒ»¸ö×éµÄÃû³Æ¡£ref Öµ±ØÐëÊÇ QName¡£ ref ¿ÉÒÔ°üº¬ÃüÃû¿Õ¼äǰ׺¡£

name ÊôÐÔºÍ ref ÊôÐÔ²»ÄÜͬʱ³öÏÖ¡£

maxOccurs

¿ÉÑ¡¡£¹æ¶¨ group ÔªËØ¿ÉÔÚ¸¸ÔªËØÖгöÏÖµÄ×î´ó´ÎÊý¡£¸ÃÖµ¿ÉÒÔÊÇ´óÓÚ»òµÈÓÚÁãµÄÕûÊý¡£Èô²»Ïë¶Ô×î´ó´ÎÊýÉèÖÃÈκÎÏÞÖÆ£¬ÇëʹÓÃ×Ö·û´® "unbounded"¡£Ä¬ÈÏֵΪ 1¡£

minOccurs

¿ÉÑ¡¡£¹æ¶¨ group ÔªËØ¿ÉÔÚ¸¸ÔªËØÖгöÏÖµÄ×îС´ÎÊý¡£¸ÃÖµ¿ÉÒÔÊÇ´óÓÚ»òµÈÓÚÁãµÄÕûÊý¡£Ä¬ÈÏֵΪ 1¡£

any attributes

¿ÉÑ¡¡£¹æ¶¨´øÓÐ non-schema ÃüÃû¿Õ¼äµÄÈÎºÎÆäËûÊôÐÔ¡£

ʵÀý

Àý×Ó 1

ÏÂÃæµÄÀý×Ó¶¨ÒåÒ»¸ö°üº¬ËĸöÔªËØµÄÐòÁеÄ×飬²¢ÔÚÒ»¸ö¸´ÔÓÀàÐͶ¨ÒåÖÐʹÓÃÁËÕâ¸ö group ÔªËØ£º

<?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>
VUE