Home

Appendix

Application Icon   Tagging

Tagging is a common method of creating contextual relationships between documents. For example, you can apply a "hobby" tag to a woodworking article and a sewing machine PDF manual. You would then find both documents when searching for the "hobby" tag. Used in the Finder and many other applications, DEVONthink also supports tagging in your databases (including preserving Finder tags on imported and indexed items). Tags are either ordinary tags or group tags, each discussed below.

Ordinary Tags

Similar to tagging methods used in other applications, ordinary tags are added to items by you.

Creating tags: When you add a tag to an item for the first time, a tag group is automatically created in the Tags section for the current database. However, if you want to proactively create tags to be used later, you can select the Tags section for the database and choose the Data > New > Tag command. You can also choose New Tag from the contextual menu when Control-clicking the Tags for the database.

Applying tags: When you apply a tag to an item, a replicant of that item is created in the Tags section for the current database. For each tag you apply, you will have a replicant in each tag group. These are not the original items, but only instances of the items. If you delete a tag group, the group and the replicants it contains are removed. The original items in the database remain intact.

Ordinary tags are most commonly applied to items by these methods:

  • Icon
    Type tags into the Tag bar under a document's View/Edit pane.
  • Icon
    Type tags into the Tags section of the Info inspector or the Info popover for a document.
  • Icon
    Drag items to a tag in the Tags section of the Navigate sidebar. Note: If you drag an item to a tag in another database, that item will be moved to the receiving database.

In the case of multiple selected items, any tags common to all the items will be shown in the Info inspector and Info popup. Tags unique to specific files aren't displayed. However, you can add tags common to all the selected items using these views.

Tags can also be applied by more automated means, e.g., scripting and smart rules. see the Automation chapter for more information.

Finder Tags

Finder Tags: DEVONthink supports reading and writing macOS' Finder tags. If tags are present on an imported or indexed files, they will be preserved in the database. When tagging imported files, tags are not written to the filesystem. Instead the tags are recorded in the Spotlight metadata when the Create Spotlight Index option is enabled in Database Properties popover. This allows searching for tags in Spotlight using the tags:myTag syntax. If you export or drag and drop files to the Finder, macOS tags will be written to the exported file. When tagging indexed files, the tags are immediately written in the filesystem and searchable, just as they would be if you tagged them directly in the Finder.

Note: If you would like to disable the tag exchange between DEVONthink and the Finder, click the On link under DisableFinderTags in the Hidden Preferences. Bear in mind this option inhibits importing and exporting Finder tags globally.

Tagging Sources

Beyond the tag exchange with macOS, the following options in DEVONthink's Import Preferences or RSS preferences control other tagging mechanisms. The options in the Import preferences can also be manually applied via the commands in the Data > Tags submenu and the contextual menu in the item list.

RSS: In the RSS preferences, the Convert categories and hashtags to tags option converts categories detected in the feed articles or hashtags in the contents into tags. In conjunction with the previously mentioned Finder tags or Spotlight data, this can lead to a large number of macOS tags being added automatically in the Finder.

Hashtags: Popularized in social media, hashtags are a type of tag prefixed by a #. If enabled in Preferences > Import, DEVONthink can detect hashtags in the contents of text-based files and convert them to tags for the file automatically. Removing the hashtags from the content will remove the tags from the file. Hashtags do not support spaces in them and they should be listed on a separate line. They will not be detected within existing paragraphs. Of special note, hashtags supports creating nested tags as noted here. The first tag just needs to be prefixed with the # to be detected as a hashtag..

Keywords: When enabled in the Import preferences, DEVONthink will convert the keywords of PDFs and rich text documents into tags.

Properties: Also found in the Import preferences, DEVONthink will attempt to convert certain properties to tags, e.g., the names and email addresses of the sender and recipients of emails.

Geolocation: Enable Convert location to tags in the Import preferences to convert the applied geolocation of a file into tags. The Geolocation can be viewed in the Info inspector.

Image Tags: The Add tags to images option in the Import preferences, will use machine learning to attempt to add subject matter tags to selected images. There are no user-definable controls for this option.

Nested Tags

Sometimes referred to as "hierarchical tags", nested tags are a series of related ordinary tags, combined under a parent tag. When you add a child tag, the item automatically inherits the parent tags. In the example shown below, adding a tag of "Casper" to an item would automatically add the "Wyoming" and "US" tags.

A special mechanism in DEVONthink allows you to create nested tags automatically: enter the tags separated by a forward slash. For example, type a tag of software/productivity to create a parent tag of software with a child tag of productivity. Use this option in the places where tags are entered, e.g., the Tags bar, Tags field of the Info inspector and Info popover, and the Tags column in the item list.

Note: If you are having trouble deleting a tag from an item, check to see if you are adding a nested tag.

Caution: Tags for a database can have the same name. This may seem illogical, but it's something more commonly seen that you may expect. For example, say you have a travel database with points of interest like restaurants tagged in different locations. You may find yourself with a tag structure like this…

Example:

US
  Wyoming
    Casper
      Restaurant
  Minnesota
    St. Paul
      Restaurant

If you added a tag Restaurant to an item, what tag would it go to? It actually would go to the most recently entered instance of the Restaurant tag.

So how is this resolved? Tags are meant to be unique, so eliminating redundant tags is first priority. Restaurants aren't specific to a geographic location. Create the Restaurant tag as a top level tag. If you had a need for hierarchy with the tag, perhaps for tax purposes, you could move it into a parent Tag of Entertainment. Then you would get both tags when you added Restaurant. But again, if you anticipate wanting to use the tag without the parent tag, you should make it a top level tag.

Also, you shouldn't view the tags as a group structure in and of itself. Nested tags are just meant to group tags specifically related to each other, so they can be applied en masse.

Note: Tagging methods and philosophy is full of strong opinions. Many people feel tagging should always be flat; only top level tags and no hierarchies. DEVONthink accommodates both approaches. However, if you want to used nested tags, we hope you carefully consider the caution we've presented and use a hybrid method to avoid unexpected behavior.

Group Tags

Previously discussed in the Groups section earlier in this chapter, group tags allow you to dynamically assign tags based on their location. As you add files to a group, they have tags of the parent groups' name assigned to them. Similarly, if you move the items to a new group, the tags are removed and new ones applied relative to the new location. Whether used statically or dynamically, group tags can be used creatively. They also work in conjunction with ordinary tags, so you can employ both methods in one database.

Example:

Imagine you have a work database with groups for different stages of a project: Unreviewed, Assigned, In Progress, On Hold, and Done. At the beginning of the process, you'd put the item in the Unreviewed group and it would be tagged as such. After reviewing, you could move the file into the Assigned group and the previous tag would be removed and replaced with Assigned. As the project moves through the staging groups, the tag would change.

And of course you can use ordinary tags, e.g., Reviewed or a client identifier, on these items. Those tags would be preserved no matter where you move them in the databases.

Groups tags are applied by DEVONthink automatically. But you can also use do some automatic filing by entering existing group tags manually. If you enter the name of an existing group that is not excluded from tagging into the Tag bar or an Info panel or popover, the item will be replicated to the appropriate group. You can also drag an item to a group tag in the Tag Cloud at the bottom of the Navigate sidebar.

Considerations: When you enable using group tags for a database, it starts as an all-or-nothing situation. All groups in the database function as group tags.

If you want to use group tags for most groups in a database, you can Control-click specific groups and choose Exclude from Tagging. You can also choose this option in the Exclude from… section of the Info inspector or Info popup for a specific group. However, note you must change this setting on all individual groups you'd like to exclude.

If you only want a limited number of tags, it would be advisable to exclude groups from tagging for the database and use ordinary tags instead.

Autocompletion

When you are typing tags, an autocompletion list will appear. In the Global Inbox, tags from any open databases are shown as potential tags. In other databases, the items displayed are only from the tags of the current database.

While group tags aren't added to the Tags group for a database, they are displayed in autocompletion suggestions.

Tags and Aliases: DEVONthink also honors aliases added to groups. You can add "alternative names" to a group using Info popup or inspector and later use these alternative names as a tag. Continuing the previous example, you could add an alias of IP to the In Progress group. Now, type IP as a tag and it will be replicated to the In Progress group. When you view the file, you will see the proper group tag was automatically added.

Search and Gather

Finally, tags have two main functions: segregating data and searching for data. You use tags to gather items together in certain contexts. You also use tags to search for those items.

Searching for items by their tags is easily done in a few ways:

  • Icon
    Tag cloud: The Tags Cloud allows you to filter the current list of files by clicking on available tags. As you click, only related tags are shown so you can fine-tune the items displayed in the item list.
  • Icon
    Search field: The search field at the top of every main window allows you to search for tags by using the advanced options for a search. You can also search for tags using a simple tags: prefix. Multiple tags can be specified, separated by commas. You can also use tags!:, to exclude tags.

Gathering similarly tagged items is powerfully achieved with Smart Groups. Smart groups allow you to use the smart group editor controls to set criteria to be matched. Included and excluded tags can be added as criteria. Files matching the parameters of the smart group are shown, regardless of their location in the database. This way you can leave your files where they are and create virtual folders for specific purposes.