One of the key questions when considering moving to the DITA authoring standard is: how is it different from what I have today? If you create technical documentation using a Help Authoring Tool, such as Flare or RoboHelp, you’ll probably want to compare DITA to these.
It’s not as easy a question to answer as you might think. As DITA is a standard rather than an authoring tool, you’re actually looking at two different things. However, let’s give it a go.
|DITA||Help Authoring Tool|
|Content is written in topics||Content is written in topics|
|Content is organised for publication using maps||Content is organised for publication using Tables of Contents, and within the topics (using Headings)|
|It needs to be changed (published or transformed) into something readable for users||It needs to be changed (published or transformed) into something readable for users|
|You can create different versions of manuals, based on metadata||You can create different versions of manuals, usually based on conditions|
|You can insert variable information into documents, using Keyrefs||You can insert variable information into documents, using variants|
|Formatting is always controlled outside of the topic||Formatting is mostly controlled outside of the topic|
|Your links can change depending on the document or publication in which a topic is used||Your links can change depending on the document or publication in which a topic is used (in some HATs)|
|DITA||Help Authoring Tool (HAT)|
|DITA is an open standard||HATs tend to use proprietary data storage standards|
|DITA content is always written using a markup language||HAT content is sometimes written using a markup language, but generally written using a WYSIWYG editor|
|You can re-use topics in different publications, and make those topics accessible to other writing teams who might want to re-use them||You can only re-use topics within your project in different publications|
|You can use a variety of different authoring tools, content management systems and publishing/rendering engines||You can only use the HAT (although some enable you to incorporate external content written in Word, HTML or emails)|
|It’s easy to share DITA content||It can be tricky to share content|
|There are different types of topics (“Information Types”)||There's a single, general type of topic|
|There are strict rules regarding how the semantic markup in topics is written||There are not always strict rules regarding how the semantic markup in topics is written|
|You cannot have a hierarchical structure (Heading 1, Heading 2, Heading 3 etc) inside an individual DITA topic||You can have a hierarchical structure (Heading 1, Heading 2, Heading 3 etc) inside an individual topic|
|You can set up controlled vocabularies and taxonomies||Only a few HATs enable you to set up controlled vocabularies and taxonomies|
|You can automatically “fill in” default metadata values in a topic||In most HATs you need to add the metadata manually|
|You can add customised content to a list without having to make any changes to that target topic||You cannot add customised content to a list without having to make any changes to that target topic (unless you have added placeholders beforehand)|
|You can replace content in a list without having to make any changes to that target topic||You cannot replace content in a list without having to make any changes to that target topic|
It’s been pointed out to me that there is a way of having a hierarchical structure inside an individual DITA topic, although you’d be stupid if you did so. The “composite topic” or “ditabase” is a DITA information type that can have topics within topics, and those topics can be arranged into a hierarchy. Ditabase pre-dates the ditamap.
We’ve been asked about DITA and automatically “filling in” default metadata values in a topic. Strictly speaking, it doesn’t (although DITA authoring tools may have this feature), but it offers the same capability. DITA’s <defaultSubject> can be used to define a set of metadata values where none have be specified by the author. For example, you have product attributes: “Basic” and “Professional” for the Basic and Professional versions of your product. If there is a <defaultSubject> value of “Basic”, then the publishing processor will generate content using “Basic” setting for the product (i.e. it will generate a guide for the Basic version) unless the author explicitly has set a value (and no other inheritable value is set anywhere else).
Do you agree?
Do you agree with this summary? Anything we’ve missed? Please add your comments below.