Akonadi received a tagging system as an orthogonal organization system to collections.
A Tag has the following properties:
- An akonadi-wide identifier (UID)
- A globally unique identifier (GID)
- A type
- An optional parent
- A set of attributes (that can be used to store color, or a translated name, etc.)
The following types have been defined so far (Feel free to propose more):
An immutable (no renaming) tag that doesn't support hierarchies (parent). It has been designed for maximum compatiblity with backends. In particular it is possible to synchronize iCalendar categories as PLAIN tags. The PLAIN tag has no specific semantics attached, it's simply an identifier that the user can use however he likes.
The aim is that virtually all applications support at least this tag-type.
A mutable tag that supports renaming, color and hierarchy. It has specific semantics attached as it comes from the Getting Things Done methodology. It is used as a "context" in which a certain task can be accomplished (it comes from task-management). This allows to tag tasks i.e. with "travelling", so once you're travelling it's easy to pick a set of tasks to do which i.e. don't require a phone or a the desktop-computer in the office.
The first user of this tag type will be Zanshin.