You really should document each:
Attribute declaration.
Embedded element declaration.
Unique, Key, or Keyref Constraint.
An example:
<xs:schema xmlns:h="http://www.w3.org/1999/xhtml" ...> ... <xs:element name="person" type="my:Person"> <xs:annotation> <xs:documentation> <h:p>This element is use to describe a person's information such as name, email, address.</h:p> </xs:documentation> </xs:annotation> </xs:element> <xs:complexType name="Person"> <xs:sequence> <xs:element name="name" type="xs:string"> <xs:annotation> <xs:documentation> <h:p>This element contains the name of the person.</h:p> </xs:documentation> </xs:annotation> </xs:element> <xs:element name="name" type="xs:string" minOccurs="0"> <xs:annotation> <xs:documentation> <h:p>This element contains the person's email address in full domain format (e.g. you@yourdomain.com).</h:p> </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> <xs:attribute name="id" type="xs:ID"> <xs:annotation> <xs:documentation> <h:p>This attribute is used to provide a identifier for cross referencing within the document.</h:p> </xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType> </xs:schema>