CommonMeta 
Over time, people have needed to add more information to Krist transactions. Krist transactions have a meta field, however their contents are typically specific to each application. The CommonMeta specification aims to standardize common data in meta.
Overview 
Transaction to address 
field1=value1;field2=value2;field3=value3Transaction to name 
name.kst;field1=value1;field2=value2;field3=value3Transaction to metaname 
[email protected];field1=value1;field2=value2;field3=value3Data is in the format key=value, separated by semicolons (;). There may be an unlimited amount of fields (but beware of the 255 char meta limit).
If a transaction is made to a name, the Krist server automatically prepends the name to the meta, and separates it from existing meta with a semicolon (;).
Checking for names 
If the transaction's meta field matches the regex ^(?:([a-z0-9-_]{1,32})@)?([a-z0-9]{1,64})\.kst, then a name has been supplied. If meta has been provided to the transaction, then a semicolon (;) will follow the name, and then the rest of the meta. The meta may contain only a name, only meta, or a name.kst;meta. When parsing, the name should be added as an implicit field, recipient.
Common fields 
- recipient- (implicit) - The name the transaction was sent to, if it was sent to a name.
- return- Address or name to send KST back to.
- donate- (boolean) - Whether or not this transaction is a donation.
- username- Username of the sender of this transaction.
- message- Message to attach with this transaction.
- error- Error to attach with this transaction.
- epoch- The Unix epoch time of this transaction, or a related event.
Parsers 
Most Krist libraries, such as k.lua and krist.js, have parsers for CommonMeta built in. Refer to the library documentation for more information.
