Name

xs:group(reference) — Reference to a global elements group declaration or local definition (local definitions cannot be referenced).

Synopsis

<xs:group
           id          = xs:ID
           maxOccurs          = ( xs:nonNegativeInteger | “unbounded” ) : “1”
           minOccurs          = xs:nonNegativeInteger : “1”
           ref          = xs:QName
           {any attributes with non-schema namespace}
           >
           Content: (xs:annotation?)
</xs:group>

May be included in: xs:choice (outside a group), xs:choice (within a group), xs:complexType (local definition), xs:complexType (global definition), xs:extension (complex content), xs:restriction (complex content), xs:sequence (within a group), xs:sequence (outside a group)

Description

Used in a local context, xs:group is a reference to an element group. The effect is a logical replacement of the group reference by the group’s content.

When a group is being redefined (through xs:redefine), a self reference (i.e., a reference to the group being redefined) specifically means “include the original content of the group at this location.”

Restrictions

Groups cannot be recursive (i.e., a group cannot be referred to either directly or indirectly within its definition).

Example

<xs:element name="author">
  <xs:complexType>
    <xs:sequence>
      <xs:group ref="name"/>
      <xs:element ref="born"/>
      <xs:element ref="dead" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute ref="id"/>
  </xs:complexType>
</xs:element>

Attributes

id

W3C XML Schema’s element ID.

maxOccurs

Maximum number of occurrences of the group.

minOccurs

Minimum number of occurrences of the group. ...

Get XML Schema now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.