Ideas for representing notes as a chronology

Hello, I’m new to Obsidian and the forum. I have spent a number of years using my own note taking system based on my own methodologies. My notes have notations for links, embedded text, key-value pairs, etc. While the notes themselves are free-form text, the log is highly structured so that it is an unambiguous grammar. I started work on a web page for searching, visualizing and analysis of the notes. When I discovered Obsidian, I realized that it is based on similar design philosophies. One big difference, though, is that all of my text notes are in a single file, and it supports the concept of a log of logs. While that might sound nuts, when you consider that the line limit on vim is a billion lines, I’ll never get there. Things are structured such that I can find anything quickly. My wife is always amazed when she asks me a question and I can get the answer in seconds via regular expression searching of my notes. I’ve been using “hash tags” before the term ever existed, except mine are hierarchical, allowing me to search for specific subcategories with a single regex in vi. External documents (pdf’s, receipts, etc.) are kept in a folder hierarchy that mirrors the tag hierarchy. The links are in the notes. If I need to see a document, I simply copy the link from the note, and paste it onto the end of the “open” command on a Mac, and the document is rendered in the appropriate tool.

So where am I going with all of this? Obsidian looks great, but I’m trying to wrap my head around how I would represent an order of events. Linking is great, and I do a ton of it in many contexts, but humans also experience things as a sequence of events. For example, “I don’t remember when we did X, but it was after event Y.” My daughter has been having some severe skin issues. I’ve taken lots of timestamped notes as things progress. By simply finding all of the entries associated to her, via a hierarchical tag such as:
medical.nancy.dermatology
I can see a chronological list of entries that represents the history and pathology of the problem that I can review with the doctor.

I have considered making each tag in my system to be a separate note in Obsidian, but my system supports the notion of a note having multiple tags, so that doesn’t work. What I am looking for is ideas regarding how I could represent a chronology in Obsidian. Of course I’d like to use the other linking capabilities of Obsidian, but sometimes I really need to see a set of notes as a chronology. I’m also thinking that each of my notes needs to be put into Obsidian as a separate note, with the timestamp as the title / file name. That would be an easy way to get the data into Obsidian, and I can do that by writing a simple script to separate the notes and write out the individual files. But once in Obsidian, I don’t know how I find notes as a chronology if necessary. Suggestions are welcome, and thank you.

2 Likes

Why wouldn’t this work? It’s a common thing to do. Such notes are usually called MOCs, also known as Maps of Content.


Anyways, to answer your main question: I’m not sure exactly what you are looking for, but let’s say you wanted to see everything regarding one particular subject as a chronology.

You could make each part of this its own separate note, and then have one “main note”. This main note could have each note linked or embedded, in chronological order.

For example, the main note file could look like:

Notes about the subject in chronological order.md

![[Note 1]]
![[Note 2]]

With Note 1 being:

Note 1.md

Some info about the subject

And Note 2 being:

Note 2.md

Some more stuff about the subject

Edit: I wrote some more ideas for a chronology below, after timestamped titles were mentioned.

1 Like

Torch, thanks for the quick reply. I see what you mean by a MOC (I had seen the term mentioned but being a VERY new user, wasn’t sure what it meant). What you are suggesting makes sense. I also discovered that the search capability returns the matching notes alphabetical by title. If all notes use a timestamp such as YYYYMMDDhhmm for the title (or at least a prefix), then the search is returning results chronologically. Both methods have advantages and disadvantages.

Relying on search of timestamped titles

Advantages: Any search returns results chronologically, which I think is handy; Don’t have to maintain a MOC.
Disadvantages: A search that returns a lot of notes could be unwieldy; all notes must have a timestamped title.

Using a MOC

Advantages: No unwieldy search result to scroll through; titles don’t have to have a timestamp prefix.
Disadvantages: Each new note requires editing the MOC.

Tough choice. Thanks for the suggestion, and if you think I’m misunderstanding something, feel free to let me know.

1 Like

Search in Obsidian’s Search pane is full-text. That means it searches not just the file’s name but the file content as well.

So for example, you could search for the timestamp (which would be written in the file name), and a tag/MOC (which would be written in the file’s content).

That way, you don’t have to worry about remembering to edit the MOC with every new note, or seeing irrelevant notes when you search for your timestamp.


Here’s another way. This uses Linked Mentions, instead of Search.

You could link to an MOC in the files about a subject, and have a timestamped title for those notes.

Then, if you want to view the notes linked to an MOC in chronological order: open up Linked Mentions on the MOC file. The Linked Mentions pane lists linked files in an alphabetical order. For a proper timestamp, that would be chronological.

This method is probably easier than typing in a search term.

1 Like

Thanks for the tips. I watched a ~1-hr. Youtube video last night on levels of MOCs and things are starting to get clearer.

I also grapple with this issue - my notes are mostly event based, tracking news events that can develop over a few days, weeks, or longer.

Rather than editing and reediting a single encyclopedic entry, I prefer to create an initial MOC note (e.g. “COVID19”) and then sub-notes with a timestamp and short description (“2020-12-02 COVID19 vaccines report 95% effectiveness”) with more detail and source links in the note body. Occasionally I’ll take a recent group of these micro notes and write a longer summary with some analysis (e.g. monthly or quarterly).

That new note can also link to the MOC, which makes it show up in the MOC’s list of back links. For especially important notes, or occasional summary notes on a topic, I can add them manually into the MOC, or copy and paste search results for any note that contains a link to the MOC back into the MOC (and prune that as needed).

4 Likes

@icebear, thanks for sharing your method. This is very helpful. I have two use cases where a chronology is important.

The first use case is a timeline to track something like an event, progression of a child’s illness, etc. Your method works well.

The second case has to do with a tool I’ve used for over a decade called OmniOutliner. As the name implies, it’s an outliner, and has a lot of additional features. I have a top-level entry for every personal task / project / event. Each of these entries has their own log, so each task / project / event has it’s own chronology, as well as other subsections for to-do’s and things like that. I can certainly see how I could use MOCs to represent this hierarchy, and even have a separate folder in the vault for each task / project / event. Or specify the hierarchy on the tag, such as

  • #NewCar-Log
  • #NewCar-Tasks

although I see this use of tags to be sustainable only if these task / project / event notes are their own vault, lest I run into name collisions when I want to re-use a name. Right now I’m not sure of the pitfalls of one method over another.

OmniOutliner has some other valuable features that work with the chronology and I’m not sure how I could implement them in Obsidian.

The first is numerical or time roll-ups. Sometimes I like to keep track of time on a project; for example, so I don’t spend too much time on a hobby. In OmniOutliner I could define a numerical or time field, and those values roll up the hierarchy. So for example, if I have three log entries for the photography topic, 1-hour each, at the top of the log it reports three hours. and those three hours roll up to the top of the activity. I could certainly specify this as a key, but I’ll have to work up an external way to count those values.

The second feature I use heavily, and I’m really hoping I can do this in Obsidian somehow, is a weekly or biweekly review. Since all the entries are time-stamped in OmniOutliner, I can use a filter rule such as “show me all the entries for the past week” and I will get a custom view of the hierarchy with only those entries. Each entry connects up through the hierarchy to the top, so I can see the context of each entry as a complete hierarchy, and I can review my activity for that selected period of time. I’m hoping I can do something similar in Obsidian, to be able to see all the entries for a period of time for personal review. I suppose I could have a “top-level” MOC that links to all entries and thus provides a master chronology, but it seems like the bookkeeping would be heavy. Any ideas here would be appreciated. Thanks again.

Edit: I should make it clear what I mean by the bookkeeping being heavy. If I have a “top-level” MOC linking to all entries across all tasks / events / projects so that I have a master chronology for which I can walk backwards, this means I’m updating at least two MOCs to make an entry: This master chronology MOC, and a MOC for the task / event / project. Maybe this isn’t as much overhead work as I think it is. Am I approaching this incorrectly?

1 Like

This is why I prefer to link the MOC(s) in the actual notes, rather than commit to updating every MOC itself. Only one file to edit - the note I’m working on. When I open the MOC I look at backlinks, instead of a list of links.

One other thing I’m experimenting with is including date links like [[2020-12-03]]. This means I can go to a daily note and see in its backlinks any notes either composed on that day or referring to an event that occurred on that date (I haven’t yet settled on a convention).

2 Likes

This is why I prefer to link the MOC(s) in the actual notes, rather than commit to updating every MOC itself. Only one file to edit - the note I’m working on. When I open the MOC I look at backlinks, instead of a list of links.

This is an interesting idea. Of course the backlink list could be very long, and not being fully conversant yet in the GUI, I’m not sure how that affects usability. On the surface it seems like it would work fine. Off the top of my head, the only possible problem I can see is if you want to answer the question, “Which notes are associated with this MOC,” The answer is in the backlink list, not in a note. Having a list in a note is handy if you decide you want to do something with the list outside of Obsidian. By having the links in the MOC, gathering the notes external to Obsidian is easy; it’s the list of links in the MOC note. I don’t know how easy it would be to get that same list out of the backlinks list in the GUI. One could search for the actual link definition, and the search list would be that same list of notes, but it seems to be the same problem, just in a different GUI list.

One other thing I’m experimenting with is including date links like [[2020-12-03]]. This means I can go to a daily note and see in its backlinks any notes either composed on that day or referring to an event that occurred on that date (I haven’t yet settled on a convention).

This is yet another interesting idea. I was thinking that if I always want to have the option to see any set of my notes as a chronology, I would have to format the note title as:

YYYYMMDDhhmm.Title

so that searches would always return notes in chronological order. (Although right now I don’t know if there’s a way to get Obsidian to insert the timestamp in the title.) I really need the timestamp down to the minute if I want to absolutely guarantee that notes are in chronological order. Sometimes I’ll have some important phone calls throughout the day, and their order represents a chronology of back-and-forth communication.

With my thus-far limited knowledge of Obsidian, I’m not sure if reversing the link direction saves anything. You either define a link to the note in the MOC, or a link to the MOC in the note. The one situation where there is a savings is if your note structure requires that some notes are in more than one MOC. Then there’s a savings because you can just define the multiple links-to-MOCs in the note quickly, versus having to visit each MOC separately and enter the link for the note. The efficacy of this method will come down to how easy it is to work with the association as presented in the backlinks list.

But if you’re only associating a note to a single MOC, I don’t see a savings: you define the new note link in the MOC, get out of edit mode, then click the link to create the note.

This is a helpful conversation and you’ve given me some things to think about, so thanks for that!

If order of creation corresponds to intended chronological order then both search results and backlinks can be ordered chronologically by “↑↓” icon.
image

Timestamp can be conveniently inserted by AutoHotkey(for Windows) or Keyboard Maestro.
related:

  • Obsidian-only functionality: Obsidian→Settings→"Core plugins"→"Zettelkasten prefixer".
  • AutoHotkey code:
:?*:\time:: 
  SendInput, %A_YYYY%%A_MM%%A_DD%%A_Hour%%A_Min%%A_Sec%
return
; semicolon initiates comment
; "?" = triggers anywhere 
; "*" = triggers immediately 
; "\time" = input string
; output is in format "YYYYMMDDhhmmss
; "%A_YYYY%" = YYYY
; ...
; "%A_Sec%" = ss

@icebear, I’ve done some investigating since we had this dialogue. This method you suggested does have merit, but there’s a limit in Obsidian that prevents me from wanting to use this method for chronology: the Backlinks list doesn’t have a copy function like the search list. Being able to copy out the notes is important.

If I ever want to work with a set of notes outside of obsidian, it’s generally easy to do: structure a search to find the set of notes I want, then copy the results. Now I have a list of the file names for those notes. Unfortunately Backlinks doesn’t have a copy function. If I were using your notation ([[2020-12-03]]), then in order to see a list of notes taken on that day, I would select this dated note and the list is in the Backlinks. If I wanted to do a “rollup” (collect notes taken for the week or month and put them in as links on a weekly or monthly MOC) I don’t have an easy way of getting that list out of the Backlinks list. I’m hopeful that the copy function will be added to the Backlinks list, because I think this method is ideal, if I could just perform these rollups to consolidate notes, by copying the notes out of the Backlinks list.

@malecjan, thanks for the advice. I did find the Zettelkasten timestamp since I wrote that. Also, thanks for the info on the sort order; I didn’t think to look there. However, that would rely on filesystem metadata (file creation / modification dates), and I don’t like relying on file metadata because I consider it brittle.

I add time indicators in multiple ways.
Timestamps in titles (but always as postfix not as prefix e.g. “My great concept 20201220091453”), this mostly to ensure uniqueness.
By linking to day log pages (“Daylog 20-12-2020”)
and thirdly by adding year, month and date as #tags in the shape of #2020- #2020-12 #2020-1220

This last variety I use to get some of the chronology you ask about. It allows me to see which notes were created the same day or month, and whether an idea I wrote about was from a few years back, or is more recent etc. I’ve started doing with the idea that it would allow me to also visualise notes chronologically. I’ve done this since I started using Obsidian last July, but haven’t yet used those day tags for visualisation yet. I have used it to find notes that are “near in time” to the one I’m contemplating/reading.

Thanks for that input @ton. I’m not sure if you have the timestamp on all note names or only some selectively. If it’s on all notes, I don’t think you’ll need the date tags because the timestamp is already in the note name and can be found via search plugin:

All notes same day:
file:20201220

If it’s possible you could have other dates in the title causing false-matches, we could be more concise:

file:/20201220.{9}$/

which forces the date to be in the right place. The “.{9}” indicates there are 9 other characters to the end of the file name (which includes the hidden file name extension). All notes on the same month is similar:

file:/202012.{11}$/

And of course the entire year:

file:/2020.{13}$/

If this is something you use heavily, then you could star the search for easy retrieval as a template. Another ease-of-use method I’ve employed as the number of important complex searches has grown is to have a Search note which is a dictionary of searches and their meaning so I can easily cut&paste complex searches. This ensures consistent search results with no typo causing a bad match, possibly without realizing it.

1 Like

I have timestamps mostly on my conceptual notes, mostly not on factoid notes or resources. I have the time tags in most conceptual and factoid notes. It depends how I think time w.r.t. a note might be relevant for future-me during search. Using those terms better in search is something I still need to ensure becomes a stronger habit, so thanks for the examples.

@ton Simplification for redundant tags ‟in the shape of #2020- #2020-12 #2020-1220” → #2020/12/20:

Nested Tags: you can now nest tags with unlimited hierarchies using the syntax #parent/child/subchild.

  • Searching for tag:#parent will now match #parent/child.
  • Tag pane now has an option to display nested tags in hierarchy or flat mode.

source: Obsidian Release v0.10.3

3 Likes

Nice, you’re making a pretty strong case for OmniOutliner here :sweat_smile:

Thank you for that @malecjan . Since I read your comment I’ve adapted all my date related tags to nested tags #yyyy/mm/dd . That cleans up the list of tags nicely!

The initial post of this thread hits home. I am a fan of time-based systems. Time is one context that is poorly served across applications. Command-line or scripted tools can be written to portray a chronological view of work/changes made but something like this should be basic functionality.

Perhaps I missed something in this thread but all file systems facilitate creation date and modification date. I understand that a file may be modified substantially or superficially. A timestamp in the file is an intentional action which is meaningful from the perspective of the author.

But I, for one, would also love to see an Obsidian feature or plugin that displays a chronological view of all notes, with the ability to toggle between creation and modification date and to look across the vault or a portion of the vault. There are times when I’m talking to someone and I’m recalling something vaguely but I know the time frame when I wrote it. Lest you suggest “Get better at tagging”: You can’t predict all the possible ways something might be useful; one tags based one one’s needs, context, and familiarity.

I am reminded of David Gelertner’s Mirror Worlds. I keep thinking about this concept every once in a while and wish someone would build this at the level of the OS but I’d be happy to have at the level of Obsidian, for now. Here’s a page that displays a visualization of what it might look like: Mirror Worlds :: Network-1 Technologies, Inc. (NTIP)

Note the ability to pull a file out of the stack with the possibility of putting it back into the stack and continuing to browse.

@miguelmarcos Using file creation date would not be reliable. When you move files from one computer to another the creation date is typically reset to the date the file was created on the new computer. (there are some ways to preserve this but not using the methods most people use)

And that’s not all. Just look at this StackOverflow answer on all the different ways creation date can be reset when copying within the same computer. (on Windows)

You can encode the date as a prefix to the file name e.g. YYMMDD Note name here but that brings its own issues. It’s still probably the best way to go for chronological ordering of notes.

I use this approach for my meeting notes for exactly the reason you describe.