Tags, properties, templates, and tables work together to help you define highly structured data in RemNote and view it in a variety of ways.
While these features are extremely powerful and flexible, that flexibility can sometimes make it unclear how you can use them effectively at first. You'll have an easier time learning these features if you first get a conceptual overview of the entire system, so let's take a quick look!
Tags
Tags allow you to describe what kind of thing a Rem is, in a way that cuts across all documents and hierarchies in your Knowledge Base. For instance, you might have an “Author” tag you apply to Rems representing authors you like. You can attach a tag to a Rem by typing ##
with your cursor over the Rem you want to tag, then typing the tag's name; or by copying the tag, then pasting it over the Rem you want to tag.
The Rems that a tag is attached to are called the tag's instances.
Once you've applied a tag to some Rems, you can do several things with the tag, including:
Find all instances of the tag in one central location by clicking on the tag anywhere it appears. You'll see a list of All Tagged Rem at the bottom of the page. (Depending on how the tag is configured, you may see a table here instead of a bulleted list – but in either case, it will show all the tag's instances.)
Use the tag as a criterion in a search portal.
Create a table displaying the instances of the tag (see the Tables section below).
Properties
Oftentimes, we'll want to record the same information about every instance of a tag. For example, if we’re learning about Chemical Elements, we might want to know the atomic number and symbol of each, or if we’re learning about types of flashcards in RemNote, we might want to know the keyboard shortcut used to create each. We can attach properties to a tag to make explicit what things we want to record about each instance.
Once you have at least one property, an Insert Properties menu will prompt you to include the properties attached to a tag on any Rem where you apply the tag:
Properties can be displayed as normal bullets below the Rem, as special stickies to the right or underneath the Rem, or only when you zoom into the Rem or show it in a table. In the following example with some properties for Chemical Elements, you can see “On Right” properties for the atomic number and symbol, and “As Bullet” properties for the phase and appearance.
Instances and properties might remind you of Concepts and Descriptors, and indeed they are very closely related. When you define a Property on a tag, you're essentially creating a Descriptor that gets added to each instance of that tag, and the instances thus behave like Concepts. Oftentimes, it will make sense to explicitly mark your instances as Concepts. And when you add rows to a table (see next section), the created rows are actually composed of Concepts and Descriptors under the hood.
Templates
A tag can have one or more templates attached to it. A template is a set of arbitrary Rems that can be added all at once to any Rem with that tag. For instance, if you have a Project tag, you might add a template that creates some headings describing the things you want to take notes on for each project.
One template of each tag can be set to auto-apply. When you add the tag to a Rem, the contents of the auto-apply template (if defined) will be added as children of that Rem automatically, just like properties would be.
To make that more concrete, here’s an example template you might use for each lecture you take notes on:
Here's how it looks when we apply it to a new document:
Tables
RemNote has two kinds of tables, simple tables and advanced tables. Simple tables are primarily a means of changing the layout of some content. Advanced tables, on the other hand, can also collect and display Rems from around your knowledge base.
You can get a lot out of advanced tables without ever thinking about their relationship to tags. But to take full advantage of all the possibilities, it's useful to understand that under the hood, an advanced table draws its data from a tag. Each instance of the tag is a row of the table, and each property of the tag is a column. The first column of the table is called Name and displays the text of the instance's Rem.
When you create a new advanced table and add rows to it, the new rows are turned into Rems which have the tag associated with that table, and are stored inside the table. But instances that are stored outside the table will also appear in the table (so long as they match any filters applied to the table). You can take advantage of this to aggregate Rems from across your knowledge base – for instance, you might want to keep Rems about class assignments in documents about the class they belong to, and then make a table of all your assignments and their properties in one central “dashboard” location.