Encoding of Sz Metadata
A single metadata (“metadatum”) is represented by a triple: a symbol representing the type, a symbol representing the key, and either a string or a list that represent the value.
The symbol depends on the metadata key type. The value also depends somehow on the key type: a set of values is represented as a list, all other values are represented by a string, even if it is a number.
The following table maps key types to symbols and to the type of the value representation.
Key Type | Symbol | Value |
---|---|---|
Credential | CREDENTIAL | string |
EString | EMPTY-STRING | string |
Identifier | ZID | string |
IdentifierSet | ZID-SET | ListValue |
Number | NUMBER | string |
String | STRING | string |
TagSet | TAG-SET | ListValue |
Timestamp | TIMESTAMP | string |
URL | URL | string |
Word | WORD | string |
Zettelmarkup | ZETTELMARKUP | string |
ListValue = ( String1 String2 … Stringn ).
Examples:
- The title of this zettel is represented as: (EMPTY-STRING title "Encoding of Sz Metadata")
- The tags of this zettel are represented as: (TAG-SET tags ("#api" "#manual" "#reference" "#zettelstore"))