Sibling content. The content of sibling elements must be the same.
Sibling attribute values. Sibling elements must have different values for a given attribute.
Mutual exclusion. An attribute or a child element must be present, but not both.
Element type from attribute presence. Element data type dependent on presence or absence of an attribute.
Element type from attribute content. Element content dependent on attribute value.
Attribute type from element content. Attribute values dependent on element content.
Attribute value exclusion. Attributes that are required to be different if both are specified.