A mark allows to name a point within a zettel. This is useful if you want to reference some content in a zettel, either with a link or with an inline-mode transclusion. A mark begins with a left square bracket, followed by an exclamation mark character (!, U+0021). Now the optional mark name follows. It is a (possibly empty) sequence of Unicode letters, Unicode digits, the hyphen-minus character (-, U+002D), or the low-line character (_, U+005F). An optional text to be explicitly marked is introduced with a vertical bar character (|, U+007C), followed by some inline-structured elements. The mark element ends with a right square bracket. Examples: [!] is a mark without a name, the empty mark. [!mark] is a mark with the name mark. [!|some text]is the empty mark with some text. [!mark|some text]is a mark with the name mark and with some text that is marked.