Zettel in a Sz encoding are represented as a symbolic expression. To process these symbolic expressions, you need to know, how a specific part of a zettel is represented by a symbolic expression. Basically, each part of a zettel is represented as a list, often a nested list. The first element of that list is always a unique symbol, which denotes that part. The meaning / semantic of all other elements depend on that symbol. Zettel A full zettel is represented by a list of two elements. The first elements represents the metadata, the second element represents the zettel content. Zettel = ( Metadata Content ). Metadata Metadata is represented by a list, where the first element is the symbol META. Following elements represent each metadatum Metadatum is used as the singular form of metadata. of a zettel in standard order. Standard order is: Title, Role, Tags, Syntax, all other keys in alphabetic order. Metadata = (META Metadatum … ). Content Zettel content is represented by a block. Content = Block. Block A block is represented by a list with the symbol BLOCK as the first element. All following elements represent a nested block-structured element. Block = (BLOCK BlockElement … ). Inline Both block-structured elements and some metadata values may contain inline-structured elements. Similar, inline-structured elements are represented as follows: Inline = (INLINE InlineElement … ). Attribute Attributes may be specified for both block- and inline- structured elements. Attributes are represented by the following schema. Attribute = ( [ AttributeKeyValue … ] ')'. Either, there are no attributes. These are specified by the empty list (). Or there are attributes. In this case, the first element of the list must be the symbol quote: (quote ( A1 A2 … An )). Other A list with UNKNOWN as its first element signals an internal error during transforming a zettel into the Sz encoding. It may be ignored, or it may produce an error. Unknown = (UNKNOWN Object … ). The list may only contain the symbol UNKNOWN, or additionally an unlimited amount of other objects. Similar, any symbol with the pattern **xyz:NOT-FOUND**, where xyz is any string, signals an internal error.