Creating a knowledge tree structure in the contents window


Introducing the knowledge tree

The knowledge tree is the hierarchical structure of elements displayed in the contents window (as in the picture below). Before you get lost in details of the knowledge tree, remember that: knowledge tree is NOT essential for your success in learning!

The structure of the tree does not affect the learning process! Many beginners believe that a good structure of the tree will help them prioritize their learning; however, you should NOT begin your adventure with SuperMemo from studying the tree, unless you have mastered the ABC!

SuperMemo: The contents window displaying the knowledge tree (i.e. the hierarchical structure of elements) of a collection

Being exposed to a mixture of material belonging to different subjects will only make learning more fun (variety is the spice of life). Despite a widespread myth, mixed up learning can improve your retention (exceptions are discussed elsewhere at SuperMemo Website). Mixed up review of different subjects is the norm, not an exception in SuperMemo!

However, once you master the basics of SuperMemo, you can occasionally benefit from the knowledge tree by keeping various learning subjects separate. At times, it may help you handle a single subject as a whole (e.g. review a single subject before an exam, postpone a subject of lower priority, etc.).

Why isn't knowledge tree a priority?

Knowledge tree helps you keep order in your collection and process portions of material relating to different subjects. However, it does not reflect the structure of knowledge that you keep in your mind. The structure of knowledge that you remember is built gradually via semantic links between elements. You do not have to build those links in SuperMemo in any other way than by composing new items and topics and understanding the meaning of inter-related concepts that you learn. In simple terms, you build the map of knowledge in your mind, not in SuperMemo! SuperMemo carries only tiny granules of knowledge and connections between pieces of knowledge. Those granules and connections help you effectively refresh the structure of knowledge that you want to store in your mind.

Building the tree

Important! To understand this text you need to understand the tree terminology. It is quite intuitive as it refers to roots, branches and leaves. However, if you have any problems, see: Tree Glossary.

There are two basic methods of building the knowledge tree:

  1. Using the contents window. You can use operations such as Add, Insert or Delete to build the tree directly in the contents window
  2. Using categories. If you want to add a large number of similarly looking items to a single branch, you will rather want to use categories. Categories automatically use templates to make sure that your elements are filled out with components of a desired look, number, size, etc.

When you choose Add new, new items are added to a single location determined by the current category (i.e. not by the current selection in the contents window). Advanced users will always prefer using categories to save learning time. Usually you add all your material to a To Do branch. Then you move only the most important portions of knowledge to separate categories.

Once you create a tree, you can always modify it using drag&drop operations.

Building the tree in the contents window

In the element window, if you see an element whose location in the knowledge tree is not satisfactory, you can quickly move it to a new location with Edit : Move on the element menu (Shift+Ctrl+V). Simply find the desired location in the knowledge tree and click Accept in the contents window (or press Enter).

If you build a small collection with a complex tree structure, you may prefer to use the contents window operations to build the tree:

  1. If you choose Add, a new child will be added to the currently selected element (click Add several times to see how this option works)
  2. If you choose Insert, you will add a new sibling. The new sibling will be inserted in the place of the currently selected element. The selected element will move one position down (press Ins a few times to see how this option works). You cannot insert a new element in the place of the tree root
  3. If you choose Delete, you will delete the currently selected branch (i.e. the selected element and all its descendants). You cannot delete the tree root

Once you add an element or a few elements, you can modify their titles. To do so, select the element by clicking and click it gently again. You can also press Alt+T to conveniently edit the title in the element window. If you fill out elements with texts (e.g. by typing questions and answers), SuperMemo will automatically generate titles for you.

When building the tree with Add and Insert, the type of elements added is determined by Topics/Items setting on the toolbar (top of the contents window). If you select Items, you will add simple question-and-answer items. If you chose Topics, you will add article-type elements that can be filled with text.

The contents menu includes more operations for modifying the tree (e.g. New : Folder, New : Item, etc.).

Once you create a tree, you can always modify it using drag&drop operations.

Building the tree using categories

Categories are portions of the knowledge tree that use the same look of elements. These elements usually belong to a single subject. For example, you can define a category called Biology and keep there all items related to biology.
If you select a given category on the Tools toolbar, each time you click Add new (or press Alt+A), you will add a new item to that category. For more details see: Using categories.

Modifying the tree using drag&drop operations

If you would like to modify the structure of the tree, you can do it easily with drag&drop operations in the contents window.

Modifying a tree is as simple as dragging a branch from one location to another (in the contents window or between two contents windows). To drag a branch, click it with the mouse, hold down the left mouse button, move the mouse to another branch (still holding the mouse button) and release the left button once you are over the target branch. The dragged branch will be moved to the target branch. During drag&drop operations, SuperMemo will highlight the drop point (i.e. the place in the tree where the dragged branch will be inserted). If you would like a given element to be a child of another element in the knowledge tree, left-click it and without releasing the mouse button drag it onto the target element. Once the target element gets highlighted (as if selected), release the left button so that the dragged element becomes the last child of the target element. If, on another occasion, you want to move another element ahead of the element in the tree, left-click it again and without releasing the mouse drag the element to the level of the target element (i.e. the element you want the dragged element to be moved ahead of). Note that you need to point your mouse slightly to the left or right of the target element so that it does not get selected but a navy horizontal line showing you where the dragged element will be moved to is displayed. Once the navy horizontal line shows on top of the target element, release the mouse button to move the dragged element to a desired location. You can also select more than one branch for dragging to a new location.

Important tips

  1. If you drag between remote branches, you can open a second contents window and drag between the two windows. It is easier to open the source branch in one window, and then open the target branch in the other. To open a second contents window, click the blue Contents alignment icon on the contents window's Edit toolbar
  2. You can select many branches for dragging by holding the Ctrl key down while clicking the branches that are to be moved
  3. You can always move a single element currently displayed in the element window with Shift+Ctrl+V (press Enter after selecting the new location in the knowledge tree)

Status icons: pending, memorized and dismissed

All branches in the tree are marked with small icons that indicate the status and type of a given element in the learning process:

Note that:

The plus sign to the left of the element indicates that the element has children. You can see the children when you click the plus sign. The minus sign to the left of the element indicates that the element with children can be collapsed. When you click the minus sign, all children will disappear from view and the minus sign will be replaced with a plus sign

Keyboard shortcuts









Tree Glossary: what are roots, branches, children, and siblings

The tree presented in the picture begins with the root named All my knowledge at the top.

SuperMemo: The contents window displaying the knowledge tree (i.e. the hierarchical structure of elements) of a collection

There are seven visible branches growing from the root: Sciences, English, Private, New Imports, Tasklists, and TO DO. There are more branches under TO DO that are not visible in the picture. All branches growing from a given branch are called children. The branch Sciences has five children displayed in the picture:

  1. Business, Law and Economics
  2. Political and Social Sciences
  3. Science and Technology
  4. Medical Sciences
  5. Computer Science

All the branches listed above are their own siblings. For example, Medical Sciences is a sibling of Computer Science. On the other hand, Sciences is the parent of all its children (e.g. Business, Law and Economics).

At the very bottom of the structure there are leaves, i.e. children that do not have further children.

Please note that the root, branches, children, leaves, etc. are all elements in SuperMemo. This means that you can view them in the element window and fill them out with components (such as texts, pictures, sounds, etc.). To view a given element in the element window, select it and choose View at the bottom of the contents window (or press Shift+Enter)


Being able to quickly differentiate between memorized topics and items is valuable

From: Miko
Country: Poland
Sent: Sun, Apr 10, 2011 at 10:54 AM
Subject: Colors for dismissed, memorized, pending


Pending elements (both topics (SuperMemo: A topic awaiting memorization in the pending queue) and items (SuperMemo: An item awaiting memorization in the pending queue)) have the aqua blue color.

Dismissed elements (SuperMemo: A topic which is ignored in the learning process and which is not kept in the pending queue and SuperMemo: An item which is ignored in the learning process and which is not kept in the pending queue) share the yellow color.

The only exception are memorized elements, where:

What is the rationale behind different colors for memorized topics and items?


This is because memorized elements are most important in the collection, and being able to quickly differentiate between memorized topics and memorized items by means of contrasting visual cues saves the student's time.

Pending elements lost on their importance with the arrival of SuperMemo 2000. Featuring improved handling of material overflow (e.g. Postpone), it also minimized the use of pending queue which was previously used as a means against repetition overload.

Finally, dismissed elements do not take part in the learning process at all. As such, their use is rather limited (they may hold outdated knowledge which you decided to keep in your collection for archival purposes, they may serve as parent nodes for other elements, etc.)

Further reading

FAQ: Knowledge tree