XML Schema: Coding requirements for attribute domain modules

An attribute domain vocabulary module declares one new attribute specialized from either the @props or @base attribute.

All vocabulary and constraint modules must document their @domains attribute contribution. The OASIS grammar files use a <dita:domainsModule> element to document the contribution; this element is used consistently to make it easy to find values when creating a document type shell. An XML comment or <xs:appinfo> element can also be used.

An attribute domain consists of one file. The file must have a single attribute group definition that contains the definition of the attribute itself, where the attribute group is named attnameAtt-d-attribute.

For example, the @deliveryTarget attribute is defined with the following attribute group:
<xs:attributeGroup name="deliveryTargetAtt-d-attribute">
  <xs:attribute name="deliveryTarget" type="xs:string">
    <!-- Documentation for attribute -->
  </xs:attribute>
</xs:attributeGroup>