$Revision$
$Date$
refentry — A reference page (originally a UNIX man-style reference page)
refentry ::= (beginpage
?, (indexterm
)*,refentryinfo
?,refmeta
?, (remark
|link
|olink
|ulink
)*,refnamediv
+,refsynopsisdiv
?, (refsect1
+|refsection
+))
Name |
Type |
Default |
status | CDATA | None |
A RefEntry
is a reference page. In UNIX parlance this has
historically been called a “man page” (short for manual page).
RefEntry
is an appropriate wrapper for any small unit of
reference documentation describing a single topic. Canonical examples
are programming language functions and user commands
(one RefEntry
per function or command).[20]
On some projects, the structure of reference pages may be rigorously defined right down to the number, order, and title of individual sections (some or all of which may be required).
Formatted as a displayed block. It is not uncommon for RefEntry
s to introduce
a forced page break in print media.
Formatting reference pages may require a fairly sophisticated
processing system. Much of the meta-information about a
reference page (its name, type, purpose, title, and
classification) is stored in wrappers near the beginning of
the RefEntry
.
Common presentational features, such as titles and running heads, may require data from several of these wrappers plus some generated text. Other formatting often requires that these elements be reordered.
These elements contain refentry:
appendix
, article
, chapter
, part
, partintro
, preface
, reference
, sect1
, sect2
, sect3
, sect4
, sect5
, section
.
The following elements occur in refentry:
beginpage
, indexterm
, link
, olink
, refentryinfo
, refmeta
, refnamediv
, refsect1
, refsection
, refsynopsisdiv
, remark
, ulink
.
Status
identifies the editorial or publication
status of the RefEntry
.
Publication status might be used to control formatting (for example, printing a “draft” watermark on drafts) or processing (perhaps a document with a status of “final” should not include any components that are not final).
A typical reference page for a command:
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"> <refentry id="ls"> <refmeta> <refentrytitle>ls</refentrytitle> <manvolnum>1</manvolnum> </refmeta> <refnamediv> <refname>ls</refname> <refpurpose>list contents of a directory</refpurpose> </refnamediv> <refsynopsisdiv> <cmdsynopsis> <command>/usr/bin/ls</command> <arg choice="opt"> <option>aAbcCdfFgilLmnopqrRstux1</option> </arg> <arg choice="opt" rep="repeat">file</arg> </cmdsynopsis> </refsynopsisdiv> <refsect1><title>Description</title> <para> For each file that is a directory, <command>ls</command> lists the contents of the directory; for each file that is an ordinary file, <command>ls</command> repeats its name and any other information requested. </para> <para>…</para> </refsect1> </refentry>
A typical reference page for a function:
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"> <refentry id="printf"> <refmeta> <refentrytitle>printf</refentrytitle> <manvolnum>3S</manvolnum> </refmeta> <refnamediv> <refname>printf</refname> <refname>fprintf</refname> <refname>sprintf</refname> <refpurpose>print formatted output</refpurpose> </refnamediv> <refsynopsisdiv> <funcsynopsis> <funcsynopsisinfo> #include <stdio.h> </funcsynopsisinfo> <funcprototype> <funcdef>int <function>printf</function></funcdef> <paramdef>const char *<parameter>format</parameter></paramdef> <paramdef>...</paramdef> </funcprototype> <funcprototype> <funcdef>int <function>fprintf</function></funcdef> <paramdef>FILE *<parameter>strm</parameter></paramdef> <paramdef>const char *<parameter>format</parameter></paramdef> <paramdef>...</paramdef> </funcprototype> <funcprototype> <funcdef>int <function>sprintf</function></funcdef> <paramdef>char *<parameter>s</parameter></paramdef> <paramdef>const char *<parameter>format</parameter></paramdef> <paramdef>...</paramdef> </funcprototype> </funcsynopsis> </refsynopsisdiv> <refsect1><title>Description</title> <para> <function>printf</function> places output on the standard output stream stdout. </para> <para>…</para> </refsect1> </refentry>
A reference page for a data structure:
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"> <refentry id="iovec"> <refmeta> <refentrytitle>iovec</refentrytitle> <manvolnum>9S</manvolnum> </refmeta> <refnamediv> <refname>iovec</refname> <refpurpose>data storage structure for I/O using uio</refpurpose> </refnamediv> <refsynopsisdiv> <synopsis> #include <sys/uio.h> </synopsis> </refsynopsisdiv> <refsect1><title>Interface Level</title> <para> Architecture independent level 1 (DDI/DKI). </para> </refsect1> <refsect1><title>Description</title> <para> An <structname>iovec</structname> structure describes a data storage area for transfer in a <citerefentry><refentrytitle>uio</refentrytitle> <manvolnum>9S</manvolnum> </citerefentry> structure. Conceptually, it may be thought of as a base address and length specification. </para> </refsect1> <refsect1><title>Structure Members</title> <programlisting> caddr_t iov_base; /* base address of the data storage area */ /* represented by the iovec structure */ int iov_len; /* size of the data storage area in bytes */ </programlisting> <para>…</para> </refsect1> </refentry>
For additional examples, see also
reference
.