DITA Elements with Special Processing

A few DITA elements are given special processing instead of simple element mappings.

<image>

Converted into an <img> tag, setting @width and @height values, if any, using @style, and representing any <alt> tag in both the @alt and @title attributes. The @href attribute becomes @src, but is otherwise untouched; link and graphic references are updated to web URLs automatically after the XSLT runs.

<xref>

Converted into <a> tags. The <desc> element, if present, is converted into @title attribute. The @href attribute is untouched; link and graphic references are updated to web URLs automatically after the XSLT runs. However, you can customize this behavior by overriding the named get-xref-href template.

Processing of <xref> also calls the named extra-xref-attrs template. By default, this sets target="_blank" on links whose @scope is not "local".

<note>

  • The @type attribute value is included in the output @class attribute.
  • A <h4 class="noteHeader"> element containing the @type value is prepended to the note contents.

<table> and <simpletable>

The table structures represented by both <simpletable> and <table> are converted to the HTML table model.

<title>

  • Top-level map and topic titles become <h1>.
  • Second-level topic titles become <h2>.
  • All other topic titles become <h3>.
  • Section and example titles also become <h3>.
  • All other titles become <h4>.

<dl>

Definition lists are converted into simple HTML <dl> tags; <dlhead> elements are removed.

<dlentry>

These are removed unless they contain profiling attributes or attributes from the DITA metadata attribute group, in which case it will be converted into a <div> to carry the HTML versions of those attributes. (This is not valid HTML5, but HTML5 does not provide a valid way to wrap <dt> and <dd> tags, and the use of <div> renders invisibly on all modern browsers.)

<xmlelement>

Wrapped in angle brackets (<>).

<xmlatt>

Prefixed with "@".

<tm>

Appends the appropriate symbol (as specified by @tmtype) to the content. In addition, the @tmtype, @trademark, @tmowner, and @tmclass attributes are converted into HTML data- attributes.

<menucascade>

The children of this element are joined together using a joining character that can be controlled using the $menucascade-separator parameter ( ⇒ by default).

<object data="*.mp4">

When a <object> tag references an MPEG-4 video (as identified by the extension of the @data attribute), it is converted into an HTML5 <video> tag.

<lines>

This becomes <pre class="lines"> instead of a <div>.

<sl> and <sli>

These are converted into <ul> and <li>, respectively.