|Cross-referencing / Cross-referencing elements in a topic|
Cross-references to steps are accomplished with the xref element with a type attribute of li.
When referring a reader to a step in a task, you should not hard-code the step number. In different contexts (such as when the content is filtered or transcluded) the step number may be different, or if a step is added, there is a high risk that the hard-coded reference won't be updated.
You must always use the xref element to cross-reference steps, with the type attribute set to li. (The li element is the ancestor of the step element.)
You can only reference a step by its id attribute; therefore, before you can cross-reference to a step, you must ensure that the step element's id attribute has a value.
The following example illustrates how to cross-reference a step number. Don't include any text in the xref element, otherwise this text will be rendered (in most publishing tools), not the step number.
<task id="keypad1"> ... <step id="a"> <cmd>..</cmd> </step> <step> <cmd>Repeat step <xref href="#keypad1/a" type="li" /> until the red light displays.</cmd> </step> ... </task>
Referring to a step in another topic is almost identical; the difference is that the href attribute will include the file name of the other topic. Again, you must set the type attribute to li.
<cmd>Complete step <xref href="c_panel.dita#keypad2/b" type="li" /> of the PIN recovery procedure.</cmd>