One thing that I’ve found myself wanting in Obsidian is links with a type so you can say how one note is related to another. A common use case is having one or more parent notes for one note. Another example is for language learning: I am learning Danish in Obsidian and I create nodes for new words I learn and then I create typed links for words related to a word, for a “topic” that the words belongs to, for opposite words etc.
There’s a long forum post on the Obsidian forums talking about how typed links might be represented in Obsidian. None of the ideas there have been implemented really - but the approach presented here using Obsidian properties work well.
How to represent typed links in Obsidian
One way to represent a typed link between one Obsidian note and another is to use a property. You can either represent this within your note using the ::
syntax, like so:
parent:: [[Parent Note]]
A nice thing about this syntax is that you can add it anywhere in your note. A downside is that you can’t cleanly embed this syntax within a paragraph of text link you can with normal links. One approach is to place your types links like this after a paragraph like so:
A cat is a type of [[Mammal]] which hunts [[Mice]].
hunts:: [[Mice]]
typeof:: [[Mammal]]
You can also add a property to the frontmatter of your note using the [[
syntax inside a property.
You can have more than one parent or more than one link
I’ve found that having more than parent for a node can be quite useful particularly as nodes become more general. For example, a topic might be relevant for a particular project, documentation and an overarching goal. For other forms of relations, it’s very natural to have multiple links.
With the breadcrumb ::
syntax you can repeat the same “link type” multiple times in your note
parent:: [[Plan for next week]]
More writing...
parent:: [[Evergreen note 1 ]]
If you are using properties you can set the property type to a list and then add multiple links with [[.
Using typed links
But what’s the use of these properties. The first think you can do is click on them with a mouse! You can also add them Obsidian’s graph view using the useful Graph Link Types plugin by Frisch.
I also often create dataview property queries to create Automated Maps of Content as part of my maps of content, with the following query:
```dataview
LIST WHERE contains(parent, [[Current Node]])
```
Here contains work both if a node has a single parent or multiple parents.
You can create a Templater template for this like so:
```dataview
LIST WHERE contains(parent, [[<% tp.file.title %>]])
```
Finishing up
I hope that was useful or interesting. If it was you might like to:
Read my page about how to automated maps of content in Obsidian.
Read my slightly academic review of note taking in Obsidian.
You can also subscribe to this blog where I write about reading and Obsidian, or follow me on X where I write about various thinks - but sometimes Obsidian.