The type of an attribute is defined with an attribute, as is a declaration of whether or not it is required and a possible default value. If the AttGroup element appears nested inside an ElementDecl element, the Element attribute must be ignored. Similarly, if an AttDef element appears nested inside an AttGroup element, its Element attribute must be ignored in favor of that of the AttGroup. If an AttGroup or AttDef element appears nested under the XSchema element, the Element attribute may contain a name token corresponding to the Name attribute of the element to which this attribute applies. If the Element attribute is missing, that AttDef or AttGroup declaration may only be used by reference.
AttGroup elements are container elements.
All of their attributes, except for id, apply to the child AttDef elements and may be overridden by the attributes of those child elements. The Name attribute of the AttGroup element is provided for convenient reference within the XSchema. This attribute should be ignored in conversions to DTDs. The Name attribute of the AttDef element provides the name by which the attribute will be identified. Attribute names must be unique within the element in which they are declared.