Skip to content

structured authoring · topic-based authoring · content reuse · CCMS

What is structured authoring - a plain guide

Vlad Kuzin
On this page

Structured authoring is a way of writing where content is broken into small, self-contained, reusable blocks that carry meaning through semantic markup instead of visual formatting. You write modular topics, not whole documents, and a publishing system assembles, filters, and renders them into web pages, PDFs, and other outputs. The core move is separating what content is from how it looks, so the same source can be reused, conditioned, and published across formats without being rewritten.

The idea is decades old. IBM developed DITA in the early 2000s and OASIS ratified it as a standard in 2005, which is where most people first met structured authoring as a formal discipline. For a long time the concepts came bundled with XML, and that bundling scared off teams who did not want to hire a DITA architect. The principles are separable from the syntax, and this guide keeps them plain.

Structured authoring in one before-and-after example

The clearest way to see structured authoring is to watch what happens to one sentence across a documentation set.

Suppose your product has a safety warning: "Disconnect power before removing the cover." It appears in the installation guide, the maintenance guide, and three troubleshooting topics. In unstructured authoring, that warning is copy-pasted into six documents. When legal asks you to change "Disconnect power" to "Disconnect power and wait 60 seconds for capacitors to discharge," you open six files, find six warnings, and edit each one. Miss one, and a shipped document now contradicts the other five.

In structured authoring, that warning is a component: one block, stored once, referenced from six topics. You edit the source once. Every reference updates. A where-used view tells you exactly which topics carry it before you touch it. The warning is also marked as a warning (not just bold red text), so it renders as a styled admonition on the web, a boxed caution in the PDF, and a blockquote in Markdown, all from the same source.

That single example contains the whole thesis. The rest is mechanism.

The four building blocks

Structured authoring is built from four ideas. Most tools implement all four, though the depth and the labels vary.

Building blockWhat it meansThe problem it solves
Topic-based authoringWrite small, self-contained units (a concept, a task, a reference) instead of long chaptersTopics can be reordered, reused in different guides, and read out of sequence, the way people actually consume docs
Component reuseWrite a block once, reference it from every topic that needs it; edit the source and all references updateKills copy-paste drift: the warning, the setup step, the compatibility note stay identical everywhere
Conditional contentTag blocks by audience, platform, plan, or version; filter at publish timeOne source serves multiple readers: a Windows and a Mac guide from a single topic, not two files that diverge
VariablesDefine values (product name, version, URL) once and reference them throughoutRebrand or bump a version by changing one value, not running find-and-replace across a project

Topic-based authoring

A topic is the atom. Rather than a 40-page administrator guide written top to bottom, you write dozens of topics, each answering one question or covering one task, then arrange them in a map that defines reading order and hierarchy. The same topic can appear in the admin guide, the quick-start, and a role-specific guide without being duplicated. This is the structural foundation the other three blocks build on.

Component reuse

A component is a reusable block: a paragraph, a procedure, a table, an image, or a group of these. You write it once and insert a reference wherever it belongs. The before-and-after warning above is component reuse. The discipline behind it is single-sourcing, and the failure it prevents is the slow divergence of copies that looked identical the day they were pasted. We cover the full spectrum in content reuse - from copy-paste to single source.

Conditional content

Conditional content lets one topic serve two or more audiences. You define dimensions (audience, platform, plan tier) and their values, then tag blocks so they appear only for the right reader. At publish time, the pipeline filters. A single "Install the agent" topic can carry Windows-only, macOS-only, and enterprise-only blocks, and each published output shows only what applies. The alternative, maintaining three near-identical topics by hand, is where documentation sets quietly rot.

Variables

Variables handle values that repeat and change: the product name, the current version, a support URL, a company name. Define each once, reference it as a token, and a single edit propagates everywhere. When a product gets renamed mid-lifecycle, variables turn a multi-day cleanup into a one-line change.

Structured vs unstructured, side by side

The trade is real, not free. Structure buys consistency and reuse at the cost of upfront setup and a learning curve.

DimensionUnstructured authoringStructured authoring
Unit of workWhole document (Word file, wiki page, Google Doc)Topic: a small, self-contained block
Content vs. formattingFused: a heading is bold 18pt textSeparated: a heading is tagged as a heading
ReuseCopy-paste; copies drift apartReference a single source; every use updates together
Two or more audiencesDuplicate the document and edit eachCondition one source; filter at publish
Output formatsReformat manually per channelRender the same source to web, PDF, Markdown
Consistency at scaleDegrades as documents multiplyHolds: one source of each thing
Startup costNear zero: open a doc and typeReal: model your topics, conditions, variables first
Best fitSmall sets, one audience, one format100+ topics, 2+ audiences or versions, 2+ outputs

Unstructured authoring is not wrong. For a 20-page internal runbook with one audience, it is the correct choice, and reaching for a structured tool would be over-engineering. Structure earns its cost only when repetition and drift start hurting.

When structured authoring is worth it, and when it is not

Three thresholds decide it. Any one of them tips the math toward structure; two or three make it clear-cut.

  1. Volume. More than roughly 100 topics. Below that, you can hold the whole set in your head and coordinate changes manually. Above it, manual coordination is where errors hide.
  2. Audiences or variants. Two or more reader groups, product editions, or supported platforms. Every added variant multiplies the copies you maintain in an unstructured setup.
  3. Output formats. Two or more channels: a web help center and a downloadable PDF, or docs that also feed in-app help. Each channel is another place a document can drift.

When is it not worth it? When you have a small, single-audience, single-format documentation set that changes rarely. When your whole team is two people who sit next to each other and never lose track of what changed. When adopting a structured tool would cost more time in setup and training than it saves in a year of maintenance. In those cases, a wiki or a docs-as-code repo is the honest answer, and switching would be motion without progress.

Non-product alternatives, named honestly

Structured authoring is a discipline, not a product. Four tool families deliver it, and none is universally right.

  • DITA + the DITA Open Toolkit. The original, and still the deepest at org scale. It is free and open, the standard is mature, and specialization (custom topic types) is unmatched. The cost is XML: you will write or generate angle-bracket markup, maintain a toolchain, and most teams need a dedicated DITA architect to run it well. Excellent for large, standards-driven organizations; heavy for a team of three. See DITA alternatives that keep the structure, drop the XML.
  • Docs-as-code (Markdown + a static site generator). Sphinx, Antora, MkDocs, Hugo, and similar tools give you version control, reuse via includes, and multi-format output, all in plain text your engineers already understand. This is a genuinely good structured setup for developer-facing docs. The limits show up with conditional content, rich reuse, and non-technical contributors: plain Markdown has no conditions and no variables, so teams extend it with frontmatter, directives, and build pipelines until it becomes a bespoke system only its author fully understands.
  • Wikis (Confluence, Notion). Not structured authoring, and that is fine at small scale. They are fast to start and easy for anyone to edit. They fuse content and formatting, offer little real reuse, and have no conditional publishing, so they degrade exactly where the three thresholds above are crossed.
  • Enterprise CCMS platforms (Paligo, Heretto, MadCap Flare). Full structured authoring with strong single-sourcing, and the right call for large teams with localization and complex variant matrices. The trade is price, ramp time, and interfaces built for 50-writer departments rather than a solo owner. A CCMS is the category; whether you need the enterprise weight of one is a separate question.

Topicary sits in the gap between docs-as-code and enterprise CCMS: the structured-authoring building blocks (topic-based authoring, component reuse, conditional content, variables, multi-channel publishing) in a block editor, without XML and without a procurement cycle. See how the four blocks work without markup in structured authoring without XML.

Moving from unstructured to structured

You do not migrate a documentation set overnight, and you should not try. A workable path:

  1. Inventory before you import. List your documents, note which content repeats, and flag the sentences you have already fixed in more than one place. Those repetitions are your first components.
  2. Chunk into topics. Break long documents at their natural task and concept boundaries. A section that answers one question is usually one topic.
  3. Extract obvious components. Pull the recurring blocks (warnings, setup steps, boilerplate) into single sources and replace the copies with references.
  4. Add conditions only where variants exist. Do not condition speculatively. Tag blocks when you actually maintain more than one audience or version.
  5. Define variables for the moving values. Product name, version, URLs: anything you would otherwise find-and-replace.
  6. Publish to your channels and check fidelity. Confirm the same source renders correctly to every output before you retire the old files. This is where tools that only claim single-sourcing tend to fail.

Import matters here. Most content already lives in Markdown, Word, Confluence, DITA, or a Flare project, and the cleaner the importer, the less of step 2 you do by hand. Topicary imports seven formats (Markdown, HTML, Word, DITA, Confluence, MadCap Flare, and OpenAPI), mapping snippets to components and TOC structure to maps where the source format carries them. Tool-specific features like custom stylesheets or micro content do not transfer and need manual recreation.

FAQ

What is structured authoring in simple terms? It is writing content as small reusable blocks that carry meaning, instead of writing whole documents where content and formatting are fused. A publishing system then assembles and renders those blocks into different outputs. The payoff is that you write and fix things once, and every place they appear stays consistent.

Is structured authoring the same as single-sourcing? They are related but not identical. Single-sourcing is the principle of maintaining one source of truth for each piece of content. Structured authoring is the broader practice (topics, components, conditions, variables) that makes single-sourcing practical at scale. You single-source through structured authoring.

Can I do structured authoring in Markdown? Partly. Docs-as-code setups built on Markdown deliver topic-based authoring, version control, and multi-format output well. Plain Markdown has no conditions, no variables, and only basic includes, so teams extend it heavily with frontmatter, custom directives, and build pipelines. At that point you have a structured system that happens to write its source in Markdown, which is a legitimate choice for developer docs.

Does structured authoring require XML? No. XML was the historical carrier because DITA and DocBook dominated, but the principles are independent of the syntax. Modern tools apply topics, reuse, conditions, and variables in a visual editor and store content as structured JSON. XML remains the right choice for large standards-driven organizations, not a requirement for the discipline.

How large does a team need to be before structured authoring makes sense? Team size matters less than content shape. A single writer maintaining 300 topics across three product editions benefits more than a five-person team writing one small internal guide. The deciding factors are volume, number of audiences or variants, and number of output formats, not headcount.

What is the biggest mistake teams make adopting structured authoring? Over-structuring on day one: defining elaborate conditions and topic types before they have the content or the need. Structure should follow real repetition, not anticipate it. Start by extracting the components you already duplicate, add conditions only where you truly maintain variants, and let the model grow from evidence rather than ambition.

FAQ

Frequently asked

What is structured authoring?

Structured authoring is a way of writing where content is broken into small, self-contained, reusable blocks (topics) that carry meaning through semantic markup rather than visual formatting. Instead of writing whole documents, you write modular pieces that a publishing system assembles, filters, and renders into web pages, PDFs, and other formats. The key shift is that content is separated from its presentation and can be reused, conditioned, and single-sourced across every output.

What is the difference between structured and unstructured authoring?

Unstructured authoring produces whole documents where content and formatting are fused: a Word file or a Google Doc where a heading is just bold 18pt text. Structured authoring produces semantic blocks where a heading is marked as a heading, a warning is marked as a warning, and a reusable procedure lives in exactly one place. The practical difference is reuse and consistency: in structured authoring, updating one source updates every place it appears; in unstructured authoring, you find and edit every copy by hand.

Is structured authoring the same as DITA?

No. DITA is one implementation of structured authoring, not the definition of it. DITA is an XML standard that IBM developed and OASIS ratified in 2005, and it formalized topic-based authoring with strict schemas. But structured authoring is the underlying discipline (topics, reuse, conditions, variables, separation of content from presentation), and modern tools deliver those principles in a block editor without any XML. You can do structured authoring without ever seeing an angle bracket.

When is structured authoring worth the cost?

Structured authoring pays off when you manage more than roughly 100 topics, serve 2 or more audiences or product variants, or publish to 2 or more output formats. Below that scale, a wiki or docs-as-code setup is usually faster because manual coordination is cheap. Above it, the cost of drift (outdated procedures, mismatched warnings, wrong screenshots across versions) exceeds the cost of learning a structured tool, usually within two or three release cycles.

Do I need to learn XML to do structured authoring?

No. XML was the historical price of admission because DITA and DocBook were the dominant structured formats, but it is no longer required. Modern authoring tools apply the same principles (topics, component reuse, conditions, variables, multi-channel publishing) through a visual block editor and store content as structured JSON behind the scenes. The concepts of structured authoring are separable from the XML syntax that once carried them.

What are the building blocks of structured authoring?

The four building blocks are topic-based authoring (small self-contained units instead of long documents), component reuse (write a block once and reference it everywhere), conditional content (tag blocks so one source serves two or more audiences), and variables (define values like product name or version once and reference them throughout). Together they let one source produce correct, consistent outputs across formats. Most structured tools support all four, though the depth varies.

Ready to try Topicary?

Start free. No credit card required.