The <task> element is the top-level element
for a task topic. Tasks are the main building blocks for task-oriented user
assistance. They generally provide step-by-step instructions that will enable
a user to perform a task. A task answers the question of "how to?" by telling
the user precisely what to do and the order in which to do it. Tasks have
the same high-level structure as other topics, with a title, short description
and body.
The <taskbody> element is the main body-level
element inside a task topic. A task body has a very specific structure, with
the following elements in this order: <prereq>, <context>,
<steps>, <result, <example>
and <postreq>. Each of the body sections are optional.
The pre-requisite (<prereq>) section of a
task should document things the user needs to know or do before starting the
current task. Prerequisite links will be placed in a list after the related-links
section; on output the <prereq> links from the related-links
section are added to the <prereq> section.
The <context> section of a task provides
background information for the task. This information helps the user understand
what the purpose of the task is and what they will gain by completing the
task. This section should be brief and does not replace or recreate a concept
topic on the same subject, although the context section may include some conceptual
information
The <result> element describes the expected
outcome for the task as a whole.
The <postreq> element describes steps or
tasks that the user should do after the successful completion of the current
task. It is often supported by links to the next task or tasks in the <related-links>
section.
Each <choice> element describes one way that
the user could accomplish the current step.
The <step> element represents an action that
a user must follow to accomplish a task. Each step in a task must contain
a command <cmd> element which describes the particular
action the user must do to accomplish the overall task. The step element can
also contain information <info>, substeps <substeps>,
tutorial information <tutorialinfo>, a step example
<stepxmp>, choices <choices> or
a stepresult <stepresult>, although these are optional.
A <substep> element has the same structure
as a <step>, except that it does not allow lists of
choices or substeps within it, in order to prevent unlimited nesting of steps.
Like the <steps> element, the <steps-unordered>
section of a task provides the main content of the task topic, but particularly
for cases in which the order of steps may vary from one situation to another.
For example, fields of a form can be filled in without particular regard
to order as long as the required ones are filled in before submitting the
form. One or more steps is required inside the <steps-unordered>
section.
The <choices> element contains a list of
<choice> elements. It is used when the user will need
to choose one of several actions while performing the steps of a task.
The <steps> section of a task provides the
main content of the task topic. The task is described as a series of steps
that the user must follow to accomplish the task. One or more <steps>
elements is required inside the <steps> section.
The <substeps> element allows you to break
a step down into a series of separate actions, and should be used only if
necessary. Try to describe the steps of a task in a single level of steps.
If you need to use more than one level of substep nesting, you should probably
rewrite the task to simplify it.
The command (<cmd>) element is required as
the first element inside a <step>. It provides the active
voice instruction to the user for completing the step, and should not be more
than one sentence. If the step needs additional explanation, this can follow
the <cmd> element inside an info element.
The information element (<info>) occurs inside
a <step> element to provide additional information about
the step.
The tutorial info (<tutorialinfo>) element
contains information that is included in a step when a task is part of a tutorial.
The <tutorialinfo> element allows you to turn a task
into a learning exercise by including explanatory content about methods for
completing the current step. This information is currently included in all
output processing results, not just tutorials. It is not for use in tasks
that are being used outside of tutorials.
The step example (<stepxmp>) element is used
to illustrate a step of a task. The example can be a couple of words, or an
entire paragraph.
The <stepresult> element provides information
on the expected outcome of a step. If a user interface is being documented,
the outcome could describe a dialog box opening, or the appearance of a progress
indicator. Step results are useful to assure a user that they are on track,
but should not be used for every step, as this quickly becomes tedious.
The <choicetable> element contains a series
of optional choices available within a step of a task.
The <chhead> element is a container inside
the <choicetable> element that provides specific heading
text to override the default Options and Description headings.
The <chhead> element contains both a choptionhd and chdeschd element as a pair.
The <chrow> element is a container inside
the <choicetable> element. The <chrow>
element contains both a <choption> and <chdesc>
element as a pair.
The <choptionhd> element provides a specific
label for the list of options that a user chooses from to accomplish a step.
The default label for options is Option.
The <chdeschd> option provides a specific
label for the list of descriptions of options that a user must choose to accomplish
a step of a task. The default label overridden by <chdeschd>
is Description.
The <choption> element describes an option
that a user could choose to accomplish a step of a task. In a user interface,
for example, this might be the name of radio button.
The <chdesc> element is a description of
an option that a user chooses while performing a step to accomplish a task.
It explains why the user would choose that option, and might explain the result
of the choice when it is not immediately obvious.