The @type attribute
Using @type on a linking element
The @type attribute describes the target of a cross-reference and might generate cross-reference text based on that description. Only the <xref> element can link to content below the topic level: other types of linking can target whole topics, but not parts of topics. Typically <xref> should also be limited to topic-level targets, unless the output is primarily print-oriented. Web-based referencing works best at the level of whole topics, rather than anchor locations within topics.
If not explicitly specified on an element, the @type attribute value cascades
from the closest ancestor element. If there is no explicit value for the
@type attribute on any ancestor, a default value of “topic” is used.
During output processing for references to DITA topics (format="dita"
), it
is an error if the actual type of a DITA topic and the explicit, inherited, or default
value
for the @type attribute are not the same as or a specialization of the
@type attribute value. In this case, an implementation MAY give an error message, and MAY recover from this error condition by
using the @type attribute value. During output processing for references to
non-DITA objects (that is, either scope is “external"
or format is neither “dita” nor “ditamap”) or other cases where the type of the referenced
item cannot be determined from the item itself, the explicit, inherited, or default
value
for the @type attribute is used without any validation. When a referencing
element is first added to or updated in a document, DITA aware editors MAY set the @type
attribute value based on the actual type of a referenced DITA topic.
If the @type attribute is specified when referencing DITA content, it should match one of the values in the referenced element's @class attribute. The @type value can be an unqualified local name (for example, "fig") or a qualified name exactly as specified in the @class attribute (for example, "mymodule/mytype"). Processors might ignore qualified names or consider only the local name.
For example, if the value is set to type="topic"
, the link could be to a generic
topic, or any specialization of topic, including concept, task, and reference. Applications
MAY issue a warning when the
specified or inherited @type attribute value does not match the target (or a
specialization ancestor of the target).
Some possible values for use on the <xref> element and its specializations include:
- fig
- Indicates a link to a figure.
- table
- Indicates a link to a table.
- li
- Indicates a link to an ordered list item.
- fn
- Indicates a link to a footnote.
- section
- Indicates a link to a section.
Other values thatcan be used on any linking element include:
- concept, task, reference, topic
- Cross-reference to a topic type.
- (no value)
- The processor should retrieve the actual type from the target if available. If the type cannot be determined, the default should be treated as "topic".
- -dita-use-conref-target
- See Using the -dita-use-conref-target value for more information.
Other values can be used to indicate other types of topics or elements as targets. Processing is only required to support the above list or specializations of types in that list. Supporting additional types as targets might require the creation of processing overrides.
Using @type in a <note> element
In a <note> element, this defines the type of note. For example, if the note is a tip, the word Tip might be used to draw the reader's attention to it. The values danger, warning, and notice have meanings that are based on ANSI Z535 and ISO 3864 regulations.
If @type is set to "other", the value of the @othertype attribute can be used. If you use @othertype, many processors will require additional information on how to process the value. Allowable values for the @type attribute are:
- note
- This is just a note.
- attention
- Please pay extra attention to this note.
- caution
- Care is required when proceeding.
- danger
- Important! Be aware of this before doing anything else. When used with the <hazardstatement> element, this indicates an imminently hazardous situation which, if not avoided, will result in death or serious injury.
- fastpath
- This note will speed you on your way.
- important
- This note is important.
- notice
- Indicates a potential situation which, if not avoided, might result in an undesirable result or state.
- remember
- Don't forget to do what this note says.
- restriction
- You can't do what this note says.
- tip
- This is a fine little tip.
- warning
- Indicates a potentially hazardous situation. When used with the <hazardstatement> element, this indicates a situation which, if not avoided, could result in death or serious injury.
- trouble
- Provides information about how to remedy a trouble situation.
- other
- This is something other than a normal note.
- -dita-use-conref-target
- See Using the -dita-use-conref-target value for more information.