Mapping rules

A mapping rule rewrites one kind of DITA element into DITA that converts cleanly, before conversion. Rules are small XSLT templates that a writer reviews and approves.

Some elements have no Markdown equivalent. A <choicetable>, for example, can become a <simpletable> with the same rows and ID. A rule records what it matches, what it does, who proposed it, which run it came from, and who approved it.

Rules run on a working copy, never on your source, and the checks still compare against the untouched source. A rule can only make a topic pass by making the migrated page match the published one.

Because a model writes some rules, every rule is limited before it runs: XSLT templates only, no file or network access, no imports and no extension functions.

The checks decide whether a topic passes. The agent can propose a fix, but it can't change a check result, and a writer approves every rule before it is used again.