# procedure

procedure — A list of operations to be performed in a well-defined sequence

##### Description

A procedure is used to write an instruction or a task made up of steps (and possibly, substep)s. In most cases it is recommended to use the procedure list type rather than a regular orderedlist for instructions, as it provides several benefits to distinguish between them.

There are no explicit elements for pre- and post-conditions (sometimes called pre-requisites or post-requisites) in the procedure  element in Paligo, just as in DocBook. The model is intentionally simpler, and such elements are avoided. (See this article for more on this: There are no Prerequisites). Instead, they should be described as steps (check the pre-conditions in the first step and the results in the last step).

(If still really desired, the task element, provides some of this infrastructure, but there is little out-of-the-box styling support for this and it may require a customization.)

##### Parents

The procedure element is most often used as a direct child to section (i.e the root element of a topic). But it is also valid in many other contexts, so you could for example have a procedure in a table cell, in an example, etc. See the full list of parents here.

##### Children

The main child element is step. At the top of a procedure many other elements can be used, however, as in an introduction to the procedure, including an (optional) titlepara, and more.

Example 1. Procedure
<procedure>
<title>An Example Procedure</title>
<step>
<para> A Step </para>
</step>
<step>
<para> Another Step </para>
<substeps>
<step>
<para> Substeps can be nested indefinitely deep. </para>
</step>
</substeps>
</step>
<step>
<para> A Final Step </para>
</step>
</procedure>