DITA without DITA#
19 February 2024
The value proposition of DITA hinges around these three things, mainly:
Enforcing a structure automatically, through strict topic typing
Reusing content at the topic, block, and element level, by means of direct references or keys
Generating profile-targetted content, by using attributes that can filter content at the topic, block, and element level
Are these things possible without DITA?
Assuming a docs-as-code pipeline where the content is written in plain text and transformed through a static site generator (SSG), here’s a comparison table for two SSGs that I am familiar with:
DITA feature |
Sphinx |
MkDocs |
---|---|---|
Enforcing a structure |
No |
No |
Reusing content |
Yes, through variables and includes |
Yes, through variables and includes |
Generating filtered content |
Yes, through the |
Yes, through the |
If this table had had columns for other SSGs too, I suspect that the row values would’ve been similar.
If strict enforcement of a structure is not a requirement, DITA is not needed. One can use the good practices of DITA even outside a DITA environment, even inside a docs-as-code environment.
When is going the DITA way a good option? Let me count the situations.