<refentry id="procedure.element">
<?dbhtml filename="procedure.html"?>
<refentryinfo>
<pubdate>$Date$</pubdate>
<releaseinfo>$Revision$</releaseinfo>
</refentryinfo>

<refmeta>
<indexterm><primary>elements</primary>
<secondary>procedure</secondary></indexterm>
<refentrytitle>procedure</refentrytitle>
<refmiscinfo>Element</refmiscinfo>
</refmeta>
<refnamediv>
<refname>procedure</refname>
<refpurpose>&procedure.purpose;</refpurpose>
</refnamediv>

&procedure.synopsis.gen;
<refsect1 condition='ref.description'><title>Description</title>

<para>
A <sgmltag>Procedure</sgmltag> encapsulates a task composed of <sgmltag>Step</sgmltag>s
(and possibly, <sgmltag>SubSteps</sgmltag>). Procedures are usually performed 
sequentially, unless individual <sgmltag>Step</sgmltag>s direct the reader
explicitly.
</para>

<para>
Often it is important to assure that certain conditions exist before
a procedure is performed, and that the outcome of the procedure matches
the expected results.  DocBook does not provide explicit semantic markup
for these pre- and post-conditions.  Instead, they must be described as
steps (check the pre-conditions in the first step and the results in the
last step), or described outside the body of the procedure.
</para>

<refsect2><title>Processing expectations</title>
<para>
&format.block; 
</para>
</refsect2>



&procedure.parents.gen;
&procedure.children.gen;
</refsect1>
<refsect1><title>Examples</title>

<informalexample role="example-source">
<programlisting>&procedure.example.1.txt;</programlisting>
</informalexample>

<anchor id="ex.os.procedure.1" role="HACK-ex.out.start"/>
&procedure.example.1.gen;
<anchor id="ex.oe.procedure.1" role="HACK-ex.out.end"/>

&procedure.example.seealso.gen;
</refsect1>
</refentry>

