Each content model starts with a model header, which provides an introduction
to the model containing description, author, publication date, and version number. All parts
of the model introduction are optional.
<xs:element name="model"> <xs:attributeGroup ref="name" /> ... <xs:complexType> <xs:sequence> <xs:element name="description" type="string"maxOccurs="1" minOccurs="0" /> <xs:element name="author" type="string"maxOccurs="1" minOccurs="0" /> <xs:element name="published" type="date"maxOccurs="1" minOccurs="0" /> <xs:element name="version" type="string"maxOccurs="1" minOccurs="0" /> ... </xs:sequence> ... </xs:complexType> ... <xs:attributeGroup name="name"> <xs:attribute name="name" type="string" use="required" /> </xs:attributeGroup> </xs:element>
A content model must be uniquely named within a given content repository. To help define unique names across all content repositories, the content metamodel supports the notion of a namespace.