An XSD structural module declares a top-level map or topic type, implemented as a pair of XSD documents, one that defines groups used to integrate and override the type and one that defines the element types specific to the type.
A structural type module must conform to the following coding requirements in addition to the general module coding requirements:
A structural vocabulary module must have two files:
The root element must reference the @DITAArchVersion attribute and the @domains attribute. These attributes give processors a reliable way to check the architecture version and look up the list of domains available in the document type. The @DITAArchVersion attribute is referenced as in the following example:
<xs:attribute name="id" type="xs:ID" use="required"/> <xs:attribute ref="ditaarch:DITAArchVersion" />
See XSD document-type shell: Coding requirements for information on how to set the values for the domains attibute for XSD shells.
For topic modules, the last position in the content model must be the topictype-info-types nested topics group as in the following example of the root element of the concept topic:
<xs:complexType name="concept.class"> <xs:sequence> <xs:group ref="title"/> <xs:group ref="titlealts" minOccurs="0"/> <xs:choice minOccurs="0"> <xs:group ref="shortdesc" /> <xs:group ref="abstract" /> </xs:choice> <xs:group ref="prolog" minOccurs="0"/> <xs:group ref="conbody" minOccurs="0"/> <xs:group ref="related-links" minOccurs="0"/> <xs:group ref="concept-info-types" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> ... </xs:complexType>
<xs:group name="concept-info-types"> <xs:choice> <xs:group ref="concept" minOccurs="0"/> <xs:group ref="info-types" minOccurs="0"/> </xs:choice> </xs:group>
Return to main page.
OASIS DITA Version 1.2 -- OASIS Standard, 1 December 2010
Copyright © OASIS Open 2005, 2010. All Rights Reserved.