2.3.4 Control Attributes

This section specifies the attributes that can be present as part of complex types in sections 2.3.2.3 and 2.3.3.3. Each attribute applies to one or more controls and SHOULD NOT be present in instances of types to which they do not apply.<6> Attribute values that are the same as the default value specified for that attribute SHOULD NOT be present in an instance of the type to which it applies. The value of an attribute that is not present is specified to be the default value of that attribute. Attributes that have no default value MUST be present.

For attributes with a type that is or is derived from string ([XMLSCHEMA2/2] section 3.2.1), a string with length 0 is specified to be the same value as a null string.