DITA can be understood at the level of an abstract model without
reference to particular DTDs, schemas, or actual XML documents. When discussing
DITA concepts at this level, the following terminology is used.
- Element type
- Defines the structure and semantics for a fragment of content.
- Specialized element type
- Defines an element type as a semantic refinement of another element type.
The content allowed by the specialized element type must be a subset of or
identical to the content allowed by the original element type.
- Topic type
- An element type that defines a complete unit of content. The topic type
provides the root element for the topic and, through contained element types,
substructure for the topic instances. The root element of the topic type is
not necessarily the same as the root element of a document type: document
types may nest multiple topic types, and may also declare non-DITA wrapper
elements as the root element for compatibility with other processes.
- Map type
- An element type that defines a set of relationships for topic instances.
The map type provides the root element and, through contained element types,
substructure for the map instances. The map substructure provides hierarchy,
group, and matrix organization of references to topic instances.
- Structural type
- A topic type or map type.
- Domain
- A set of elements that support a specific subject area. Elements in a
domain can be integrated with topic or map types to enhance their semantic
support for particular kinds of content. For example, the structural type <topic>
declares the <keyword> element; when integrated with a domain for describing
user interfaces, new keyword specializations (such as <wintitle>) become
available wherever <keyword> was allowed in the original structural type.
- Document type
- The full set of element types defined in the modules that are integrated
by the document type shell. A DITA document type may support authoring multiple
topic types or multiple map types, but not a mix of the two. The structural
types can be augmented with elements from domains. The term "document type"
is used for compatibility with existing standards, since this is the point
at which DITA's set of topic, domain, and map types are assembled into a document
type that is functionally equivalent to a traditional non-modularized document
type.