Software that stores freeform text information commonly uses three ways to structure data:
- Searching with Straight Text Strings
- Categorizing in Hierarchical Trees
- Indexing with User-specified Keywords
In Part 1, we talked about the problems with only using straight text search for locating information.
Categorizing in Trees
Many data and note organizers store information in tree structures. With this scheme, you assign each note or text article to a single category. This structure resembles the Table of Contents for a book.
As the database grows, you assign notes to sub-categories, then sub-sub-categories, and so on. Eventually, these sub-category trees can get very deep. To insert new notes or to locate existing ones, you need to know which category you used for similar information and to navigate the trees to find it.
While this works fine with small amounts of data, it does not scale up well with large numbers of notes. Time spent navigating becomes frustrating.
An additional problem with tree-structured data is that often you cannot easily fit information into a single category. For example, let’s say you store book reviews in one category, travel ideas in another category, and food information in a third category. Then where do you store information about a book on New York restaurants? You might want that information while browsing your book notes, or while planning a trip to New York, or while looking up sources of good Thai food. This note needs to be stored in multiple categories.
When you find that you’ve accidentally categorized similar information into two separate sub-trees, you end up spending more time re-structuring your trees to keep similar information together.
Category trees becomes unwieldy and time-consuming as your database grows.
Indexing with Keywords
Assigning keywords to your data is like creating the Index for a book. You manually select and assign keywords (or key-phrases) to each note or article of information which reflect the core purpose of the note. This way, there is no ambiguity what the note is about.
When you tag separate notes with the same keywords, you automatically associate those notes with each other and can access them together.
You can assign as many keywords as you need to each note so that the note will come up in the results for any appropriate topic.
In the example above of a note about the book on New York restaurants, you could assign it the keywords “book review,” “travel,” and “restaurants.” Depending on how much data you have about travel, you might decide to add more specific keywords such as “New York.” And if you have a lot of food information, you might decide to add more specific food-related keywords such as “Thai food.” If the article also included a Thai recipe, you could add the keyword “recipe” for the next time you want to try cooking Thai.
Spelling or phrasing differences are not an issue, since you use the same set of keywords to index all your notes. Use a keyword “color charts” for all your notes about color charts, colour charts, or even color wheels, and you can access all that information together.
By tagging your notes with keywords, you get instant access to all notes on a selected topic by simply selecting that keyword. This method scales up well with large numbers of notes, with no need to navigate category trees. By combining your keywords in various ways, you can refine your resulting list of notes to meet your needs.
Keywords Work Best for Large Databases
Text-searching and category trees can be handy for small numbers of notes, but for large amounts of data, creating a keyword index is well worth your time. Spending a few extra seconds adding keywords to each new note pays off later in locating your information.