Supported DITA subset
OpenD parses a documented subset of DITA 1.3 itself, in TypeScript, with no Java toolchain. Every element it supports is listed here.
How elements are matched
Elements are matched by name. DTDs are not fetched or applied, so a DOCTYPE
line is fine but has no effect, and @class specialisation is not used. Common
HTML character entities such as , —,
→ and ™ are understood without a DTD.
An element outside the subset still renders, as a plain block, and validation reports it as an
unsupported-element warning.
Topic elements
The table lists every element allowed in topics, its group, and the HTML it renders as. It
mirrors SUPPORTED_ELEMENTS in packages/dita/src/elements.ts,
and a test fails if the two drift apart.
| Element | Group | Renders as |
|---|---|---|
topic | topic | article, or section when nested |
concept | topic | article, or section when nested |
task | topic | article, or section when nested |
reference | topic | article, or section when nested |
glossentry | topic | article, or section when nested |
troubleshooting | topic | article, or section when nested |
draft-comment | removed | removed by the build |
required-cleanup | removed | removed by the build |
prolog | metadata | kept, not rendered |
titlealts | metadata | kept, not rendered |
navtitle | metadata | kept, not rendered |
searchtitle | metadata | kept, not rendered |
indexterm | metadata | kept, not rendered |
data | metadata | kept, not rendered |
data-about | metadata | kept, not rendered |
foreign | metadata | kept, not rendered |
unknown | metadata | kept, not rendered |
colspec | metadata | kept, not rendered |
resourceid | metadata | kept, not rendered |
dita | structure | children only |
title | structure | heading, figcaption or caption by context |
shortdesc | structure | p |
abstract | structure | div |
body | structure | div |
conbody | structure | div |
taskbody | structure | div |
refbody | structure | div |
troublebody | structure | div |
glossterm | structure | h1 |
glossdef | structure | p |
glossBody | structure | div |
section | structure | section |
example | structure | section |
bodydiv | structure | div |
sectiondiv | structure | div |
div | structure | div |
related-links | structure | nav "Related information" |
link | structure | li with a link |
linktext | structure | span |
linkpool | structure | div |
linklist | structure | div |
desc | structure | span |
p | blocks | p |
ul | blocks | ul |
ol | blocks | ol |
li | blocks | li |
sl | blocks | ul |
sli | blocks | li |
dl | blocks | dl |
dlhead | blocks | div |
dthd | blocks | dt |
ddhd | blocks | dd |
dlentry | blocks | div |
dt | blocks | dt |
dd | blocks | dd |
note | blocks | aside with a label |
codeblock | blocks | pre > code |
pre | blocks | pre |
lines | blocks | div |
lq | blocks | blockquote |
fig | blocks | figure |
image | blocks | img |
alt | blocks | span |
table | blocks | table |
tgroup | blocks | children only |
thead | blocks | thead |
tbody | blocks | tbody |
row | blocks | tr |
entry | blocks | td, or th in a header |
simpletable | blocks | table |
sthead | blocks | thead row |
strow | blocks | tr |
stentry | blocks | td, or th in a header |
properties | blocks | table |
prophead | blocks | thead row |
proptypehd | blocks | th |
propvaluehd | blocks | th |
propdeschd | blocks | th |
property | blocks | tr |
proptype | blocks | td |
propvalue | blocks | td |
propdesc | blocks | td |
refsyn | blocks | section |
prereq | task | section |
context | task | section |
steps | task | ol |
steps-unordered | task | ul |
steps-informal | task | div |
step | task | li |
cmd | task | span |
info | task | div |
substeps | task | ol |
substep | task | li |
stepxmp | task | div |
stepresult | task | div |
tutorialinfo | task | div |
choices | task | ul |
choice | task | li |
result | task | section |
postreq | task | section |
tasktroubleshooting | task | section |
condition | troubleshooting | section |
troubleSolution | troubleshooting | div |
cause | troubleshooting | section |
remedy | troubleshooting | section |
ph | inline | span |
b | inline | b |
i | inline | i |
u | inline | u |
sup | inline | sup |
sub | inline | sub |
tt | inline | code |
line-through | inline | s |
overline | inline | span |
keyword | inline | span |
term | inline | em |
q | inline | q |
xref | inline | a, or plain text when hidden |
codeph | inline | code |
filepath | inline | code |
cmdname | inline | code |
varname | inline | var |
userinput | inline | kbd |
systemoutput | inline | samp |
uicontrol | inline | span |
wintitle | inline | span |
menucascade | inline | span with > separators |
option | inline | code |
parmname | inline | code |
apiname | inline | code |
msgph | inline | samp |
synph | inline | code |
text | inline | span |
tm | inline | span with a ™, ® or ℠ mark |
cite | inline | cite |
fn | inline | span in parentheses |
abbreviated-form | inline | span |
Map and bookmap elements
Maps may contain map, bookmap, title,
topicmeta, navtitle, linktext,
shortdesc, keywords, keyword,
searchtitle, data, topicref,
topichead, topicgroup, keydef,
mapref, ditavalref, anchor,
anchorref, navref, chapter, part,
appendix, appendices, frontmatter,
backmatter, notices, booktitle,
mainbooktitle, booktitlealt, bookmeta,
booklists, toc, indexlist,
glossarylist, tablelist, figurelist,
reltable, relheader, relcolspec,
relrow, relcell, glossref and
resourceid.
Of these, navigation is built from topicref, topichead,
topicgroup, mapref, chapter,
part, appendix, frontmatter and
backmatter; keys come from any element with keys. Relationship
tables, anchor, navref, ditavalref and the book
lists are accepted and ignored. See Topics, maps and bookmaps.
Not supported yet
- DTD processing and
@classspecialisation. conrefendranges andconaction. They produce anunsupported-conrefwarning, and only the start element is pulled.- Relationship tables, key scopes and branch filtering with
ditavalref. - Topic references to external or non-DITA resources (
unsupported-topicref). - DITAVAL flagging styles:
flagincludes the content without styling it.