% @(#)iso.tex	2.6 dated 91/05/02 at 09:57:15

\documentstyle{iso}
% If you prefer not straining your eyes, try:
% \documentstyle[10pt,onecolumn]{iso}

\standard{LaTeX style}
\title{Information processing --- The \iso\ LaTeX style --- Documentation}

\documenttype{}
\runninghead{ISO LaTeX style, version 2.6
}

% A command for referring to the ISO style
\newcommand{\iso}{{\tt iso\/}}

% \leftoffset might be needed if your printer is mis-aligned.
% \leftoffset{1in}

\newverbatim{example}

% Give the right page numbering for camera-ready copy
% \cameraready

\begin{document}

\tableofcontents
\listoffigures
\listoftables

% \foreword
% An experimental foreword.
% Shouldn't be necessary since ISO central secretariat set it.

% \introduction
% This document describes the \iso\ style for typesetting ISO standards using
% LaTeX.
% It is written using the \iso\ style to give an example of its use.

\maketitle

\section{Scope and field of application}
This document
\begin{itemize}
\item describes how to use the \iso\ style;
\item provides an example of the style's use.
\end{itemize}

It is intended for use by those writing ISO standards.

\section{References}
\label{references}
\begin{references}
\bibitem[ISO 8879]{sgml} Information processing ---
    Text and office systems --- Standard
    Generalised Markup Language (SGML).
\bibitem[ISO 646]{charset} The 7-bit coded character set for information
    processing interchange.
\bibitem[BS 0]{bs0} A standard for standards.
\end{references}

\section{Definitions}
\label{definitions}
\definition{definition}
\label{def.def}
A definition is numbered in the same way as a clause but has a run-in
header and does not appear in the table of contents; see
\ref{div.special.def} for further details.

\section{Document structure}
\clause{General}
A standard written using the \iso\ style must obey certain rules, as
follows:
\begin{enumerate}
\item\label{structure.general.documentstyle}
    The first non-comment line must be
    \begin{verbatim}
    \documentstyle{iso}
    \end{verbatim}
\begin{note}
    The \iso\ style also allows optional arguments which specify 
    point size and number of columns: see~\ref{columns} for details.
    Other style options may also be used: see~\ref{compat.style} for
    a discussion.
\end{note}

\item\label{structure.general.title}
    This must be followed by two lines giving the number and title of
    the standard, as follows:
    \begin{verbatim}
    \standard{1234}
    \title{A standard for egg-sucking}
    \end{verbatim}

\begin{note}
    An optional version number may also be given thus:
    \begin{verbatim}
    \version{1.6.4}
    \end{verbatim}
    This version number is then available in the body of the document with
    the \verb|\theversion| command; for example, with the \verb|\version|
    command above, \verb|\theversion| gives \version{1.6.4}\theversion.
\end{note}

\item Any user-defined LaTeX macros should follow the standard number
    and title. There should then follow the begin document command:
    \begin{verbatim}
    \begin{document}
    \end{verbatim}

\item \label{structure.general.maketitle}
    Then come the tables of contents (optional, see \ref{contents}),
    foreword (optional, see \ref{special.foreword}), introduction
    (optional, see \ref{special.intro}) and title commands.
    The title command is written thus:
    \begin{verbatim}
    \maketitle
    \end{verbatim}

\item The structure of the rest of the document is described in \ref{divns}.
    The document must finish with
    \begin{verbatim}
    \end{document}
    \end{verbatim}
    \end{enumerate}

See annex \ref{annex.example} for an example standard.

\clause{Divisions and subdivisions}
\label{divns}

\subclause{Names of divisions and subdivisions}
The \iso\ style permits a document to be made up of the following divisions:
part, section, clause, subclause, subsubclause, subsubsubclause.

Each type of division is introduced in the normal LaTeX manner by a command,
whose name is that of the division type, and a parameter which is the title of
the division. For example:
\begin{verbatim}
\section{A typical section}
\clause{This is a clause}
\subclause{Winds light to variable}
\subsubclause{The famous Eccles}
\subsubsubclause{The Greenslade story}
\end{verbatim}

Each division generates a corresponding entry in the table of contents
(see \ref{contents}).
Starting a new division causes all subsidiary division
numbers to start again from zero (e.g. starting a clause resets the
subclause, subsubclause and subsubsubclause numbers to zero).
\begin{note}
This is a change from ordinary \LaTeX\ in which starting a division only
resets the counter one level below, and not those at lower levels --- I
regard this as a bug in \LaTeX.
\end{note}

There are also untitled versions of subsubclause and subsubsubclause
introduced by \verb|\namelesssubsubclause| and \verb|\namelesssubsubsubclause|
respectively.
These have run-in headers and do not produce entries in the table of
contents.

Finally there is the lowest level of division: the paragraph.
This is unnumbered and untitled and introduced by either \verb|\par|
or a blank line.

\subclause{Special divisions}
\subsubclause{Tables of contents}
\label{contents}
Tables of contents are produced in the usual LaTeX manner, using
\verb|\tableofcontents|, \verb|\listoffigures| and
\verb|\listoftables|.
These should come before the \verb|\maketitle|, see
\ref{structure.general.maketitle}.
\begin{note}
If you find the table of contents too detailed, you can reduce the depth
of division entered in the table by changing the \verb|tocdepth| counter.
For instance
\begin{verbatim}
\setcounter{tocdepth}{2}
\end{verbatim}
gives a table of contents with entries only down to the clause level.
\end{note}

\subsubclause{Foreword}
\label{special.foreword}
The foreword to a standard appears after the tables of contents and is
unnumbered.
For this reason, it uses a special macro as follows:
\begin{verbatim}
\foreword
\end{verbatim}
In fact, the foreword to a standard is set by ISO central secretariat so
it should not usually be necessary to include one in your documents.

\subsubclause{Introduction}
\label{special.intro}
The introduction to a standard appears after the tables of contents and the
foreword and is unnumbered.
Like the foreword, it uses a special macro:
\begin{verbatim}
\introduction
\end{verbatim}

\subsubclause{References}
The references section contains titles of normative documents to which
reference is made in the body of the standard.
The references section is constructed as follows:
\begin{verbatim}
\section{References}
\begin{references}
\bibitem[ISO 8879]{sgml} Information processing ---
    Text and office systems --- Standard
    Generalised Markup Language (SGML).
\end{references}
\end{verbatim}
The output from this is shown in section \ref{references}.

The second argument of the \verb|\bibitem| command is a label which is used
in citing the document.
For instance, \verb|\cite{sgml}| gives the output \cite{sgml}.
\begin{note}
If the first text in a paragraph is \verb|\cite|, then the paragraph
will start in the wrong place.
This is a LaTeX bug.
\end{note}

\subsubclause{Definitions}
\label{div.special.def}
A definition is numbered in the same way as a clause but has a run-in
header and does not appear in the table of contents; see section
\ref{definitions} for examples.
A definition is entered as follows:
\begin{verbatim}
\definition{term} Text of definition...
\end{verbatim}

\begin{note}
Definitions and clauses should not appear in the same section
since they are numbered independently of each other.
\end{note}

\subsubclause{Annexes}
The main body of a standard may be followed by annexes, each of which is
either normative or informative.
The first annex should be preceded by the \verb|\annex| command.
Normative annexes are then introduced by the command:
\begin{verbatim}
\normative{Annex title}
\end{verbatim}
while informative annexes are introduced by the command:
\begin{verbatim}
\informative{Annex title}
\end{verbatim}

Annexes may be divided into clauses, subclauses etc in the same way as
sections; the only difference is that annexes are numbered using upper-case
letters rather than Roman numerals.
\begin{notes}
\item Users who are using the \iso\ style for documents other than standards may
wish to continue using the \verb|\section| command to introduce annexes ---
this produces a less obtrusive heading than the ISO recommended one and
makes no mention of normative/informative.
\item The ISO directives state that there should be no annexes numbered
{\bf I} or {\bf O}.
The \iso\ style does not implement this automatically, but you can achieve the
same effect by placing, immediately before the {\bf I}'th and {\bf O}'th
annexes, the command:
\begin{verbatim}
\addtocounter{section}{1}
\end{verbatim}
\end{notes}

\section{Notes}
\clause{General}
ISO directives allow three types of note: an isolated note, a series of
isolated notes at separate places within the same division, and a group of
numbered notes.

The \iso\ style allows another type of note, which is tied to a particular
document version number.

\clause{Note types}
\subclause{Isolated}
An isolated note is written as follows:
\begin{verbatim}
\begin{note}
Text of note.
\end{note}
\end{verbatim}
and appears in the text thus:
\begin{note}
Text of note.
\end{note}

\subclause{Series}
Isolated notes in a series should be numbered sequentially.
The number is given as an optional argument to the \verb|note|
environment thus:
\begin{verbatim}
\begin{note}[17]
Text of note.
\end{note}
\end{verbatim}
The note appears in the text as follows:
\begin{note}[17]
Text of note.
\end{note}

\subclause{Grouped}
A group of notes is written as follows:
\begin{verbatim}
\begin{notes}
\item The first note.
\item Another note.
\item And so on.
\end{notes}
\end{verbatim}
and appears thus:
\begin{notes}
\item The first note.
\item Another note.
\item And so on.
\end{notes}

\subclause{Version}
A version note takes an argument which gives the document version number to
which the note applies.
The note is printed only if this argument is the same as the version number
given in the
\verb|\version| command (see \ref{structure.general.title}).
For example, the text:
\begin{verbatim}
\version{1.6.4}

\begin{versionnote}{1.3.2}
A version note for version 1.3.2.
\end{versionnote}

\begin{versionnote}{1.6.4}
A version note for version 1.6.4.
\end{versionnote}
\end{verbatim}
gives the output:
\version{1.6.4}
\begin{versionnote}{1.3.2}
A version note for version 1.3.2.
\end{versionnote}

\begin{versionnote}{1.6.4}
A version note for version 1.6.4.
\end{versionnote}

\section{Lists}
\clause{General}
There are three types of list provided by the \iso\ style: itemized,
enumerated and description.
They are described in \ref{lists.types}.

Lists may be nested up to four deep.
If you exceed this limit, you have probably designed your standard badly.

\clause{List types}
\label{lists.types}
\subclause{Itemized}
Itemized lists are used when there is no need to identify the separate
elements of the list.
They are written as follows:
\begin{verbatim}
\begin{itemize}
\item The first item.
\item The next item. Entries may continue
    over several lines if necessary.
\end{itemize}
\end{verbatim}
The resulting output appears as follows:
\begin{itemize}
\item The first item.
\item The next item. Entries may continue
    over several lines if necessary.
\end{itemize}

\subclause{Enumerated}
Enumerated lists are used when it is necessary to identify the separate
list elements.
They are written as follows:
\begin{verbatim}
\begin{enumerate}
\item The first enumerated item.
\item Another enumerated item.
\end{enumerate}
\end{verbatim}
and the output appears as follows:
\begin{enumerate}
\item The first enumerated item.
\item Another enumerated item.
\end{enumerate}

\subclause{Description}
Description lists are used when each element of the list has a label.
They are written as follows:
\begin{verbatim}
\begin{description}
\item[Figure 1] An everyday object, seen from an
    unusual angle.
\item[Figure 2] An everyday angle, seen from an
    unusual object.
\end{description}
\end{verbatim}
and the output appears as follows:
\begin{description}
\item[Figure 1] An everyday object, seen from an
    unusual angle.
\item[Figure 2] An everyday angle, seen from an
    unusual object.
\end{description}

\section{Special characters}
\label{specialchars}
\clause{General}
The \iso\ style defines a few commands to access unusual elements of the
LaTeX character set.
These are given in the rest of this section.

Some of the predefined LaTeX commands to do such things are given in
\ref{guide.unusual}.
There are many more in the LaTeX book.

\clause{Reserved characters}
\label{specialchars.reserved}
LaTeX has ten reserved characters:
\begin{verbatim}
# $ % & ~ _ ^ \ { }
\end{verbatim}

These are available in the \iso\ style as
\begin{verbatim}
\# \$ \% \& \tilde \_ \caret \bslash \{ \}
\end{verbatim}
respectively.

The `\bslash' character only exists in the TeX maths and typewriter fonts.
The \verb|\bslash| command gives a maths backslash, except inside a
\verb|\prog| command (see \ref{prog}), where it gives a typewriter
backslash.
\begin{note}
\verb|\bslash| differs from TeX's \verb|\backslash| in two ways:
\begin{itemize}
\item It is defined as an ordinary character, rather than a delimiter.
\item In PS-LaTeX, where the backslash character is available in all fonts,
    \verb|\bslash| gives that character.
\end{itemize}
\end{note}

\clause{Quotes}
When you types quotes, \prog{\rquote} or \prog{\lquote}, in LaTeX, they
appear as ' and ` respectively.
You may prefer \rquote\ and \lquote\ in which case you can type
\verb|\rquote| or \verb|\lquote| repectively (these stand for right and
left quote --- I don't like these names but all the good ones have been
taken by TeX).

\section{Program text}
\clause{Short text}
\label{prog}
It is usually convenient to set program text in a fixed-width font.
The \verb|\prog| command allows you to do this: its argument is set in
typewriter font.
For example
\begin{verbatim}
the call of the \prog{wild}
is answered in \prog{kind}.
\end{verbatim}
appears as: 
the call of the \prog{wild}
is answered in \prog{kind}.

This command behaves exactly like a \verb|\tt| declaration (see
\ref{guide.fonts}) except that:
\begin{itemize}
\item It redefines the \verb|\bslash|
command (see \ref{specialchars.reserved} for details).
\item It allows interword spacing to stretch or shrink a little;
this allows LaTeX to pick better line breaks in two-column format.
\end{itemize}

\clause{Long text}
\label{newverb}
For longer pieces of program text, the \verb|verbatim| environment
is used, see \ref{guide.verbatim} for details.
The \iso\ style provides for the creation of multiple \verb|verbatim|
environments with the \verb|\newverbatim| command; this allows different
types of program text to be enclosed in different environments.
Thus:
\begin{verbatim}
\newverbatim{example}
\newverbatim{definition}
\end{verbatim}
creates two new environments, \verb|example| and \verb|definition|,
each of whose contents is displayed in the same way; an automatic
tool could now be written to, say, extract all example text and ensure
that it is syntactically valid.

\section{Index}
The \iso\ style provides two types of index entry: by page number and
by division number.
The commands to produce these types of index are \verb|\pageindex| and
\verb|\clauseindex| respectively; there should be at most one of these in
a document and it should only appear in the preamble (i.e. between the
\verb|\documentstyle| and the \verb|\begin{document}|), otherwise you are
likely to get mixed page/clause indexing.

The default indexing type is by page number; this is because indexing
programs seem to be happier with it.
Clause indexing is aesthetically preferable, if your indexing program
can cope.

\section{Headers and footers}
By default, the \iso\ style gives page headers and footers according
to ISO guidelines.
These are:
\begin{itemize}
\item a header on page one, saying ``INTERNATIONAL STANDARD''.
\item a running header at the top of every page, giving
    the standard number, year and language.
\item a running footer at the bottom of every page, giving the page
    number.
\end{itemize}

The headers may be changed as follows:
\begin{itemize}
\item the header on page one is the argument to the
    \verb|\documenttype| command.
    Thus
    \begin{verbatim}
    \documenttype{NORME FRANCAISE}
    \end{verbatim}
    gives ``NORME FRANCAISE'' as the page one header.
\item the running header consists of the argument to the
    \verb|\runninghead| command.
    Thus
    \begin{verbatim}
    \runninghead{Antipasto}
    \end{verbatim}
    gives ``Antipasto'' as the running header.
\item the running footer consists of the argument to the
    \verb|\runningfoot| command and the page number.
    Thus
    \begin{verbatim}
    \runningfoot{Formaggio}
    \end{verbatim}
    gives ``Formaggio'' and the current page number as the running footer.
\end{itemize}

\begin{notes}
\item Both headers appear on page one.
\item The default definitions of the header commands are:
    \begin{verbatim}
    \runninghead{{\thestandard -\theyear(E)}}
    \documenttype{{INTERNATIONAL STANDARD}}
    \end{verbatim}
\item The default definition of the footer command is:
    \begin{verbatim}
    \runningfoot{}
    \end{verbatim}
\item The document version number may be included in the running header
    or footer by use of the \verb|\theversion| command (provided that a
    version number has been given with the \verb|\version| command, see
    \ref{structure.general.title}).
\item In extremity, users may redefine
    \verb|\@evenhead|, \verb|\@oddhead|, \verb|\@evenfoot| and
    \verb|\@oddfoot| or use the \verb|\pagestyle|
    command in the normal LaTeX manner.
\item These headers do not use TeX marks and therefore changes to
    \verb|\runninghead| or \verb|\runningfoot| in the body of a
    document may take effect on the wrong page if you are unlucky.
\end{notes}

\section{Columns and text size}
\label{columns}
\clause{General}
ISO guidelines say that standards should be set in two columns in nine
point text; this is
not suitable for some standards, such as \cite{sgml}, so the \iso\ style
allows such standards to be set with one column and/or in ten point text
by giving optional
arguments to \verb|\documentstyle| (see \ref{structure.general.documentstyle}).

The optional arguments are independent, so that any combination of one/two
columns and nine/ten point text can be used.
However, one column text in nine point is highly unreadable and two
column text in ten point can give bad line breaks, so these combinations
are not recommended.

\clause{Columns}
A standard may be set in one column using the \verb|onecolumn| optional
argument, thus:
\begin{verbatim}
\documentstyle[onecolumn]{iso}
\end{verbatim}
If it is only necessary to set some parts of a document with one column, then
the usual LaTeX commands \verb|\onecolumn| and \verb|\twocolumn| may be used.

Two column text is the default, but you can explicitly demand it with:
\begin{verbatim}
\documentstyle[twocolumn]{iso}
\end{verbatim}

\clause{Text size}
If a standard is to be set in one column, it is better to use ten point
text for readability thus:
\begin{verbatim}
\documentstyle[onecolumn,10pt]{iso}
\end{verbatim}

Nine point text is the default, but you can explicitly demand it with:
\begin{verbatim}
\documentstyle[9pt]{iso}
\end{verbatim}

\section{Miscellaneous}

\clause{Camera-ready copy}
If a standard is to be sent to ISO Central Secretariat in camera-ready form,
page numbering must start at page ii (leaving the front cover as page i),
a copyright notice must appear at the foot of the first page of the tables
of contents and,
if the foreword is to be set by the Secretariat, a blank page must be left
between the tables of contents and the introduction.
The macro \verb|\cameraready| alters the pagenumbers in this fashion and sets
the copyright notice.
If used, it should only appear in the preamble, otherwise page numbering and
size is likely to be unpredictable.
Any document containing a \verb|\cameraready| command should also contain a
\verb|\tableofcontents| command (see section~\ref{contents}), as the two
interact.

\clause{Compatibility}
\subclause{PS-LaTeX}
\subsubclause{General}
PS-LaTeX is a PostScript-based version of LaTeX, which uses PostScript
fonts rather than Computer Modern ones wherever possible.
This is particularly useful to users of the \iso\ style as ISO's preferred
fonts are Univers, Helvetica and Times Roman (see ``Notes to TC 97 Project
Editors on presentation of draft International Standards (DIS)'', probably
available from ISO/TC 97 Secretariat).

PS-LaTeX was written by Mario Wolczko of the University of Manchester
and copies are available from
the Clarkson archive (\prog{archive-server@sun.soe.clarkson.edu}),
the Aston archive (\prog{texserver@spock.aston.ac.uk}),
me (\prog{ndn@seg.npl.co.uk}) or 
Mario himself (\prog{mario@ux.cs.man.ac.uk}).
Pre-requisites for running PS-LaTeX are: LaTeX, a PostScript output
device and a DVI$\rightarrow$PostScript driver which recognises PostScript fonts
(available from the above addresses).

\subsubclause{Compatibility}
The \iso\ style detects when it is running under PS-LaTeX and redefines
the commands necessary to ensure unchanged output.
As a result, an \iso\ style file can be run under LaTeX or PS-LaTeX
with no alteration.

\subsubclause{Line breaking}
\label{misc.pslatex.lines}
There can be some problems with line breaking under PS-LaTeX: some
PostScript font metric files do not allow enough stretching of interword
space for TeX's line breaking algorithm to do a good job.
The \iso\ style therefore detects when it is running under PS-LaTeX and
adjusts the interword spacing to what it considers to be a better value.
If you do not like the result, you can put the following command before the
\verb|\begin{document}|:
\begin{verbatim}
\defaultspacing
\end{verbatim}
When running under ordinary LaTeX, this command has no effect.

\subclause{Style options}
\label{compat.style}
Style options fall into two classes:
\begin{enumerate}
\item Those which add facilities to LaTeX such as \prog{vdm} and
    \prog{zed}.
\item Those which change spacings (\verb|\textwidth| etc) such as
    \prog{a4} and \prog{a4wide}.
\end{enumerate}

The \iso\ style can be used with style options of the first variety
with only one proviso: some of these styles assume that the document is
set in one of 10, 11 or 12 point; the default for \iso\ documents is
9 point so the \iso\ style masquerades as 10 point for the benefit of
these other styles.
\begin{note}
For LaTeX hackers: this is implemented by setting \verb|\@ptsize| to
zero.
\end{note}

A little more caution should be used with the second variety of style
option: since both they and the \iso\ style change layout parameters,
the end result is unlikely to look like either an ISO standard or the
type of document promised by the style option.
However, there should not be any catastrophic results.

\clause{Page alignment}
ISO standards set text across most of the page width: if your printer is
just slightly misaligned, this can result in text being lost off the edge
of the page.
If you have this problem, use the \verb|\leftoffset| command in the preamble.
This command moves the left margin inwards by the amount of its
argument (a negative argument moves the margin outwards).
Thus \verb|\leftoffset{.5in}| moves the left margin in by $0.5$ inches.

\clause{Line breaking}
ISO standards are usually set in two-column format.
LaTeX can have difficulty finding what it considers to be good line breaks
in these circumstances, so the \iso\ style helps out by executing the
\verb|\sloppy| and
\verb|\verysloppy| commands which allow LaTeX to lower its high standards
somewhat.
There are corresponding \verb|\fussy| and \verb|\unverysloppy| commands
respectively which restore LaTeX's default behaviour.

See also section \ref{misc.pslatex.lines} for more on line breaking under
PS-LaTeX.

\clause{Sources}
The \iso\ style is based on ``Notes to TC97 Project Editors on presentation
draft International Standards (DIS)'' and ``Rules for drafting and presentation
of International Standards''.
It was produced by extensive modification of Leslie Lamport's ``article''
style for LaTeX.

\clause{Latest version}
Your version of the \iso\ style is given in the running header of this
document.
You can find out the latest version number by sending an email message to
\prog{info-server@seg.npl.co.uk} with the following body:
\begin{verbatim}
request: latex
topic: version iso
\end{verbatim}
You will receive a message back of the form
\begin{verbatim}
% @(#)iso.sty   2.6 dated 91/05/02 at 09:57:15
\end{verbatim}
showing that the current version is 2.6.

If you have an out of date version and would like the latest one, then send
another email message to \prog{info-server@seg.npl.co.uk} with the following
body:
\begin{verbatim}
request: latex
topic: iso.tex
topic: iso.sty
topic: iso9.sty
topic: iso10.sty
\end{verbatim}
This will cause the latest version of the \iso\ style files to be sent to you.

\clause{Acknowledgements}
The author would like to thank Tony Mansfield, Roger Scowen and Cath Baker
for their patience during development of the \iso\ style and their
sterling work in testing it.

\clause{Author}
The \iso\ style was written by:\\
Nicolas North,\\
Division of Information Technology and Computing,\\
National Physical Laboratory,\\
Teddington,\\
Middlesex, TW11 0LW,\\
U.K.\\
\prog{ndn@seg.npl.co.uk}

\annex

\informative{An example standard}
\label{annex.example}
This annex shows the ASCII form of a typical standard.

\begin{verbatim}
\documentstyle{iso}

\standard{1234}
\title{An example standard}

\begin{document}

\tableofcontents

\foreword
The foreword goes here.

\introduction
The introduction goes here.

\maketitle

\section{The first section}
\clause{The first clause}
Text of the first clause.
\subclause{The only subclause}

\clause{Another clause}
Text of the second clause.

\section{Another section}
Text of this section.

\annex

\informative{The first annex}
Text of the annex.

\end{document}
\end{verbatim}

This example describes a standard, number 1234, called ``An example
standard''.
It has a table of contents, a foreword and an introduction.
These are followed by two sections and an informative annex.
The first section  has two clauses and one subclause.

\informative{Some LaTeX guidance}
\clause{General}
LaTeX (pronounced lay-tek or lah-tek) is a document preparation system
consisting of a set of macros for Donald Knuth's typesetting system, TeX.
The \iso\ style is, in its turn, a set of LaTeX macros.
This has two implications: firstly that the facilities of LaTeX (and TeX) are
available to users of the \iso\ style, and secondly that \iso\ style users
should really have some knowledge of LaTeX before embarking on production of
a standard.

This annex gives a very brief summary of some of the more pertinent features
of LaTeX.
For more information, and examples, users should read, ``LaTeX: A Document
Preparation System'' by Leslie Lamport (Addison-Wesley), the source text of
this document and the \verb|iso.sty| file, probably in that order.
Typesetting enthusiasts should also read, ``The TeXbook'' by Donald Knuth
(Addison-Wesley).

\clause{Document layout}
LaTeX input is essentially free-format, with spaces, tabs and newlines used
as separators.
The important exception to this is that a blank line is regarded as a
separator between paragraphs, so blank lines must be used with some care.

{\em Commands\/} are introduced by the \verb|\| character, e.g.
\verb|\annex| is a command to start on the annexes part of a standard.
Command parameters are enclosed in braces (\verb|{}|), e.g.
\verb|\label{foo}| creates a label called \verb|foo|.

{\em Comments\/} are introduced by the \verb|%| character.
This comments out everything to the next newline.
There are no ``bracketed comments'' as in Pascal or C.

{\em Braces\/} (\verb|{}|) are used for scoping: any change of style
introduced after a \verb|{| is reversed by the matching \verb|}|.

\clause{Fonts}
\label{guide.fonts}
LaTeX provides a number of fonts, the most useful of which are:
{\rm roman}, {\em emphatic}, {\bf bold}, {\it italic} and {\tt typewriter
(fixed width)}.
These are introduced by \verb|\rm|, \verb|\em|, \verb|\bf|, \verb|\it| and
\verb|\tt| respectively.
The scope of these commands lasts until the next \verb|}| so, to set a 
phrase in bold, you enter \verb|{\bf bold phrase}|, to give
{\bf bold phrase}.

\clause{Labels and references}
Any point in a standard may be labelled, using the command
\verb|\label{labelname}|.
This gives \verb|labelname| the value of its division number in the document.
For instance, \verb|\label{latex.ref}| at this point in this document
\label{latex.ref} 
gives \verb|latex.ref| the value of \ref{latex.ref}.

A label may be referred to at any time by use of the command
\verb|\ref{labelname}|.
Thus the label \verb|latex.ref| is referred to by \verb|\ref{latex.ref}|,
giving the value \ref{latex.ref}.

\clause{Tables and figures}
\subclause{General}
It is impossible to give more than an inkling of the variety of tables and
figures available in LaTeX in this document.
Suffice it to say that almost any collection of material that you want
tabulated can be set in LaTeX with the \verb|tabular| environment and that
many line drawings can be produced with the \verb|picture| environment.
As always, the LaTeX book has the details.

\subclause{Tables}
Tables are set using the \verb|table| environment.
Anything can be put in a table, but usually it will be something set
using the \verb|tabular| environment.
The \verb|table| environment then decides where the table should go on the
page, captions it and puts an entry in the list of tables.
Table \ref{table.example} was produced with the following input:
\begin{verbatim}
\begin{table}[hb]
\caption{Translations}
\label{table.example}
\begin{center}
\begin{tabular}{|l||l|}
\hline
English & American \\
\hline
pavement & sidewalk \\
colour & color \\
prologue & prolog \\
yes & affirmative
\hline
\end{tabular}
\end{center}
\end{table}
\end{verbatim}

The \verb|[hb]| indicates that the table should be set either here
(\verb|h|) or at the bottom of the page (\verb|b|).

The caption will be set where you put it in the table environment: at the
bottom in this case.
The label declaration must either be inside the argument to \verb|\caption|
or after it in the table environment.

\begin{table}[hb]
\caption{Translations}
\label{table.example}
\begin{center}
\begin{tabular}{|l||l|}
\hline
English & American \\
\hline
pavement & sidewalk \\
colour & color \\
prologue & prolog \\
yes & affirmative \\
\hline
\end{tabular}
\end{center}
\end{table}

A list of all tables in your document may be obtained by including a
\verb|\listoftables| command (see \ref{contents}).

\subclause{Figures}
Figures are set using the \verb|figure| environment.
Anything can be put in a figure, but usually it will be something set
using the \verb|picture| environment.
The \verb|figure| environment then decides where the figure should go on the
page, captions it and puts an entry in the list of figures.
Figure \ref{figure.example} was produced with the following input:
\begin{verbatim}
\begin{figure}[hb]
\caption{Stands the clock at ten to three}
\label{figure.example}
\begin{center}
\setlength{\unitlength}{1mm}
\begin{picture}(50,50)(-25,-25)
\put(0,0){\circle{40}}
\put(0,0){\vector(-4,3){5}}
\put(0,0){\vector(1,0){5}}
\end{picture}
\end{center}
\end{figure}
\end{verbatim}
A list of all figures in your document may be obtained by including a
\verb|\listoffigures| command (see \ref{contents}).

\begin{figure}[hb]
\caption{Stands the clock at ten to three}
\label{figure.example}
\begin{center}
\setlength{\unitlength}{1mm}
\begin{picture}(50,50)(-25,-25)
\put(0,0){\circle{40}}
\put(0,0){\vector(-4,3){5}}
\put(0,0){\vector(1,0){5}}
\end{picture}
\end{center}
\end{figure}

\clause{Unusual characters}
\label{guide.unusual}
Most \cite{charset} characters are easy to obtain by just typing them.
Others have a special meaning to LaTeX and are therefore less easy to enter.
A list of these and some other useful characters is shown in table
\ref{table.chars}
\begin{table}[ht]
\caption{Useful characters}
\label{table.chars}
\begin{center}
\begin{tabular}{ll}
LaTeX input	&	Output \\
\prog{\rquote}	&	' \\
\prog{\rquote\rquote}	&	'' \\
\prog{\lquote\lquote}	&	`` \\
\verb|\#|	&	\# \\
\verb|\$|	&	\$ \\
\verb|\%|	&	\% \\
\verb|\&|	&	\& \\
\verb|\tilde|	&	\tilde \\
\verb|\_|	&	\_ \\
\verb|\caret|	&	\caret \\
\verb|\bslash|	&	\bslash \\
\verb|\{|	&	\{ \\
\verb|\}|	&	\} \\
\verb|\copyright|	&	\copyright \\
\verb|\pounds|	&	\pounds
\end{tabular}
\end{center}
\end{table}

See section \ref{specialchars} for some more useful characters provided by
the \iso\ style.

\clause{Columns}
The ISO guidelines ask for standards to be set in two columns.
However, it is sometimes necessary to use single column text.
This may be effected by using the \verb|\onecolumn| command.
Return to two column text with the \verb|\twocolumn| command.
See annex \ref{run} for an example of single column typesetting.

Both of these commands start a new page and should therefore be used with
discretion: the best place is prior to starting a new section.

\clause{Verbatim text}
\label{guide.verbatim}
It is sometimes necessary to display text in a fixed width font.
LaTeX provides the verbatim environment for this purpose.
Text enclosed between \verb|\begin{verbatim}| and
\verb|\end{verbatim}| is set exactly as in the input file, in the fixed
width font.
For example:
\begin{example}
\begin{verbatim}
Some text
  with   odd spacing
   and line
 breaks
\end{verbatim}
\end{example}
%\verb|\end{verbatim}| \\
is set as:
\begin{verbatim}
Some text
  with   odd spacing
   and line
 breaks
\end{verbatim}

The maximum number of characters that can be fitted into a single column
is about 45.

The \iso\ style allows for the creation of multiple, differently
named, \verb|verbatim| environments.
See \ref{newverb} for details.

\onecolumn
\informative{Running LaTeX}
\label{run}
The method for running LaTeX will vary from site to site.
This annex shows a typical run of LaTeX on this document at the National
Physical Laboratory; the procedure at your site should not differ by much.
User input follows the \verb|crumble%| prompt.

\begin{verbatim}
crumble% latex iso
This is TeX, C Version 3.0
(iso.tex
LaTeX Version 2.09 <7 Dec 1989>
(iso.sty
Document Style `iso' <18 Jun 90>.
(iso9.sty))
No file iso.aux.
No file iso.toc.
No file iso.lof.
No file iso.lot.
[1]
LaTeX Warning: Reference `div.special.def' on page 1 undefined.
LaTeX Warning: Reference `contents' on page 1 undefined.
LaTeX Warning: Reference `special.foreword' on page 1 undefined.
LaTeX Warning: Reference `special.intro' on page 1 undefined.
LaTeX Warning: Reference `divns' on page 1 undefined.
LaTeX Warning: Reference `annex.example' on page 1 undefined.
LaTeX Warning: Reference `contents' on page 1 undefined.
LaTeX Warning: Reference `structure.general.maketitle' on page 1 undefined.
[1]
LaTeX Warning: Reference `references' on page 2 undefined.
LaTeX Warning: Citation `sgml' on page 2 undefined.
LaTeX Warning: Reference `definitions' on page 2 undefined.
LaTeX Warning: Citation `bs0' on page 2 undefined.
LaTeX Warning: Reference `lists.types' on page 2 undefined.
[2]
LaTeX Warning: Reference `guide.unusual' on page 3 undefined.
LaTeX Warning: Reference `prog' on page 3 undefined.
LaTeX Warning: Reference `guide.fonts' on page 3 undefined.
LaTeX Warning: Reference `specialchars.reserved' on page 3 undefined.
LaTeX Warning: Reference `guide.verbatim' on page 3 undefined.
[3]
LaTeX Warning: Citation `sgml' on page 4 undefined.
LaTeX Warning: Reference `structure.general.documentstyle' on page 4 undefined.


Underfull \hbox (badness 5274) in paragraph at lines 519--528
\ninrm me (\nintt ndn@seg.npl.co.uk\ninrm ) or Mario him-self
[4]
LaTeX Warning: Reference `misc.pslatex.lines' on page 5 undefined.

Underfull \vbox (badness 2538) has occurred while \output is active [5]
[6]
LaTeX Warning: Reference `latex.ref' on page 7 undefined.
LaTeX Warning: Reference `latex.ref' on page 7 undefined.
LaTeX Warning: Reference `table.example' on page 7 undefined.
LaTeX Warning: Reference `contents' on page 7 undefined.
LaTeX Warning: Reference `figure.example' on page 7 undefined.

Underfull \vbox (badness 4899) has occurred while \output is active [7]
LaTeX Warning: Reference `contents' on page 8 undefined.
LaTeX Warning: Citation `charset' on page 8 undefined.
LaTeX Warning: Reference `table.chars' on page 8 undefined.
LaTeX Warning: Reference `specialchars' on page 8 undefined.
LaTeX Warning: Reference `run' on page 8 undefined.
LaTeX Warning: Reference `newverb' on page 8 undefined.
[8] [9] (iso.aux)
LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
 )
(see the transcript file for additional information)
Output written on iso.dvi (10 pages, 38956 bytes).
Transcript written on iso.log.
crumble% latex iso
latex iso
This is TeX, C Version 3.0
(iso.tex
LaTeX Version 2.09 <7 Dec 1989>
(iso.sty
Document Style `iso' <18 Jun 90>.
(iso9.sty)) (iso.aux) (iso.toc [1]) (iso.lof) (iso.lot) [2] [1] [2] [3]
Underfull \hbox (badness 5274) in paragraph at lines 519--528
\ninrm me (\nintt ndn@seg.npl.co.uk\ninrm ) or Mario him-self
[4]
Underfull \vbox (badness 2538) has occurred while \output is active [5]
[6]
Underfull \vbox (badness 4899) has occurred while \output is active [7]
[8] [9] (iso.aux) )
(see the transcript file for additional information)
Output written on iso.dvi (11 pages, 62512 bytes).
Transcript written on iso.log.
\end{verbatim}

Note that LaTeX has to be run twice: the first run stores information on
cross-referencing and the table of contents in the files {\tt iso.aux} 
and {\tt iso.toc} which is then used in the second run.
LaTeX will inform you if it needs to be run more than once.

You may get complaints about underfull or overfull boxes; these occur when
LaTeX feels that it has made a bad line or page break.
Often these breaks are not as bad as LaTeX feels and they can safely be
ignored.
\twocolumn
\end{document}
