Links, tags, and metadata are facilities provided by beancount that do not really have a strictly defined role: they are building block for different workflows.

Links are tags both allow to attach labels to transactions. As the name implies, links are generally used to link related transactions, tags are generally used for classification. Tags can be applied to a group of transactions with the "pushtag" and "poptag" directives. Links do not have a similar mechanism.

Metadata allow to attach key-value pairs to transactions (and many other ledger entries). Usually metadata is used for recording structured information.

correction to comparison table

                                           | tags | links | meta
can be filtered by in beanquery            | Yes  | Yes   | Yes
Can be several ones in one transaction     | Yes  | Yes   | No
can be grouped by in beanquery             | No   | No    | Yes

I'm not sure I understand how you define these properties.

Metadata fields cannot be lists, but you can have as many metadata fields attached to one transaction, thus there "can be several meta in one transaction".

You cannot group by the `links` or `tags` columns in bean-query, but you cannot group by the `meta` column either. You can group by the value of a specific metadata field, but you can also group by the presence of a specific link or tag. Therefore I don't understand what you mean with the last line.

Cheers,
Dan

--
You received this message because you are subscribed to the Google Groups 
"Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beancount/36adefaa-bb74-4dba-b2f1-3381273e74b8%40grinta.net.

Reply via email to