A structural vocabulary module defines a new topic or map type as a specialization of a topic or map type.
All vocabulary and constraint modules must document their
@domains
attribute contribution. The value of the contribution is
constructed according to the rules found in domains attribute rules and syntax. The OASIS grammar files
use a <domainsContribution>
element to document the contribution;
this element is used to help enable generation of DTD and XSD grammar files. An XML comment
or <a:documentation>
element can also be used.
The topic or map element type must reference the arch-atts pattern, which
defines the @DITAArchVersion
attribute in the DITA architecture namespace
and sets the attribute to the version of DITA in use. In addition, the topic or map element
type must reference the domains-att pattern, which will pull in a
definition for the @domains
attribute. These attributes give processors a
reliable way to check the architecture version and list of available domains.
<concept>
element.<div> <a:documentation> LONG NAME: Concept </a:documentation> <!-- ... --> <define name="concept.attlist" combine="interleave"> <ref name="concept.attributes"/> <ref name="arch-atts"/> <ref name="domains-att"/> </define> <!-- ... --> </div>
Specialized topics typically define an info-types style pattern to specify default topic nesting. Document type shells can then control how topics are allowed to nest by redefining the pattern. While there are known exceptions described below, the following rules apply when using a pattern to control topic nesting.
<div> <a:documentation>INFO TYPES PATTERNS</a:documentation> <define name="mytopic-info-types"> <ref name="subtopictype-01.element"/> <ref name="subtopictype-02.element"/> </define> <!-- ... --> </div>
If
the topic does not permit nested topics by default, this pattern uses the
<empty>
element. For example:
<define name="learningAssessment-info-types"> <empty/> </define>
The info-types pattern can also be used to refer to common nesting rules across the document-type shell. For example:
<div> <a:documentation>INFO TYPES PATTERNS</a:documentation> <define name="mytopic-info-types"> <ref name="info-types"/> </define> <!-- ... --> </div>
<concept>
element places the pattern after
<related-links>
:<div> <a:documentation>LONG NAME: Concept</a:documentation> <define name="concept.content"> <!-- ... --> <optional> <ref name="related-links"/> </optional> <zeroOrMore> <ref name="concept-info-types"/> </zeroOrMore> </define> </div>
In rare cases, it might not be desirable to control topic nesting with the info-types pattern. For example:
Return to main page.
dita-v1.3-os-part3-all-inclusive Standards Track Work Product | Copyright © OASIS Open 2015. All Rights Reserved. | 17 December 2015 |