A description list consists of alternating terms and descriptions (short: __details__).
Each detail contains one or more __entries__, allowing a term to be described in multiple ways.

A description term (short: __term__) begins with a single semicolon (""'';''"", U+003B) at the beginning of the line, followed by a space character and the term itself, which consists of a sequence of line elements.
If subsequent lines should also be part of the term, two spaces must be given at the beginning of each line.

Each entry of a detail begins with a single colon (""'':''"", U+003A) at the beginning of the line, followed by a space character and the entry text, which consists of a sequence of [[inline elements|00001007040000]].
As with terms, subsequent lines may also be part of the description if they begin with two space characters.

In contrast to terms, the content of an entry is merged into paragraphs: consecutive lines are combined into a single paragraph, while empty lines start new paragraphs.
An entry may contain more than one paragraph.
Every additional paragraph of an entry must be indented by two space characters.

Example:
```zmk
; Zettel
: A zettel is the basic unit
  of Zettelstore.

  Zettel can be linked together.
; Zettelstore
: A piece of software that manages zettel.
: The name of the Go implementation.
```

is rendered as:
:::example
; Zettel
: A zettel is the basic unit
  of Zettelstore.

  Zettel can be linked together.
; Zettelstore
: A piece of software that manages zettel.
: The name of the Go implementation.
:::

If you look at the HTML code, you will see that the term ""Zettel"" has only one entry with two paragraphs, whereas ""Zettelstore"" has two entries, each containing a single paragraph.[^An entry is mapped to HTML's ``<dd>`` tag]