A zettel representation that is a [s-expression](00001012930000), syntactically similar to the [Sz encoding](00001012920516), but denotes [HTML](00001012920510) semantics.
It is derived from a XML encoding in s-expressions, called [SXML](https://en.wikipedia.org/wiki/SXML).

It is (relatively) easy to parse and contains everything to transform it into real HTML.
In contrast to HTML, SHTML is easier to parse and to manipulate.
For example, take a look at the SHTML encoding of this page, which is available via the &ldquo;Info&rdquo; sub-page of this zettel:

* [/z/00001012920525?enc=shtml&part=zettel](/z/00001012920525?enc=shtml&part=zettel),
* [/z/00001012920525?enc=shtml&part=meta](/z/00001012920525?enc=shtml&part=meta),
* [/z/00001012920525?enc=shtml&part=content](/z/00001012920525?enc=shtml&part=content).

If transferred via HTTP, the content type will be `text/plain`.

Internally, if a zettel should be transformed into HTML, the zettel is translated into the [Sz encoding](00001012920516), which is transformed into this SHTML encoding to produce the [HTML encoding](00001012920510).

# Syntax of SHTML

There are only two types of elements: atoms and lists, similar to the Sz encoding.

A list always starts with the left parenthesis (&ldquo;`(`&rdquo;, U+0028) and ends with a right parenthesis (&ldquo;`)`&rdquo;, U+0029).
A list may contain a possibly empty sequence of elements, i.e. lists and / or atoms.
Before the last element of a list of at least two elements, a full stop character (&ldquo;`.`&rdquo;, U+002E) signal a pair as the last two elements.
This allows a more space economic storage of data.

An HTML tag like `<a href="link">Text</a>` is encoded in SHTML with a list, where the first element is a symbol named after the tag.
The second element is an optional encoding of the tag's attributes.
Further elements are either other tag encodings or a string.
The above tag is encoded as `(a ((href . "link")) "Text")`.
Also possible is to encode the attribute without pairs: `(a ((href "link")) "Text")` (note the missing full stop character).